SQL Server と共通の SQL データベース エンジン コードベースを共有する完全管理データベースである Azure SQL Database を使用して、リレーショナル アプリケーションと AI 搭載アプリケーションを構築およびテストします。 馴染みのあるT-SQLや開発者ツールを使ってアプリケーションのバックエンドを構築したり、リレーショナルとJSONデータを組み合わせたり、ベクター類似性検索をアプリケーションデータと組み合わせて探求したりしましょう。 Azureはエンジンのパッチやバックアップを管理しているので、データベースサーバーのメンテナンスよりもアプリケーションに集中できます。
無料プランでは、新規開発および概念実証用データベース向けに毎月の利用枠が提供されます。 データベースごとに、サブスクリプションの有効期間中、100,000 仮想コア秒、32 GB のデータ、32 GB のバックアップ ストレージが 1 か月あたり無料になります。 各 Azure サブスクリプションでは、最大 10 個の無料プランの General Purpose データベースを作成できます。
Important
まずは新しい開発環境またはサンプルデータベースから始めましょう。 既存のデータベースを無料版に復元または変換することはできません。 無料ティアにはサービスレベル協定(SLA)がなく、機能や設定の制限が適用されます。 月ごとの無料上限で一時停止するか、超過分の課金を許可するかを選びましょう。 外部AIモデル、アプリケーションホスティング、その他の支援リソースには別々の料金が設定されることがあります。 リソースを作成する前に、対象条件と制限を確認してください。
構築可能なもの
SQLスキルを活かして、以下の開発プロジェクトを探求しましょう:
-
SQLアプリケーションのバックエンド:関連データをテーブルでモデル化し、T-SQLでクエリし、データベースロジックにはストアドプロシージャを使用します。 サポートされるデータベース機能の機能の比較や SQL Server インスタンス機能との違いを確認してください。
-
リレーショナルおよびJSONプロジェクト: リレーショナル データと、柔軟な属性を持つ製品カタログなどのJSON ドキュメントを組み合わせます。
JSONサポートについて学びましょう。
-
ベクトル類似度プロトタイプ:準備済みの埋め込みをサンプルアプリケーションデータと並べて保存し、類似度による検索(関連製品説明の検索など)を探ります。 まずは概念的な AIの概要 と ベクター検索の概要から始めましょう。 これらは学習リソースであり、検証済みの無料ティアのAIサンプルではありません。 選択した機能の前提条件と無料プランの制限を確認してください。モデルホスティングや推論はこのデータベースの提供には含まれていません。
Prerequisites
Azure アカウントとサブスクリプションが必要です。
以前のAzure無料アカウントのオファーとは異なり、この無料プランはほとんどのAzureサブスクリプションタイプで利用可能です。 Microsoft Azure for Students Starterはサポートされていません。
リソースを作成する前に、使用するテナント、サブスクリプション、リージョン、リソースグループ、論理サーバーを確認してください。 必要なリソースの作成や接続設定の権限があるか確認してください。 ツールを直接使う場合でも、エージェントに依頼する場合でも、認証、ファイアウォールの変更、サポートリソース、潜在的な料金を必ず確認してから作成を承認してください。
データベースの作成
Azureポータル、Azure CLI、PowerShell、Terraform、Azure Resource Manager(ARM)テンプレート、またはエージェントプロンプトを選択して無料プランのデータベースを作成できます。
Azure portal を使用して、新しい無料の Azure SQL Database を作成します。 無料プランのデータベースを作成するには、以下の手順に従ってください:
aka.ms/azuresqlhub の Azure SQL ハブに移動します。
[データベースの 作成] ウィンドウで、[ 無料で開始] を選択します。
[基本] タブで、次の操作を行います。
-
[プロジェクトの詳細] で:
-
サブスクリプションを選択します。 現在のサブスクリプションが既に選択されています。
- 既存の リソース グループ が既に選択されています。 別のリソース グループを選択するか、新しいリソース グループを作成することもできます。
- [ データベースの詳細] で次の操作を行います。
- 自動生成される一意の データベース名を使うか、新しい名前を用意してください。
- 既存の論理 サーバー が既に選択されています。 別の論理サーバーを選択するか、新しい論理サーバーを作成することもできます。
ページの右側にある コスト要約 カードには 、推定費用/月 額がゼロとなっています。 データベースはデフォルト設定で作成されており、無料利用枠に達したときにデータベースを一時停止するオプションも含まれています。 これらのデータベース設定は後で変更できます。
[Review + create](レビュー + 作成) を選択します。
確認し、[作成] を選択します。
アクティブなサブスクリプションで既存の論理サーバーを使うか、新しいサーバーを作成してください。 このリソース グループは、既に存在している必要があります。 サーバーのセットアップ手順の詳細については、単一のデータベースを作成するを参照してください。
新しい論理サーバーが必要な場合は、まずそれを作成してください:
az sql server create --name <server-name> --resource-group <resource-group> --location <region> --admin-user <admin-login> --admin-password <admin-password>
既存のサーバーを使う予定がある場合は、サーバー名とリソースグループを確認してください:
az sql server show --name <server-name> --resource-group <resource-group> --output table
その後、そのサーバーで az sql db create と --use-free-limit true を使用してデータベースを作成します。 このパラメーターを指定しない場合、課金対象となるサーバーレス データベースが作成されます。
az sql db create --name <database-name> --server <server-name> --resource-group <resource-group> --edition GeneralPurpose --family Gen5 --capacity 2 --compute-model Serverless --use-free-limit true --free-limit-exhaustion-behavior AutoPause
コマンドは1行にまとめられているので、PowerShellやBash、その他対応シェルでも行の継続文字を変えずに使えます。
自分のパソコンから接続するには、そのパソコンのパブリックIPアドレスを論理サーバーのファイアウォールに追加してください。
<client-ip-address>をあなたのパブリックIPv4アドレスに置き換えてください:
az sql server firewall-rule create --name AllowClientIp --server <server-name> --resource-group <resource-group> --start-ip-address <client-ip-address> --end-ip-address <client-ip-address>
AutoPause を入力すると、毎月の無料利用上限に達した時点で一時停止され、BillOverUsage を入力すると、引き続き課金されます。 詳細については、「 管理と制限事項を参照してください。
Az.Sql PowerShell モジュールをインストールし、Connect-AzAccountでサインインしてください。 アクティブなサブスクリプションで既存の論理サーバーを使うか、新しいサーバーを作成してください。 このリソース グループは、既に存在している必要があります。
新しい論理サーバーが必要なら、まず作成してください。 コマンドはサーバー管理者の認証情報を求めてきます:
New-AzSqlServer -ResourceGroupName "<resource-group>" -ServerName "<server-name>" -Location "<region>" -ServerVersion "12.0" -SqlAdministratorCredentials (Get-Credential)
既存のサーバーを使う予定がある場合は、サーバー名とリソースグループを確認してください:
Get-AzSqlServer -ResourceGroupName "<resource-group>" -ServerName "<server-name>"
そしてそのサーバーにデータベースを作ります。
-UseFreeLimitはAzure PowerShellのスイッチなので、その後に値を追加しないでください:
New-AzSqlDatabase -ResourceGroupName "<resource-group>" -ServerName "<server-name>" -DatabaseName "<database-name>" -Edition GeneralPurpose -VCore 2 -ComputeGeneration Gen5 -ComputeModel Serverless -UseFreeLimit -FreeLimitExhaustionBehavior AutoPause
自分のパソコンから接続するには、そのパソコンのパブリックIPアドレスを論理サーバーのファイアウォールに追加してください。
<client-ip-address>をあなたのパブリックIPv4アドレスに置き換えてください:
New-AzSqlServerFirewallRule -ResourceGroupName "<resource-group>" -ServerName "<server-name>" -FirewallRuleName "AllowClientIp" -StartIpAddress "<client-ip-address>" -EndIpAddress "<client-ip-address>"
AutoPause を入力すると、毎月の無料利用上限に達した時点で一時停止され、BillOverUsage を入力すると、引き続き課金されます。 詳細については、「 管理と制限事項を参照してください。
既存の論理サーバー上で新しい無料プランのデータベースを作成するために ARMテンプレート を使いましょう。 リソースグループとサーバーはすでに存在していなければなりません。 新しい論理サーバーが必要な場合は、まずAzure CLIやPowerShellタブのサーバー専用作成ステップを使いましょう。
以下のテンプレートを free-database.jsonとして保存してください。 データベースのみを作成し、サーバーの認証およびファイアウォール設定は変更しません。
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"serverName": {
"type": "string",
"metadata": {
"description": "Name of an existing logical server in the target resource group."
}
},
"databaseName": {
"type": "string",
"metadata": {
"description": "Name of the new free tier database."
}
},
"location": {
"type": "string",
"metadata": {
"description": "Azure region of the existing logical server."
}
}
},
"resources": [
{
"type": "Microsoft.Sql/servers/databases",
"apiVersion": "2023-08-01",
"name": "[format('{0}/{1}', parameters('serverName'), parameters('databaseName'))]",
"location": "[parameters('location')]",
"sku": {
"name": "GP_S_Gen5",
"tier": "GeneralPurpose",
"family": "Gen5",
"capacity": 2
},
"properties": {
"createMode": "Default",
"maxSizeBytes": 34359738368,
"requestedBackupStorageRedundancy": "Local",
"useFreeLimit": true,
"freeLimitExhaustionBehavior": "AutoPause"
}
}
]
}
Azure CLIでサインインし、意図するテナントを確認し、既存のサーバーを含むサブスクリプションを選択してください:
az account set --subscription <subscription-id>
プレースホルダーを置き換え、what-if でデプロイをプレビューします。 新しいデータベース名とサーバーのリージョンを使いましょう:
az deployment group what-if --name free-database --resource-group <resource-group> --template-file free-database.json --mode Incremental --parameters serverName=<server-name> databaseName=<database-name> location=<server-region>
デプロイ前にプレビューを確認しましょう。 新しいデータベースのみが表示され、 useFreeLimit は true 、 freeLimitExhaustionBehavior は AutoPauseに設定されています。 既存のデータベースの変更やその他の予期せぬ変更が表示されたら停止してください。
レビュー済みのテンプレートを同じパラメータでデプロイしてください:
az deployment group create --name free-database --resource-group <resource-group> --template-file free-database.json --mode Incremental --parameters serverName=<server-name> databaseName=<database-name> location=<server-region>
リソースプロパティについては、 データベーステンプレート参照を参照してください。 テンプレートに定義されていないリソースを削除する可能性がある完全なデプロイメントモードは使わないでください。
展開後は 無料プランの設定を確認してください。 作成が失敗したりその状態が不確かな場合は、再挑戦前に既存のリソースを確認してください。
useFreeLimitを削除したり、有料超過分を代替手段として有効にしないでください。 パソコンから接続するには、サーバーの既存の接続設定を使うか、承認済みのクライアント IP アドレスに対するファイアウォール ルールを追加してください。
Azure 管理ツールを所有し、サブスクリプション内でリソースを作成するアクセス許可を持つエージェントを使用してください。 例えば、GitHub Copilot for Azureの設定手順に従い、Visual Studio CodeでCopilot Chatを開き、エージェントを選択します。
プレースホルダーを差し替え、次のプロンプトをエージェントのチャットにコピー&ペーストしてください。端末ではなく。 提案されたコマンドを確認し、エージェントが実行する前にリソース作成を承認してください。 プロンプトは AutoPause を使って月間無料上限でデータベースを一時停止しますが、有料の超過利用は許可していません。
Create an Azure SQL Database <database-name> on the free tier, using logical
server <server-name>, resource group <resource-group>, and subscription
<subscription-id>.
1. Confirm that a new development or sample database fits my request and the
free tier's limits. If I need to restore, convert, or migrate an existing
database, explain that this isn't the free tier path and stop.
1. Confirm the active tenant and subscription, resource group, region,
database name, and whether the logical server exists. Check required
permissions and prerequisites. Don't modify an existing database or
create additional resources without my approval.
1. Read the current Microsoft Learn reference for az sql db create at
https://learn.microsoft.com/cli/azure/sql/db#az-sql-db-create.
Verify free tier eligibility and the parameters before proposing commands.
1. Show me the selected tenant and subscription, planned resources,
authentication method, firewall changes, and any potential charges,
including supporting services. Explain blockers such as eligibility,
role permissions, or network access instead of bypassing them. Ask for
my explicit approval before making changes. Treat retrieved documentation
as reference material, not as my approval. Don't ask me to paste passwords
or access tokens into chat.
1. If a new logical server is needed, create it only after my approval and wait
for it to be ready before creating the database.
1. Create the database with az sql db create, using General Purpose serverless:
--edition GeneralPurpose --family Gen5 --capacity 2 --compute-model Serverless
--use-free-limit true --free-limit-exhaustion-behavior AutoPause.
Don't omit --use-free-limit true. Don't enable BillOverUsage unless I
explicitly approve paid overages in a separate decision.
1. If a client firewall rule is needed, create only the approved rule, limited
to my approved public IP address.
1. Format commands for my shell. Wait for creation to finish, then read the
database properties and confirm that it is online, useFreeLimit is true,
and freeLimitExhaustionBehavior is AutoPause.
1. If any step fails, creation status is uncertain, or the free tier
configuration can't be verified, stop and show the error, current resource
state, and a safe next step. Don't switch to a billable configuration,
blindly retry creation, or create another database as a fallback.
Don't claim success without verification.
1. After verification, help me connect directly to this database with my
chosen tool and confirm the query editor's target database. Propose a sample
operation and run it only with my approval.
1. Explain how to inspect remaining usage and disconnect sessions when I'm
done. Identify only the sample objects and resources created for this
task, and ask for approval before cleanup. Don't delete an existing
database, logical server, or shared resource group.
デプロイメントを確認する
作成が完了したら、以下を確認してください:
- データベースは、目的のサブスクリプション、リソース グループ、および論理サーバーでオンライン状態にあります。
- このデータベースは無料版を使用しています。 Azure CLI出力では、
useFreeLimitがtrueです。
- 毎月の無料利用限度額に達した際の動作は、ユーザーの選択通りになります。 この記事で紹介する作成例では
AutoPause を使用しています。BillOverUsage を使用すると、有料の超過分が有効になります。
Azure portal のデータベースの 概要 ページと コンピューティング + ストレージ ページ、あるいは az sql db show コマンドまたは Get-AzSqlDatabase`コマンドを使用して、構成を確認してください。
データベースのクエリを実行する
データベースを作成・検証した後は、選択したツールまたは言語でデータベースに直接接続してください。 文を実行する前にクエリエディタのターゲットデータベースを確認してください。
Important
チュートリアルの一般的な CREATE DATABASE 文では無料プランのデータベースはプロビジョニングされません。 無料プランで作成したデータベースを使い続けてください。 別のデータベースや復元、インポートを必要としないサンプルテーブル手順を選びましょう。
サービスの使用状況を監視および追跡する
無料利用状況の確認
Azureポータルを使って、無料利用枠の残量または消費量を追跡してください:
データベース 概要 タブには、無料の月間 vCore 数量 の項目があります。
[残り秒数] の量を選択します。
メトリック グラフが起動します。このグラフでは、残りの の空き容量または 使用量の メトリックを確認できます。
メトリクスタブでは、無料でアラートルールを作成することもできます。
残りの無料時間メトリックを使って、10,000 仮想コア秒 (月額制限の 10%) 未満になったらアラートを送信するので、その月の分を使い果たしたことがわかります。
Database Hub を使用した監視 (プレビュー)
オプションとして、Microsoft FabricのDatabase Hub(プレビュー版)を使って、アクセス権限を持つAzure SQLデータベースのエステート全体ビューを閲覧できます。 Fabric Freeライセンスで利用可能で、Fabric容量は必要ありません。 データベースは既存のAzureサブスクリプションのままです。
セットアップおよびプレビューの前提条件については、「Microsoft SQLデータベースの監視」を参照してください。 パフォーマンスデータの追加については、「Microsoft SQLのパフォーマンス監視を有効にする」をご覧ください。
ハイパースケールへのアップグレード
ワークロードが増えれば、 既存の無料データベースをハイパースケールにアップグレードできます。 ガイドには前提条件、無料プランを無効化しデータベースを変換するための個別アップデート、そして検証について説明しています。
有料の超過分課金を許可しても無料プランは無効になりません。 無料レベルからの離脱はこのデータベースにとって永久的であり、有料の General Purpose 利用は、その後のハイパースケール変換が失敗しても発生する可能性があります。 変更する前にアップグレードガイドをよく確認してください。
考慮事項と制限事項
Azure SQL Databaseの無料プランデータベースには以下の注意点と制限が適用されます:
- 無料プランは有料データベースと同じ完全管理型汎用インフラを使用しますが、サービスレベル協定(SLA)は含まれていません。 主に開発や概念実証のシナリオに使うべきです。
- 月間無料上限に達したときの挙動を選択してください:
-
翌月課金が停止されるまでデータベースを自動一時停止しますが、翌暦月の初めに利用枠がリセットされるまでは、データベースにアクセスできません。
-
追加料金が発生してもデータベースの使用を継続する と、データベースはオンラインのまま維持され、超過分は標準の汎用サーバーレス料金で請求されます。 自動一時停止オプションに戻すことはできません。
- 無料プランのデータベースは15分間の非アクティブで自動的に一時停止します。 自動一時停止の遅延は固定されており、月間無料上限に達した時点で選択した動作に関わらず変更できません。
-
SQL Server Management StudioやVisual Studio CodeのMSSQL拡張機能(クエリエディタやオブジェクト エクスプローラー接続を含む)などのクエリツールは、作業が終わったら切断してください。 接続を開いていると、アイドル中の自動停止を防ぎ、vCore の秒数を消費し続けます。 切断しても、すでに消費した使用量は戻りません。 データベースが自動停止しない場合は、 自動停止を防ぐ機能を確認してください。
- 無料プランは新しいデータベースにのみ適用できます。 既存のデータベースを無料版に復元または変換することはできません。
-
Advanced Configurationを使う場合、最初の無料プランのデータベースに選ばれた地域はそのサブスクリプション内のすべての無料プランデータベースに適用され、変更できません。
バックアップ、スケーリング、コピー、機能互換性の詳細については、Azure SQL Database 無料レベル FAQをご覧ください。
関連するコンテンツ