biblioteki Azure Database for MySQL/PostgreSQL dla języka Python
W tym artykule pokazano, jak używać języka Python do uzyskiwania dostępu do danych przechowywanych w usługach Azure Database for MySQL i PostgreSQL.
MySQL
Użyj języka Python, aby utworzyć serwer Azure Database for MySQL i nawiązać z nią połączenie za pomocą menedżera MySQL i narzędzia pyodbc.
Interfejs API zarządzania
Tworzenie zasobów mySQL i zarządzanie nimi w ramach subskrypcji za pomocą interfejsu API zarządzania.
Zainstaluj biblioteki zarządzania MySQL za pomocą narzędzia pip.
pip install azure-mgmt-rdbms
Aby uzyskać szczegółowe informacje na temat uzyskiwania poświadczeń do uwierzytelniania za pomocą klienta zarządzania, zobacz stronę uwierzytelniania zestawu SDK języka Python .
Przykład tworzenia serwera
Tworzy serwer Azure Database for MySQL i ogranicza dostęp do zakresu adresów IP przy użyciu reguły zapory.
Skopiuj i wklej poniższy przykładowy kod do pliku w języku Python (np. sample.py
) i zaktualizuj identyfikator subskrypcji, grupę zasobów, nazwę serwera, nazwę użytkownika administratora, hasło administratora i lokalizację przy użyciu własnych wartości.
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()
Sterownik ODBC klienta i pyodbc
Zalecaną biblioteką klienta na potrzeby uzyskiwania dostępu do Azure Database for MySQL jest sterownik OdBC firmy Microsoft. Użyj sterownika ODBC, aby nawiązać połączenie z bazą danych i bezpośrednio wykonać instrukcje SQL.
Przykład
Połącz się z serwerem Azure Database for MySQL i wybierz wszystkie rekordy w tabeli sprzedaży. Możesz uzyskać parametry połączenia ODBC dla bazy danych w witrynie 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
Użyj języka Python, aby utworzyć serwer Azure Database for PostgreSQL i nawiązać z nią połączenie za pomocą menedżera PostgreSQL i narzędzia pyodbc.
Dowiedz się więcej o Azure Database for PostgreSQL.
Interfejs API zarządzania
Tworzenie zasobów mySQL i zarządzanie nimi w ramach subskrypcji za pomocą interfejsu API zarządzania.
Zainstaluj biblioteki zarządzania PostgreSQL za pomocą narzędzia pip.
pip install azure-mgmt-rdbms
Aby uzyskać szczegółowe informacje na temat uzyskiwania poświadczeń do uwierzytelniania za pomocą klienta zarządzania, zobacz stronę uwierzytelniania zestawu SDK języka Python .
Przykład tworzenia serwera
Tworzy serwer Azure Database for PostgreSQL i ogranicza dostęp do zakresu adresów IP przy użyciu reguły zapory.
Skopiuj i wklej poniższy przykładowy kod do pliku w języku Python (np. sample.py
) i zaktualizuj identyfikator subskrypcji, grupę zasobów, nazwę serwera, nazwę użytkownika administratora, hasło administratora i lokalizację przy użyciu własnych wartości.
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()
Sterownik ODBC klienta i pyodbc
Zalecaną biblioteką klienta do uzyskiwania dostępu do Azure Database for PostgreSQL jest sterownik Microsoft ODBC i pyodbc.
Przykład połączenia
Połącz się z serwerem Azure Database for PostgreSQL i wybierz wszystkie rekordy w SALES
tabeli. Możesz uzyskać parametry połączenia ODBC dla bazy danych w witrynie 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
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla