メインコンテンツまでスキップ

Microsoft SQL Server データベースのユーザー要件

備考

プレビュー

Microsoft SQL Server コネクタは パブリック プレビュー段階です。

この記事では、Databricks への取り込みに使用する予定の Microsoft SQL Server データベース ユーザーに付与する必要がある特権について説明します。

Databricks では、Databricks 取り込みにのみ使用されるデータベース ユーザーを作成することをお勧めします。

データベース権限の付与

次の表に、チェンジデータキャプチャ (CDC) を使用するか、変更追跡を使用するかに関係なく、データベース ユーザーが持つ必要がある特権を示します。 また、各権限を付与するコマンドも表示されます。

権限

コマンド

master データベース 内の次のシステムテーブルとビューへの読み取りアクセス。

  • sys.databases
  • sys.schemas
  • sys.tables
  • sys.columns
  • sys.key_constraints
  • sys.foreign_keys
  • sys.check_constraints
  • sys.default_constraints
  • sys.change_tracking_tables
  • sys.change_tracking_databases
  • sys.objects
  • sys.triggers

master データベースで次の T-SQL コマンドを実行します。

SQL
GRANT SELECT ON object::sys.databases to <database-user>;
GRANT SELECT ON object::sys.schemas to <database-user>;
GRANT SELECT ON object::sys.tables to <database-user>;
GRANT SELECT ON object::sys.columns to <database-user>;
GRANT SELECT ON object::sys.key_constraints to <database-user>;
GRANT SELECT ON object::sys.foreign_keys to <database-user>;
GRANT SELECT ON object::sys.check_constraints to <database-user>;
GRANT SELECT ON object::sys.default_constraints to <database-user>;
GRANT SELECT ON object::sys.change_tracking_tables to <database-user>;
GRANT SELECT ON object::sys.change_tracking_databases to <database-user>;
GRANT SELECT ON object::sys.objects to <database-user>;
GRANT SELECT ON object::sys.views to <database-user>;

取り込むデータベース 内の次のシステム・ストアド・プロシージャに対する権限を実行します。

  • sp_tables
  • sp_columns_100
  • sp_pkeys
  • sp_statistics_100

取り込むデータベースで次の T-SQL コマンドを実行します。

SQL
USE <database-name>
GRANT EXECUTE ON object::sp_tables to <database-user>;
GRANT EXECUTE ON object::sp_columns_100 to <database-user>;
GRANT EXECUTE ON object::sp_pkeys to <database-user>;
GRANT EXECUTE ON object::sp_statistics_100 to <database-user>;

SELECT 取り込むスキーマとテーブル。

取り込むスキーマとテーブルごとに、次の T-SQL コマンドを実行します。

SQL
GRANT SELECT ON object::<table-name|schema-name> to <database-user>;

SELECT 取り込むデータベース 内の次のシステムテーブルとビューに対する権限:

  • sys.indexes
  • sys.index_columns
  • sys.columns
  • sys.tables
  • sys.fulltext_index_columns
  • sys.fulltext_indexes

取り込むデータベースで次の T-SQL コマンドを実行します。

SQL
USE <database-name>
GRANT SELECT ON object::sys.indexes to <database-user>;
GRANT SELECT ON object::sys.index_columns to <database-user>;
GRANT SELECT ON object::sys.columns to <database-user>;
GRANT SELECT ON object::sys.tables to <database-user>;
GRANT SELECT ON object::sys.fulltext_index_columns to <database-user>;
GRANT SELECT ON object::sys.fulltext_indexes to <database-user>;

チェンジデータキャプチャ (CDC) 権限の要件

CDC が有効になっている場合は、DDL サポート オブジェクトに対する追加の特権が必要です。「 Microsoft SQL Server で組み込み CDC を有効にする」を参照してください。

変更追跡の権限要件

変更追跡が有効になっている場合は、DDL サポート オブジェクトに対する追加の特権が必要です。「 Microsoft SQL Server での変更追跡の有効化」を参照してください。