Python 用 Azure MySQL/PostgreSQL ライブラリAzure MySQL/PostgreSQL libraries for Python

MySQLMySQL

MySQL Manager と pyodbc を使用して、Python から Azure MySQL Database に格納されたリソースやデータを処理します。Work with resources and data stored in Azure MySQL Database from python with the MySQL manager and pyodbc.

クライアント ODBC ドライバーと pyodbcClient ODBC driver and pyodbc

Azure Database for MySQL にアクセスするための推奨クライアント ライブラリは、Microsoft ODBC ドライバーです。The recommended client library for accessing Azure Database for MySQL is the Microsoft ODBC driver. ODBC ドライバーを使用してデータベースに接続し、SQL ステートメントを直接実行します。Use the ODBC driver to connect to the database and execute SQL statements directly.

Example

Azure Database for MySQL に接続し、sales テーブル内の全レコードを選択します。Connect to a Azure Database for MySQL and select all records in the sales table. データベースの ODBC 接続文字列は、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)

管理 APIManagement API

Management API を使用して、ご利用のサブスクリプションの MySQL リソースの作成や管理を行うことができます。Create and manage MySQL resources in your subscription with the management API.

必要条件Requirements

Python 用 MySQL 管理ライブラリをインストールする必要があります。You must install the MySQL management libraries for Python.

pip install azure-mgmt-rdbms

管理クライアントを使用して認証用の資格情報を取得する方法の詳細については、Python SDK 認証に関するページを参照してください。Please see the Python SDK authentication page for details on obtaining credentials to authenticate with the management client.

Example

MySQL 5.7 Database リソースを作成し、ファイアウォール規則を使って、特定の範囲の IP アドレスにアクセスを制限します。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

ODBC ドライバーと pyodbc を使用してデータベースに接続し、SQL ステートメントを直接実行します。Use the ODBC driver and pyodbc to connect to the database and execute SQL statements directly.

Azure Database for PostgreSQL の詳細については、こちらを参照してください。Learn more about Azure Database for PostgreSQL.

クライアント ODBC ドライバーと pyodbcClient ODBC driver and pyodbc

Azure Database for PostgreSQL にアクセスするための推奨クライアント ライブラリは、Microsoft ODBC ドライバーと pyodbc です。The recommended client library for accessing Azure Database for PostgreSQL is the Microsoft ODBC driver and pyodbc.

Example

Azure Database for PostgreSQL に接続し、SALES テーブル内の全レコードを選択します。Connect to a Azure Database for PostgreSQL and select all records in the SALES table. データベースの ODBC 接続文字列は、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)

管理 APIManagement API

必要条件Requirements

Python 用 PostgreSQL 管理ライブラリをインストールする必要があります。You must install the PostgreSQL management libraries for Python.

pip install azure-mgmt-rdbms

管理クライアントを使用して認証用の資格情報を取得する方法の詳細については、Python SDK 認証に関するページを参照してください。Please see the Python SDK authentication page for details on obtaining credentials to authenticate with the management client.

Example

この例では、既存の Postgres サーバー上に新しい Postgres データベースを作成します。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()