Sdílet prostřednictvím


knihovny Azure Database for MySQL/PostgreSQL pro Python

Tento článek ukazuje, jak pomocí Pythonu získat přístup k datům uloženým v Azure Database for MySQL a PostgreSQL.

MySQL

Pomocí Pythonu můžete vytvořit server Azure Database for MySQL a připojit se k němu pomocí správce MySQL a pyodbc.

Rozhraní API pro správu

Vytvářejte a spravujte prostředky MySQL ve vašem předplatném pomocí rozhraní API pro správu.

Nainstalujte knihovny pro správu MySQL pomocí pipu.

pip install azure-mgmt-rdbms

Podrobnosti o získání přihlašovacích údajů k ověření pomocí klienta pro správu najdete na stránce ověřování sady Python SDK .

Příklad vytvoření serveru

Vytvoří Azure Database for MySQL server a omezí přístup k rozsahu IP adres pomocí pravidla brány firewall.

Zkopírujte a vložte následující ukázku kódu do souboru Pythonu (např. sample.py) a aktualizujte ID předplatného, skupinu prostředků, název serveru, uživatelské jméno správce, heslo správce a umístění vlastními hodnotami.

from azure.mgmt.rdbms.mysql import MySQLManagementClient
from azure.mgmt.rdbms.mysql.models import *

SUBSCRIPTION_ID = "YOUR_AZURE_SUBSCRIPTION_ID"
RESOURCE_GROUP = "YOUR_AZURE_RESOURCE_GROUP"
SERVER = "YOUR_SERVER_NAME"
ADMIN_USER = "YOUR_ADMIN_USERNAME"
ADMIN_PASSWORD = "YOUR_ADMIN_PASSWORD"
LOCATION = "westus"

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

server_creation_poller = client.servers.create(
    RESOURCE_GROUP,
    SERVER,
    ServerForCreate(
        properties=ServerPropertiesForDefaultCreate(
            administrator_login=ADMIN_USER,
            administrator_login_password=ADMIN_PASSWORD,
            version=ServerVersion.one_one,
            storage_profile=StorageProfile(
                storage_mb=51200
            )
        ),
        location=LOCATION,
        sku=Sku(
            name="GP_Gen5_2"
        )
    )
)

server = server_creation_poller.result()

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

firewall_rule = rule_creation_poller.result()

Klientský ovladač ODBC a pyodbc

Doporučená klientská knihovna pro přístup k Azure Database for MySQL je ovladač Microsoft ODBC. Pomocí ovladače ODBC se připojte k databázi a přímo spouštět příkazy SQL.

Příklad

Připojte se k serveru Azure Database for MySQL a vyberte všechny záznamy v tabulce sales. Připojovací řetězec ODBC pro databázi můžete získat z webu 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)

PostgreSQL

Pomocí Pythonu můžete vytvořit server Azure Database for PostgreSQL a připojit se k němu pomocí správce PostgreSQL a pyodbc.

Přečtěte si další informace o Azure Database for PostgreSQL.

Rozhraní API pro správu

Vytvářejte a spravujte prostředky MySQL ve vašem předplatném pomocí rozhraní API pro správu.

Nainstalujte knihovny pro správu PostgreSQL pomocí pipu.

pip install azure-mgmt-rdbms

Podrobnosti o získání přihlašovacích údajů k ověření pomocí klienta pro správu najdete na stránce ověřování sady Python SDK .

Příklad vytvoření serveru

Vytvoří Azure Database for PostgreSQL server a omezí přístup k rozsahu IP adres pomocí pravidla brány firewall.

Zkopírujte a vložte následující ukázku kódu do souboru Pythonu (např. sample.py) a aktualizujte ID předplatného, skupinu prostředků, název serveru, uživatelské jméno správce, heslo správce a umístění vlastními hodnotami.

from azure.mgmt.rdbms.postgresql import PostgreSQLManagementClient
from azure.mgmt.rdbms.postgresql.models import *

SUBSCRIPTION_ID = "YOUR_AZURE_SUBSCRIPTION_ID"
RESOURCE_GROUP = "YOUR_AZURE_RESOURCE_GROUP"
SERVER = "YOUR_SERVER_NAME"
ADMIN_USER = "YOUR_ADMIN_USERNAME"
ADMIN_PASSWORD = "YOUR_ADMIN_PASSWORD"
LOCATION = "westus"

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

server_creation_poller = client.servers.create(
    RESOURCE_GROUP,
    SERVER,
    ServerForCreate(
        properties=ServerPropertiesForDefaultCreate(
            administrator_login=ADMIN_USER,
            administrator_login_password=ADMIN_PASSWORD,
            version=ServerVersion.one_one,
            storage_profile=StorageProfile(
                storage_mb=51200
            )
        ),
        location=LOCATION,
        sku=Sku(
            name="GP_Gen5_2"
        )
    )
)

server = server_creation_poller.result()

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

firewall_rule = rule_creation_poller.result()

Klientský ovladač ODBC a pyodbc

Doporučená klientská knihovna pro přístup k Azure Database for PostgreSQL je ovladač Microsoft ODBC a pyodbc.

Příklad připojení

Připojte se k serveru Azure Database for PostgreSQL a vyberte všechny záznamy v tabulceSALES. Připojovací řetězec ODBC pro databázi můžete získat z webu 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)