LoginSignup
0
0

More than 1 year has passed since last update.

Azure SQL Databaseにログインユーザーを追加してユーザーデータベースにアクセスする方法

Last updated at Posted at 2023-02-10

はじめに

Azure SQL Databaseを初めて初めてデプロイする際に管理者ログインユーザーとパスワードを指定して構築する必要があります。

管理者ログインユーザーとは別で追加したログインユーザーを使用してSSMS経由でデータベースにアクセスしようとしたところ、以下のようなエラーが発生しログインができませんでした。

ADDITIONAL INFORMATION:
The server principal 'ログインユーザー名' is not able to access the database 'master' under the current security context.
Cannot open user default database. Login failed.
Login failed for user 'ログインユーザー名'. (Microsoft SQL Server、エラー: 916)

このメッセージからdefault databaseをユーザーデータベースに変更する必要があると思いましたが、Azure SQL Databaseではログインに対してDefault databaseが変更できない仕様のようです。(Default databaseは必ずmasterデータベース)

そのため追加したログインユーザーでSQL Server Management Studio (SSMS) や sqlcmdから接続する際にはデータベース名を指定する必要があります。

手順

SSMSからデータベースを指定して接続する

① サーバー名、認証情報を入力した後、SSMSの認証画面の右下にある"Options >>"を開く
② Connect to database 欄にログイン先のデータベースを指定
③ Connectを押下し、接続

image.png

sqlcmdからデータベースを指定して接続する

① 接続元のマシンからコマンドプロンプトや PowerShell を開く。
② 以下の接続コマンドで対象のデータベースに接続(-d <データベース名>にてデータベースを指定)
image.png

接続コマンド例
sqlcmd -S -U <ログイン名> -P <パスワード> -d <データベース名>

おわりに

参考情報:追加のログインと管理アクセス許可を持つユーザーを作成する
参考情報:CREATE LOGIN (Transact-SQL)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0