SQLServerからMashuへメタデータを同期するための設定手順と、必要なSQLServer側の権限について説明します
1. Mashuサーバーのセットアップ
SQL ServerからMashuへメタデータを取り込むためには、Mashuサーバーのセットアップが必要です。Mashuサーバーのセットアップ方法は https://services.robon.co.jp/ja/kb/mashu/server/mashu-server を参照してください。
2.メタデータソースの作成
SQL Serverのメタデータを同期するために、タイプとして「SQLServer」を選択してデータソースを作成します。。
3. SQL Serverへの接続情報設定
データソース画面の「接続設定」タブで、SQL Serverへの接続情報を設定します。
-
Host: MashuサーバーがSQL Serverへ接続するために使用する、SQL Serverのホスト名またはIPアドレスを指定します。
- (注意)Docker環境での実行について: MashuサーバーがSQL Serverと同じホストマシン上のDockerコンテナ内で動作している場合、ホスト名として
localhost
を使用すると接続できません。Dockerコンテナからホストマシン上のSQL Serverを参照できるように、ホストマシンのIPアドレスや、お使いのDockerネットワーク環境に応じた適切な接続情報を指定してください。
- (注意)Docker環境での実行について: MashuサーバーがSQL Serverと同じホストマシン上のDockerコンテナ内で動作している場合、ホスト名として
-
Port: SQL Serverのポート番号を指定します。このフィールドを空欄にした場合、SQL Serverのデフォルトポート番号である
1433
が使用されます。 -
User: SQL Server認証で使用するログイン名を指定します。このログインは、接続対象のデータベース内で特定のデータベースユーザーにマッピング(関連付け)されている必要があります。
-
Password: 上記のログイン名に対応するパスワードを指定します。
-
Database: メタデータを同期する対象となるSQL Serverデータベースの名前を指定します。
4. 必要なSQL Server権限
MashuがSQL Serverからメタデータを同期したり、データをプレビューしたりするためには、接続に使用するログインに紐づくデータベースユーザーに対して、適切な権限が付与されている必要があります。
4.1. メタデータ同期に必要な権限 (VIEW DEFINITION
)
メタデータを同期するには、SQL Serverデータベース内のオブジェクト定義情報(テーブル構造、ビュー定義など)を読み取るための VIEW DEFINITION
権限が必要です。この権限は、メタデータ同期処理で使用するデータベースユーザーに対して付与します。
必要な権限の範囲に応じて、以下のいずれかの方法で権限を付与してください。
-
4.1.1. 特定のスキーマのメタデータのみを同期する場合
指定したデータベース内の特定のスキーマのみを対象にメタデータを同期するには、そのスキーマに対する
VIEW DEFINITION
権限を該当のデータベースユーザーに付与する必要があります。GRANT VIEW DEFINITION ON SCHEMA::[対象のスキーマ名] TO [データベースユーザー名];
-
4.1.2. データベース内の全てのスキーマのメタデータを同期する場合
指定したデータベース内の全てのスキーマを対象にメタデータを同期するには、データベースレベルの
VIEW DEFINITION
権限を該当のデータベースユーザーに付与する必要があります。GRANT VIEW DEFINITION TO [データベースユーザー名];
4.2. データプレビューに必要な権限 (SELECT
)
テーブルやビューのデータ内容をプレビュー(表示・確認)するには、対象のオブジェクトに対する SELECT
権限が必要です。この権限は、データプレビュー機能を使用するデータベースユーザーに対して付与します。
必要な権限の範囲に応じて、以下のいずれかの方法で権限を付与してください。
-
4.2.1. 特定のスキーマ内のオブジェクトのデータをプレビューする場合
指定したデータベース内の特定のスキーマに属するテーブルやビューのデータをプレビューするには、そのスキーマに対する
SELECT
権限を該当のデータベースユーザーに付与する必要があります。GRANT SELECT ON SCHEMA::[対象のスキーマ名] TO [データベースユーザー名];
-
4.2.2. データベース内の広範なオブジェクトのデータをプレビューする場合
指定したデータベース内の(スキーマを問わず)多くのテーブルやビューのデータをプレビューする必要がある場合は、データベースレベルで
SELECT
権限を該当のデータベースユーザーに付与する方法があります。GRANT SELECT TO [データベースユーザー名];
5. 接続設定の保存とスキーマ選択
SQL Serverへの接続情報を入力後、「保存」ボタンをクリックします。SQL Serverへの接続に成功すると、メタデータを同期するスキーマを選択できるようになります。
同期したいメタデータが含まれるスキーマを選択してください。
6. メタデータの同期実行
スキーマ選択後、メタデータソース画面の「メタデータ」タブに移動し、「メタデータ同期」ボタンをクリックすることで、SQL Serverからのメタデータ同期が開始されます。