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

Onde executar o comando

comando para conceder

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

Banco de dados mestre

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

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

  • sp_tables
  • sp_columns_100
  • sp_pkeys
  • sp_statistics_100

Banco de dados mestre

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

SELECT nos esquemas e tabelas que você deseja ingerir.

Banco de dados 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>;

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

Banco de dados que você deseja ingerir

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 SQL do Azure

Privilégios

Onde executar o comando

Comandos

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

Banco de dados que você deseja ingerir

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

Azure SQL gerenciar Instância

Privilégios

Onde executar o comando

Comandos

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

Banco de dados que você deseja ingerir

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

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

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

Banco de dados mestre

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

Execute permissões nos seguintes procedimentos armazenados no sistema:

  • sp_tables
  • sp_columns_100
  • sp_pkeys
  • sp_statistics_100

Banco de dados mestre

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

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 .