Azure Database for MySQL/PostgreSQL-bibliotek för Python
Den här artikeln visar hur du kan använda Python för att komma åt data som lagras i Azure Database for MySQL och PostgreSQL.
MySQL
Använd Python för att skapa och ansluta till en Azure Database for MySQL-server med MySQL-hanteraren och pyodbc.
Hanterings-API
Skapa och hantera MySQL-resurser i din prenumeration med hanterings-API:et.
Installera MySQL-hanteringsbiblioteken med pip.
pip install azure-mgmt-rdbms
Mer information om hur du hämtar autentiseringsuppgifter för att autentisera med hanteringsklienten finns på autentiseringssidan för Python SDK .
Skapa serverexempel
Skapar en Azure Database for MySQL server och begränsar åtkomsten till ett intervall med IP-adresser med hjälp av en brandväggsregel.
Kopiera och klistra in kodexemplet nedan i en Python-fil (t.ex. sample.py
) och uppdatera prenumerations-ID, resursgrupp, servernamn, administratörsanvändarnamn, administratörslösenord och plats med egna värden.
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()
Klientens ODBC-drivrutin och pyodbc
Det rekommenderade klientbiblioteket för åtkomst till Azure Database for MySQL är Microsoft ODBC-drivrutinen. Använd ODBC-drivrutinen för att ansluta till databasen och köra SQL-instruktioner direkt.
Exempel
Anslut till en Azure Database for MySQL server och välj alla poster i försäljningstabellen. Du kan hämta ODBC-anslutningssträng för databasen från 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
Använd Python för att skapa och ansluta till en Azure Database for PostgreSQL-server med PostgreSQL-hanteraren och pyodbc.
Läs mer om Azure Database for PostgreSQL.
Hanterings-API
Skapa och hantera MySQL-resurser i din prenumeration med hanterings-API:et.
Installera PostgreSQL-hanteringsbiblioteken med pip.
pip install azure-mgmt-rdbms
Mer information om hur du hämtar autentiseringsuppgifter för att autentisera med hanteringsklienten finns på autentiseringssidan för Python SDK .
Skapa serverexempel
Skapar en Azure Database for PostgreSQL server och begränsar åtkomsten till ett intervall med IP-adresser med hjälp av en brandväggsregel.
Kopiera och klistra in kodexemplet nedan i en Python-fil (t.ex. sample.py
) och uppdatera prenumerations-ID, resursgrupp, servernamn, administratörsanvändarnamn, administratörslösenord och plats med egna värden.
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()
Klientens ODBC-drivrutin och pyodbc
Det rekommenderade klientbiblioteket för åtkomst till Azure Database for PostgreSQL är Microsoft ODBC-drivrutinen och pyodbc.
Connect-exempel
Anslut till en Azure Database for PostgreSQL server och välj alla poster i SALES
tabellen. Du kan hämta ODBC-anslutningssträng för databasen från 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)
Azure SDK for Python
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för