Python için MySQL için Azure Veritabanı/PostgreSQL kitaplıkları
Bu makalede, MySQL için Azure Veritabanı ve PostgreSQL'de depolanan verilere erişmek için Python'ı nasıl kullanabileceğiniz gösterilmektedir.
MySQL
MySQL yöneticisi ve pyodbc ile bir MySQL için Azure Veritabanı sunucusu oluşturmak ve sunucuya bağlanmak için Python kullanın.
Yönetim API'si
Yönetim API'siyle aboneliğinizde MySQL kaynakları oluşturun ve yönetin.
Pip ile MySQL yönetim kitaplıklarını yükleyin.
pip install azure-mgmt-rdbms
Yönetim istemcisiyle kimlik doğrulaması için kimlik bilgilerini alma hakkında ayrıntılı bilgi için lütfen Python SDK kimlik doğrulaması sayfasına bakın.
Sunucu oluşturma örneği
bir MySQL için Azure Veritabanı sunucusu oluşturur ve güvenlik duvarı kuralı kullanarak bir IP adresleri aralığına erişimi kısıtlar.
Aşağıdaki kod örneğini kopyalayıp bir Python dosyasına (örn. sample.py
) yapıştırın ve abonelik kimliğini, kaynak grubunu, sunucu adını, yönetici kullanıcı adını, yönetici parolasını ve konumu kendi değerlerinizle güncelleştirin.
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()
İstemci ODBC sürücüsü ve pyodbc
MySQL için Azure Veritabanı erişmek için önerilen istemci kitaplığı Microsoft ODBC sürücüsüdür. Veritabanına bağlanmak ve SQL deyimlerini doğrudan yürütmek için ODBC sürücüsünü kullanın.
Örnek
bir MySQL için Azure Veritabanı sunucusuna bağlanın ve satış tablosundaki tüm kayıtları seçin. Veritabanı için ODBC bağlantı dizesi Azure Portal'dan alabilirsiniz.
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
PostgreSQL yöneticisi ve pyodbc ile bir PostgreSQL için Azure Veritabanı sunucusu oluşturmak ve sunucuya bağlanmak için Python kullanın.
PostgreSQL için Azure Veritabanı hakkında daha fazla bilgi edinin.
Yönetim API'si
Yönetim API'siyle aboneliğinizde MySQL kaynakları oluşturun ve yönetin.
PostgreSQL yönetim kitaplıklarını pip ile yükleyin.
pip install azure-mgmt-rdbms
Yönetim istemcisiyle kimlik doğrulaması için kimlik bilgilerini alma hakkında ayrıntılı bilgi için lütfen Python SDK kimlik doğrulaması sayfasına bakın.
Sunucu oluşturma örneği
bir PostgreSQL için Azure Veritabanı sunucusu oluşturur ve güvenlik duvarı kuralı kullanarak bir IP adresleri aralığına erişimi kısıtlar.
Aşağıdaki kod örneğini kopyalayıp bir Python dosyasına (örn. sample.py
) yapıştırın ve abonelik kimliğini, kaynak grubunu, sunucu adını, yönetici kullanıcı adını, yönetici parolasını ve konumu kendi değerlerinizle güncelleştirin.
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()
İstemci ODBC sürücüsü ve pyodbc
PostgreSQL için Azure Veritabanı erişmek için önerilen istemci kitaplığı Microsoft ODBC sürücüsü ve pyodbc'dir.
Bağlan örneği
bir PostgreSQL için Azure Veritabanı sunucusuna bağlanın ve tablodaki SALES
tüm kayıtları seçin. Veritabanı için ODBC bağlantı dizesi Azure Portal'dan alabilirsiniz.
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
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin