Pular para o conteúdo principal

Requisitos de usuário do banco de dados Microsoft SQL Server

Este artigo descreve os privilégios que devem ser concedidos ao usuário do banco de dados Microsoft SQL Server que o senhor planeja usar para fazer o ingesting em Databricks.

A Databricks recomenda que o senhor crie um usuário de banco de dados que seja usado exclusivamente para a ingestão da Databricks.

Conceder privilégios de banco de dados

As tabelas nesta seção listam os privilégios que o usuário do banco de dados deve ter, dependendo da variação do banco de dados. Esses privilégios são necessários se o senhor usar a captura de dados de alterações (CDC) (CDC) ou alterar o acompanhamento. As tabelas também mostram o comando para conceder cada privilégio.

Bancos de dados não Azure

Privilégios necessários

comando para conceder

Onde executar o comando

Acesso de leitura às seguintes tabelas do sistema e visualização no banco de dados mestre:

  • 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

Execute o seguinte comando T-SQL no banco de dados mestre:

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>;

Banco de dados mestre

Execute permissões nos seguintes procedimentos armazenados pelo sistema no banco de dados mestre:

  • sp_tables
  • sp_columns_100
  • sp_pkeys
  • sp_statistics_100

Execute o seguinte comando T-SQL no banco de dados que o senhor deseja ingerir:

SQL
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>;

Banco de dados mestre

SELECT nos esquemas e tabelas que você deseja ingerir.

Execute o seguinte comando T-SQL para cada esquema e tabela que o senhor deseja ingerir:

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

Banco de dados que você deseja ingerir

SELECT privilégios nas seguintes tabelas e visualizações do sistema no banco de dados que o senhor deseja ingerir:

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

Execute o seguinte comando T-SQL no banco de dados que o senhor deseja ingerir:

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>;

Banco de dados que você deseja ingerir

Banco de dados SQL do Azure

Privilégios

Comandos

Onde executar o comando

Acesso de leitura às seguintes tabelas do sistema e visualização no banco de dados que o senhor deseja ingerir:

  • sys.schemas
  • sys.tables
  • sys.columns
  • sys.key_constraints
  • sys.foreign_keys
  • sys.check_constraints
  • sys.default_constraints
  • sys.change_tracking_tables
  • sys.objects
  • sys.triggers
  • sys.indexes
  • sys.index_columns
  • sys.fulltext_index_columns
  • sys.fulltext_indexes

Execute o seguinte comando T-SQL no banco de dados que o senhor deseja ingerir:

SQL
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.objects TO <database-user>;
GRANT SELECT ON object::sys.triggers TO <database-user>;
GRANT SELECT ON object::sys.indexes TO <database-user>;
GRANT SELECT ON object::sys.index_columns TO <database-user>;
GRANT SELECT ON object::sys.fulltext_index_columns TO <database-user>;
GRANT SELECT ON object::sys.fulltext_indexes TO <database-user>;
GRANT SELECT ON schema::<schema-name> TO <database-user>;
GRANT SELECT ON object::<table-name> TO <database-user>;

Banco de dados que você deseja ingerir

Azure SQL gerenciar Instância

Privilégios

Comandos

Onde executar o comando

Acesso de leitura às seguintes tabelas do sistema e visualização no banco de dados que o senhor deseja ingerir:

  • sys.schemas
  • sys.tables
  • sys.columns
  • sys.key_constraints
  • sys.foreign_keys
  • sys.check_constraints
  • sys.default_constraints
  • sys.change_tracking_tables
  • sys.objects
  • sys.triggers
  • sys.indexes
  • sys.index_columns
  • sys.fulltext_index_columns
  • sys.fulltext_indexes

Execute o seguinte comando T-SQL no banco de dados que o senhor deseja ingerir:

SQL
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.objects TO <database-user>;
GRANT SELECT ON object::sys.triggers TO <database-user>;
GRANT SELECT ON object::sys.indexes TO <database-user>;
GRANT SELECT ON object::sys.index_columns TO <database-user>;
GRANT SELECT ON object::sys.fulltext_index_columns TO <database-user>;
GRANT SELECT ON object::sys.fulltext_indexes TO <database-user>;
GRANT SELECT ON schema::<schema-name> TO <database-user>;
GRANT SELECT ON object::<table-name> TO <database-user>;

Banco de dados que você deseja ingerir

acesso de visualização e leitura aos bancos de dados:

  • VIEW ANY DATABASE
  • sys.databases
  • sys.change_tracking_databases

Execute o seguinte comando T-SQL no banco de dados mestre:

SQL
GRANT VIEW ANY DATABASE TO <database-user>;
GRANT SELECT ON sys.databases TO <database-user>;
GRANT SELECT ON object::sys.change_tracking_databases TO <database-user>;

Banco de dados mestre

Execute permissões nos seguintes procedimentos armazenados no sistema:

  • sp_tables
  • sp_columns_100
  • sp_pkeys
  • sp_statistics_100

Execute o seguinte comando T-SQL no banco de dados mestre:

SQL
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>;

Banco de dados mestre

captura de dados de alterações (CDC) (CDC) requisitos de privilégio

Se o CDC estiver ativado, serão necessários privilégios adicionais nos objetos de suporte DDL. Consulte Habilitar integrado CDC em Microsoft SQL Server .

Alterar os requisitos de privilégio de acompanhamento

Se o acompanhamento de alterações estiver ativado, serão necessários privilégios adicionais nos objetos de suporte DDL. Consulte Habilitar acompanhamento de mudanças em Microsoft SQL Server .