Bibliotecas de Azure MySQL/PostgreSQL para PythonAzure MySQL/PostgreSQL libraries for Python

MySQLMySQL

Trabaje con los recursos y datos almacenados en Azure Database for MySQL desde Python con el administrador de MySQL y pyodbc.Work with resources and data stored in Azure MySQL Database from python with the MySQL manager and pyodbc.

Controlador ODBC de cliente y pyodbcClient ODBC driver and pyodbc

La biblioteca de cliente recomendada para acceder a Azure Database for MySQL es el controlador ODBC.The recommended client library for accessing Azure Database for MySQL is the Microsoft ODBC driver. Use el controlador ODBC para conectarse a la base de datos y ejecutar instrucciones SQL directamente.Use the ODBC driver to connect to the database and execute SQL statements directly.

EjemploExample

Conecte con Azure Database for MySQL y seleccione todos los registros de la tabla de ventas.Connect to a Azure Database for MySQL and select all records in the sales table. Puede obtener la cadena de conexión ODBC para la base de datos en Azure Portal.You can get the ODBC connection string for the database from the Azure Portal.

SERVER = 'YOUR_SEVER_NAME' + '.mysql.database.azure.com'
DATABASE = 'YOUR_DATABASE_NAME'
USERNAME = 'YOUR_MYSQL_USERNAME'
PASSWORD = 'YOUR_MYSQL_PASSWORD'

DRIVER = '{MySQL ODBC 5.3 UNICODE Driver}'
cnxn = pyodbc.connect(
    'DRIVER=' + DRIVER + ';PORT=3306;SERVER=' + SERVER + ';PORT=3306;DATABASE=' + DATABASE + ';UID=' + USERNAME + ';PWD=' + PASSWORD)
cursor = cnxn.cursor()
selectsql = "SELECT * FROM SALES"  # SALES is an example table name
cursor.execute(selectsql)

API de administraciónManagement API

Cree y administre los recursos de MySQL de la suscripción con la API de administración.Create and manage MySQL resources in your subscription with the management API.

RequisitosRequirements

Debe instalar las bibliotecas de administración de MySQL para Python.You must install the MySQL management libraries for Python.

pip install azure-mgmt-rdbms

Para más información acerca de cómo obtener credenciales para autenticarse con el cliente de administración, consulte la página sobre la autenticación del SDK de Python.Please see the Python SDK authentication page for details on obtaining credentials to authenticate with the management client.

EjemploExample

Cree un recurso de base de datos de MySQL 5.7 y restrinja el acceso a un intervalo de direcciones IP mediante una regla de firewall.Create a MySQL 5.7 Database resource and restrict access to a range of IP addresses using a firewall rule.


from azure.mgmt.rdbms.mysql import MySQLManagementClient
from azure.mgmt.rdbms.mysql.models import ServerForCreate, ServerPropertiesForDefaultCreate, ServerVersion

SUBSCRIPTION_ID = "YOUR_AZURE_SUBSCRIPTION_ID"
RESOURCE_GROUP = "YOUR_AZURE_RESOURCE-GROUP_WITH_POSTGRES"
MYSQL_SERVER = "YOUR_DESIRED_MYSQL_SERVER_NAME"
MYSQL_ADMIN_USER = "YOUR_MYSQL_ADMIN_USERNAME"
MYSQL_ADMIN_PASSWORD = "YOUR_MYSQL_ADMIN_PASSOWRD"
LOCATION = "westus"  # example Azure availability zone, should match resource group


client = MySQLManagementClient(credentials=creds,
    subscription_id=SUBSCRIPTION_ID)

server_creation_poller = client.servers.create_or_update(
    resource_group_name=RESOURCE_GROUP,
    server_name=MYSQL_SERVER,
    ServerForCreate(
        ServerPropertiesForDefaultCreate(
            administrator_login=MYSQL_ADMIN_USER,
            administrator_login_password=MYSQL_ADMIN_PASSWORD,
            version=ServerVersion.five_full_stop_seven
        ),
        location=LOCATION
    )
)

server = server_creation_poller.result()

# Open access to this server for IPs
rule_creation_poller = client.firewall_rules.create_or_update(
    RESOURCE_GROUP
    MYSQL_SERVER,
    "some_custom_ip_range_whitelist_rule_name",  # Custom firewall rule name
    "123.123.123.123",  # Start ip range
    "167.220.0.235"  # End ip range
)

firewall_rule = rule_creation_poller.result()

PostgreSQLPostgreSQL

Use el controlador ODBC y pyodbc para conectarse a la base de datos y ejecutar instrucciones SQL directamente.Use the ODBC driver and pyodbc to connect to the database and execute SQL statements directly.

Obtenga más información acerca de Azure Database for PostgreSQL.Learn more about Azure Database for PostgreSQL.

Controlador ODBC de cliente y pyodbcClient ODBC driver and pyodbc

La biblioteca de cliente recomendada para acceder a Azure Database for PostgreSQL es el controlador ODBC y pyodbc.The recommended client library for accessing Azure Database for PostgreSQL is the Microsoft ODBC driver and pyodbc.

EjemploExample

Conecte con Azure Database for PostgreSQL y seleccione todos los registros de la tabla SALES.Connect to a Azure Database for PostgreSQL and select all records in the SALES table. Puede obtener la cadena de conexión ODBC para la base de datos en Azure Portal.You can get the ODBC connection string for the database from the Azure Portal.

import pyodbc

SERVER = 'YOUR_SERVER_NAME.postgres.database.azure.com'
DATABASE = 'YOUR_DB_NAME'
USERNAME = 'YOUR_USERNAME'
PASSWORD = 'YOUR_PASSWORD'

DRIVER = '{PostgreSQL ODBC Driver}'
cnxn = pyodbc.connect(
    'DRIVER=' + DRIVER + ';PORT=5432;SERVER=' + SERVER +
    ';PORT=5432;DATABASE=' + DATABASE + ';UID=' + USERNAME +
    ';PWD=' + PASSWORD)
cursor = cnxn.cursor()
selectsql = "SELECT * FROM SALES" # SALES is an example table name
cursor.execute(selectsql)

API de administraciónManagement API

RequisitosRequirements

Debe instalar las bibliotecas de administración de PostgreSQL para Python.You must install the PostgreSQL management libraries for Python.

pip install azure-mgmt-rdbms

Para más información acerca de cómo obtener credenciales para autenticarse con el cliente de administración, consulte la página sobre la autenticación del SDK de Python.Please see the Python SDK authentication page for details on obtaining credentials to authenticate with the management client.

EjemploExample

En este ejemplo, se creará una nueva base de datos de Postgres en nuestro servidor Postgres existente.In this example we will create a new Postgres database on our existing Postgres server.

from azure.mgmt.rdbms.postgresql import PostgreSQLManagementClient

SUBSCRIPTION_ID = "YOUR_AZURE_SUBSCRIPTION_ID"
RESOURCE_GROUP = "YOUR_AZURE_RESOURCE_GROUP_WITH_POSTGRES"
POSTGRES_SERVER = "YOUR_POSTGRES_SERVER_NAME"
DB_NAME = "YOUR_DESIRED_DATABASE_NAME"

client = PostgreSQLManagementClient(credentials, SUBSCRIPTION_ID)

db_creation_poller = client.databases.create_or_update(
    resource_group_name=RESOURCE_GROUP,
    server_name=POSTGRES_SERVER, database_name=DB_NAME)
db = db_creation_poller.result()