SQLデータベースに変更を加える必要がある場合、SQL Server Management Studioを開いて少し操作することで実現できます。しかし、自動化スクリプトでAzure SQLデータベースを10回または100回作成する場合はどうなるでしょうか?それにはPowerShellを使用する必要があります!
このチュートリアルでは、PowerShellを使用してAzure SQLデータベースとSQLサーバーファイアウォールルールを作成する方法を学びます!
さあ、始めましょう!
前提条件
このチュートリアルのデモに従うために、次のものが必要です:
- A computer to run PowerShell – This tutorial uses Windows 10 using PowerShell v7.1.
- A code editor like Visual Studio (VS) Code.
- Az PowerShellモジュール – このチュートリアルではv5.9.0を使用します。
- dbatools PowerShellモジュール – このチュートリアルではv1.0.145を使用します。
- Azureリソースグループ – このチュートリアルでは、westeuropeリージョンのrg-dbaautomationというリソースグループを使用します。
- PowerShellでAzureに認証されています。
Azure SQLサーバーの作成
Azure SQLデータベースを作成する前に、それをホストするためのAzure SQLサーバーを作成する必要があります。既にAzureに認証されていると仮定します:
ローカルコンピュータでPowerShellを開き、Azure SQLデータベースをホストするAzure SQLサーバーを作成してください。
以下のコマンドは、前提となるリソースグループでsqlestate
という名前のAzure SQLサーバーを作成し、SQL管理者のユーザー名をSqlAdministrator
、パスワードをAVeryStrongP@ssword0
に設定しています。コマンドは、後で作成されたサーバーの属性を使用するためにNew-AzSqlServer
コマンドレットの出力を保存しています。
データベースの要件を満たす限り、SQL管理者のユーザー名とパスワードを任意で作成することができます。
SQLサーバー名はグローバルにユニークである必要があります。
Azure SQL Serverファイアウォールルールの作成
Azure SQL Serverはデフォルトで外部エンティティへのアクセスを許可しません。サーバーに接続するには、まずサーバーファイアウォールルールを作成して、ローカルマシンからSQL Serverにアクセスする必要があります。
サーバーファイアウォールルールを作成するには、ローカルコンピュータのパブリックIPアドレスを見つけ、New-AzSqlServerFirewallRule
コマンドレットを呼び出してルールを作成します。
以下のコマンドは、ウェブサイトhttp://ipinfo.ioを使用してコンピュータのパブリックIPアドレスを見つけ、rg-dbaautomation
リソースグループでFirewallRule_Access
という名前のファイアウォールルールを作成し、そのIPアドレスをすべてのIP範囲に指定しています。

Azure SQL データベースの作成方法
最後に、Azure SQL サーバーとファイアウォールのルールを作成したら、New-AzSqlDatabase
コマンドレットを使用してデータベースを作成します。
以下のコマンドは、作成したサーバーにホストされるBasic
エディションの Azure SQL データベースEstate
を作成します。
使用可能なすべてのエディションを確認するには、
Get-AzSqlServerServiceObjective
PowerShell コマンドレットを実行します。

Azure SQL データベースへの接続
Azure サブスクリプションで実行されている Azure SQL データベースに接続できるようになりました。次に、以下のコードを使用してデータベースに接続できるか確認します。Connect-DbaInstance
PowerShell コマンドレットを使用します。
以前に作成した Azure SQL サーバーの FQDN、データベースの名前、および SQL 管理者資格情報を使用して、データベースへの接続をテストします。
データベースに接続できた場合、次の出力が表示されます:

まとめ
上記の手順をすべて含む単一の PowerShell スクリプトに保存したい場合、新しい PowerShell スクリプトを作成し、以下のスニペットをコピーして貼り付けます。
Conclusion
PowerShell を使用して Azure SQL データベースを作成することで、Azure Portal を使用するよりもプロセスがスムーズになります。PowerShell を使用すると、Azure SQL サーバーとデータベースを迅速に作成するためのプロセスを自動化できます。
あなたの新しい能力を使って、PowerShell を使用して Azure SQL データベースを作成することが、日常のルーチンにどのように適合するかをどこで見ていますか?
Source:
https://adamtheautomator.com/create-azure-sql-database/