MySQL es una de las bases de datos relacionales más populares. Le permite almacenar datos en tablas y crear relaciones entre esas tablas. Para usar MySQL, que se ejecuta como un servidor de base de datos, deberá escribir un código para conectarse a él.

La mayoría de los lenguajes de programación como Python brindan soporte para esto. De hecho, en Python, hay varios enfoques que puede tomar, cada uno con sus propias ventajas.

Prepare su configuración de MySQL

Para conectarse a la base de datos, necesita los siguientes valores:

  • Host: la ubicación del servidor MySQL, localhost si lo está ejecutando en la misma computadora.
  • Usuario: el nombre de usuario de MySQL.
  • Contraseña: la contraseña de MySQL.
  • Nombre de la base de datos: el nombre de la base de datos a la que desea conectarse.

Antes de conectarse a la base de datos MySQL, cree un nuevo directorio:

mkdir python-mysql

Configurar un entorno virtual de Python

Un entorno virtual de Python le permite instalar paquetes y ejecutar scripts en un entorno aislado. Cuando usted

instagram viewer
crear un entorno virtual, luego puede instalar versiones de Python y dependencias de Python dentro de él. De esta forma, aíslas diferentes versiones y evitas problemas de compatibilidad.

Conéctese a MySQL usando mysqlclient

los cliente mysql El controlador es una interfaz para el servidor de base de datos MySQL que proporciona la API del servidor de base de datos de Python. Está escrito en C.

Ejecute el siguiente comando en el entorno virtual para instalar mysqlclient:

pepita Instalar en pc cliente mysql

Si está en una máquina Linux, primero instale los encabezados y bibliotecas de desarrollo de Python 3 y MySQL.

#Debian/Ubuntu
sudo apt-get Instalar en pc python3-dev defecto-libmysqlclient-dev construir-básico

#RedHat/CentOS
sudo mmm Instalar en pc python3-devel mysql-devel

En Windows, puede instalar mysqlclient usando un archivo de rueda binaria. Descargue el archivo mysqlclient que sea compatible con su plataforma desde La colección no oficial de Christoph Gohlke. Luego puede usar el archivo de rueda descargado con pip para instalar mysqlclient de esta manera:

pepitaInstalar en pcC:\\cliente mysql‑1.3.13cp36cp36mganar_amd64.whl

Use el siguiente código de conexión para conectarse a la base de datos MySQL una vez que se complete la instalación:

importar MySQLdb

conexión = MySQLdb.connect(
host="servidor local",
usuario="<usuario_mysql>",
contraseña="<mysql_contraseña>",
db="<nombre de la base de datos>"
)

cursor = conexión.cursor()
cursor.ejecutar("Seleccionebase de datos();")
db = cursor.buscar()

si db:
impresión("'reconectado a la base de datos: ", base de datos)
más:
impresión('No conectado.')

En este programa tienes:

  • Cliente mysql importado.
  • Creó un objeto de conexión usando MySQLdb.connect().
  • Pasó los detalles de configuración de la base de datos a MySQLdb.connect().
  • Creó un objeto de cursor para interactuar con MySQL.
  • Usó el objeto de cursor para obtener la versión de la base de datos MySQL conectada.

Recuerde cambiar los detalles de la base de datos con los suyos propios.

Conéctese a MySQL usando mysql-connector-python

mysql-conector-python es el controlador de conexión oficial compatible con Oracle. También está escrito en Python puro.

Instálelo a través de pip para comenzar a usarlo.

pepita Instalar en pc mysql-conector-python

Conéctese a MySQL usando el siguiente código de conexión.

importar mysql.conector
de mysql.conector importarError

conexión = mysql.conector.conectar (host="servidor local",
usuario="<usuario_mysql>",
contraseña="<mysql_contraseña>",
db="<nombre de la base de datos>")

probar:
siconexión.está conectado():
cursor = conexión.cursor()
cursor.ejecutar("Seleccionebase de datos();")
db = cursor.buscar()
impresión("'reconectado a la base de datos: ", base de datos)
excepto Errorcomo mi:
impresión("Errortiempo conectarse a MySQL", e)
finalmente:
siconexión.está conectado():
cursor.cerca()
conexión.cerca()
imprimir("Conexion mysql es cerrado")

El código de conexión anterior hace lo mismo que el código de conexión de mysqclient.

Una vez que crea el objeto de conexión, puede crear un cursor, que luego puede usar para ejecutar consultas en la base de datos.

