Connect using Python for Public Cloud Databases for MySQL
Objective
Public Cloud Databases allow you to focus on building and deploying cloud applications while OVHcloud takes care of the database infrastructure and maintenance in operational conditions.
This guide explains how to connect to a MySQL database instance with one of the world's most famous programming language: Python.
You can find an example on the Github examples repository.
Requirements
- Access to the OVHcloud Control Panel
- A Public Cloud project in your OVHcloud account
- A MySQL database running on your OVHcloud Public Cloud Databases (this guide can help you to meet this requirement)
- Configure your MySQL instance to accept incoming connections
- A Python environment with a stable version and public network connectivity (Internet). This guide was made using Python 3.9.7.
Concept
A MySQL instance can be managed through multiple ways. One of the easiest, yet powerful, is to use a Command Line Interface (CLI), as shown in our guide : Connect to MySQL with CLI.
Another way is to interact directly using a programming language, such as Python. Python is one of the major programming languages in the world, especially in the Data ecosystem.
In order to do so, we will need to set up our Python environment with MySQL drivers and finally code in Python to perform a few example actions.
Instructions
Set up your Python environment
To interact with your MySQL instance using Python, your development environment needs to be configured with:
- A compatible version of Python
- Mysql connector
Please follow the official MySQL Connector/Python. to get the latest information.
Once your Python environment is set up and you begin executing a python --version in your command line interface (CLI), you should see information about the version as shown below :
In the same console, by typing a pip list, check if mysql-connector-python is correctly installed :
We are now ready to learn how to connect to our MySQL instance !
Connect with Python
Using MySQL Connector
MySQL Connector/Python enables Python programs to access MySQL databases, using an API that is compliant with the Python Database API Specification v2.0 (PEP 249).
In your Python environment, let's try a connection.
After executing your Python code, result shown in the CLI should be like this :
If not, your CLI should give you more details about the issue, for example :
- Authentication failed : could be an error with your user login or password;
- nodename nor servname provided, or not known : could be a wrongly typed hostname;
- Connection reset by peer : usually due to connection without secure TLS mode. Use tls=true parameter.
Go further
Visit our dedicated Discord channel: https://discord.gg/ovhcloud. Ask questions, provide feedback and interact directly with the team that builds our databases services.
If you need training or technical assistance to implement our solutions, contact your sales representative or click on this link to get a quote and ask our Professional Services experts for a custom analysis of your project.
Join our community of users on https://community.ovh.com/en/.