MySQL - Connect with Python
Connect to your Public Cloud Databases for MySQL using the Python programming language
Connect to your Public Cloud Databases for MySQL using the Python programming language
Last updated 8th March 2022
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.
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.
To interact with your MySQL instance using Python, your development environment needs to be configured with:
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 :
laptop$ python3 --version
Python 3.9.7
In the same console, by typing a pip list, check if mysql-connector-python is correctly installed :
laptop$ pip list
Package Version
---------------------- -------
mysql-connector-python 8.0.27
pip 20.3.4
protobuf 3.19.3
setuptools 52.0.0
wheel 0.34.2
(...)
We are now ready to learn how to connect to our MySQL instance !
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.
# Note this example is valid for Python v2 and v3
from __future__ import print_function
import sys
import mysql.connector
from mysql.connector.constants import ClientFlag
config = {
'user':'avnadmin',
'password':'K93xxxxxxxxxxaBp',
'host':'mysql-11xxxx20-o2xxxxb53.database.cloud.ovh.net',
'port':'20184'
}
cnx = mysql.connector.connect(**config)
cur = cnx.cursor(buffered=False)
cur.execute("SHOW GLOBAL STATUS LIKE 'Ssl_cipher'")
print(cur.fetchone())
cur.close()
cnx.close()
After executing your Python code, result shown in the CLI should be like this :
('Ssl_cipher', 'TLS_AES_256_GCM_SHA384')
If not, your CLI should give you more details about the issue, for example :
Visit our dedicated Discord channel: https://discord.gg/ovhcloud. Ask questions, provide feedback and interact directly with the team that builds our databases services.
Join our community of users on https://community.ovh.com/en/.
Si lo desea, también puede enviarnos sus sugerencias para ayudarnos a mejorar nuestra documentación.
Imágenes, contenido, estructura...: ayúdenos a mejorar nuestra documentación con sus sugerencias.
No podemos tratar sus solicitudes de asistencia a través de este formulario. Para ello, haga clic en "Crear un tíquet" .
¡Gracias! Tendremos en cuenta su opinión.
¡Acceda al espacio de la OVHcloud Community! Resuelva sus dudas, busque información, publique contenido e interactúe con otros miembros de la comunidad.
Discuss with the OVHcloud community