Este programa de conexión también utiliza el trata de atraparlo bloquear. La clase Error, de mysql.conector, le permite detectar las excepciones generadas al conectarse a la base de datos. Esto debería simplificar la depuración y la resolución de problemas.

Conectarse a MySQL usando PyMySQL

los PyMySQL El controlador de conexión es un reemplazo para MySQLdb. Para usarlo, debe ejecutar Python 3.7 o posterior y su servidor MySQL debe ser la versión 5. 7, o más reciente. Si usa MariaDB, debe ser la versión 10.2 o superior. Puede encontrar estos requisitos en el Página PyMySQL Github.

Para instalar PyMySQL, ejecute el siguiente comando.

pepita Instalar en pc PyMySQL

Conéctese a MySQL usando PyMySQL usando este código.

importar pymysql

conexión = pymysql.connect (host="servidor local",
usuario="<usuario_mysql>",
contraseña="<mysql_contraseña>",
base de datos="<nombre de la base de datos>")

probar:
cursor = conexión.cursor()
cursor.ejecutar("Seleccionebase de datos();")
db = cursor.buscar()
impresión("'reconectado a la base de datos: ", base de datos)
excepto pymysql. Error como mi:
impresión("Errortiempo conectarse a MySQL", e)
finalmente:
cursor.cerca()
conexión.cerca()
imprimir("Conexion mysql es cerrado")

Una vez que haya realizado la conexión y creado el objeto de cursor, puede comenzar a hacer Consultas SQL.

Conectarse a MySQL usando aiomysql

los aiomysql El controlador de conexión es como la versión asíncrona de PyMySQL. Proporciona acceso a una base de datos MySQL desde el marco asyncio.

Para usar aiomysql, necesita Python 3.7+ y PyMySQL instalados en su entorno de desarrollo.

Ejecute el siguiente comando para instalar asyncio y aiomysql.

pepita Instalar en pc asíncio
pepita Instalar en pc aiomysql

Con aiomysql, puede conectar Python a MySQL usando un objeto de conexión básico y usando un grupo de conexiones.

Aquí hay un ejemplo que muestra cómo conectarse a la base de datos MySQL usando un objeto de conexión.

importar asíncio
importar aiomysql
bucle = asincio.get_event_loop()

asíncronodefinitivamentepython_mysql():
conexión = esperar aiomysql.connect (host="servidor local",
usuario="<usuario_mysql>",
contraseña="<mysql_contraseña>",
base de datos="<nombre de la base de datos>")

cur = esperar conexión.cursor()
esperar cur.ejecutar("Seleccionebase de datos();")
db = esperar cur.buscar()
impresión("'reconectado a la base de datos: ", base de datos)
esperar cur.cerrar()
conexión.cerca()

círculo.ejecutar_hasta_completar(python_mysql())

A diferencia de un objeto de conexión de base de datos, un grupo de conexiones le permite reutilizar las conexiones de base de datos. Lo hace manteniendo un grupo de conexiones abiertas y asignándolas a pedido. Cuando un cliente solicita una conexión, se le asigna una del grupo. Una vez que el cliente cierra la conexión, la conexión vuelve al grupo.

El código básico para conectarse a través de un grupo es el siguiente:

importar asíncio
importar aiomysql
bucle = asincio.get_event_loop()
asíncronodefinitivamentepython_mysql():
pool = esperar aiomysql.create_pool (host="servidor local",
usuario="<usuario_mysql>",
contraseña="<mysql_contraseña>",
base de datos="<nombre de la base de datos>", bucle=bucle, confirmación automática=Falso)

asíncronocon grupo.adquirir() como conexión:
cursor = esperar conexión.cursor()
esperar cur.ejecutar("Seleccionebase de datos();")
db = esperar cur.buscar()
impresión("'reconectado a la base de datos: ", base de datos)

piscina.cerca()
esperar pool.wait_closed()

círculo.ejecutar_hasta_completar(python_mysql())

Este programa debe imprimir la versión de MySQL a la que te has conectado cuando lo ejecutas.

Administrar su base de datos PostgreSQL

Este artículo le mostró varias formas de conectar una aplicación de Python a MySQL. Cada uno de estos métodos le permite interactuar y ejecutar consultas en la base de datos.

Una vez conectado a una base de datos MySQL, puede ejecutar consultas de datos y realizar transacciones de base de datos. Puede crear una aplicación de Python, conectarla a MySQL y comenzar a almacenar datos.