この記事では、Azure Functions で Azure Database for MySQL バインドを操作する方法について説明します。 Azure Functions では、一般提供で入力バインドと出力バインドがサポートされています。 プレビューでは、Azure Functions は Azure Database for MySQL のトリガー バインドをサポートしています。
アクション | タイプ |
---|---|
データベースからデータを読み取る | 入力バインド |
データベースにデータを保存する | 出力バインド |
MySQL テーブルで変更が検出されたときに関数をトリガーする (プレビュー) | トリガー バインド |
拡張機能をインストールする
インストールする拡張機能 NuGet パッケージは、関数アプリで使用している C# モードによって異なります。
関数は分離された C# ワーカー プロセスで実行されます。 詳細については、 分離されたワーカー プロセスで C# Azure 関数を実行するためのガイドを参照してください。
この NuGet パッケージをインストールすることによって、プロジェクトに拡張機能を追加します。
dotnet add package Microsoft.Azure.Functions.Worker.Extensions.MySql --version 1.0.3-preview
バンドルをインストールする
Azure Database for MySQL バインドの拡張機能は、v4 拡張機能バンドルの一部です。 このバンドルは、host.json プロジェクト ファイルで指定されます。
プレビュー バンドル v4.x
プレビュー拡張機能バンドルを使用するには、host.json ファイルに次のコードを追加または置き換えます。
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle.Preview",
"version": "[4.*, 5.0.0)"
}
}
バンドルをインストールする
Azure Database for MySQL バインドの拡張機能は、v4 拡張機能バンドルの一部です。 このバンドルは、host.json プロジェクト ファイルで指定されます。
プレビュー バンドル v4.x
プレビュー拡張機能バンドルを使用するには、host.json ファイルに次のコードを追加または置き換えます。
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle.Preview",
"version": "[4.*, 5.0.0)"
}
}
バンドルをインストールする
Azure Database for MySQL バインドの拡張機能は、v4 拡張機能バンドルの一部です。 このバンドルは、host.json プロジェクト ファイルで指定されます。
プレビュー バンドル v4.x
プレビュー拡張機能バンドルを使用するには、host.json ファイルに次のコードを追加または置き換えます。
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle.Preview",
"version": "[4.*, 5.0.0)"
}
}
パッケージの更新
次のスニペットに示すように、プレビュー拡張機能バンドルを使用して、Java Azure Functions プロジェクトの pom.xml ファイルを更新できます。
<dependency>
<groupId>com.microsoft.azure.functions</groupId>
<artifactId>azure-functions-java-library-mysql</artifactId>
<version>1.0.1-preview</version>
</dependency>
MySQL の接続文字列
Azure Functions の Azure Database for MySQL バインドには、接続文字列に必要なプロパティがあります。 これらのバインドは、接続文字列を MySql.Data.MySqlClient ライブラリに渡し、 MySqlClient ConnectionString ドキュメントで定義されているサポートを提供します。 注意が必要なキーワードは次のとおりです。
-
server
: サーバー インスタンスが実行されているホスト。 値には、ホスト名、IPv4 アドレス、または IPv6 アドレスを指定できます。 -
uid
: 認証プロセスを提供する MySQL ユーザー アカウント。 -
pwd
: 認証プロセスに使用するパスワード。 -
database
: 接続の既定のデータベース。 データベースが指定されていない場合、接続には既定のデータベースがありません。
考慮事項
- Azure Database for MySQL バインドでは、バージョン 4.x 以降の Azure Functions ランタイムがサポートされます。
- Azure Database for MySQL バインドのソース コード は、この GitHub リポジトリにあります。
- これらのバインドには、Azure Database for MySQL への接続が必要です。
- 空間データ型
GEOMETRY
、POINT
、およびPOLYGON
の列を持つテーブルに対する出力バインドはサポートされていません。 データアップサートは失敗します。
サンプル
Azure Database for MySQL バインド用の GitHub リポジトリで入手できる C#、Java、JavaScript、PowerShell、Python のサンプルに加えて、Azure サンプルでさらに多くのサンプルを利用できます。