Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Découvrez quels privilèges accorder à l’utilisateur de base de données Microsoft SQL Server que vous envisagez d’utiliser pour l’ingestion dans Azure Databricks.
Databricks recommande de créer un utilisateur de base de données qui est exclusivement utilisé pour l'ingestion par Databricks.
Accorder des privilèges de base de données
Les tables de cette section répertorient les privilèges dont l’utilisateur de base de données doit disposer, en fonction de la variation de la base de données. Ces privilèges sont requis, que vous utilisiez la capture de données modifiées (CDC) ou le suivi des modifications. Les tables affichent également les commandes pour accorder chaque privilège.
Bases de données non-Azure
| Privilèges requis | Où exécuter les commandes | Commandes à accorder |
|---|---|---|
Accès en lecture aux tables et vues système suivantes dans la base de données principale :
|
Base de données master | Exécutez les commandes T-SQL suivantes dans la base de données master :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>; |
Exécutez des autorisations sur les procédures stockées système suivantes dans la base de données master :
|
Base de données master | Exécutez les commandes T-SQL suivantes dans la base de données que vous souhaitez ingérer :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 sur les schémas et les tables que vous souhaitez ingérer. |
Base de données que vous souhaitez ingérer | Exécutez la commande T-SQL suivante pour chaque schéma et table que vous souhaitez ingérer :GRANT SELECT ON object::<table-name\|schema-name> to <database-user>; |
SELECT privilèges sur les tables et vues de système suivantes dans la base de données que vous souhaitez importer :
|
Base de données que vous souhaitez ingérer | Exécutez les commandes T-SQL suivantes dans la base de données que vous souhaitez ingérer :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>; |
Azure SQL Database
| Privilèges | Où exécuter les commandes | Commandes |
|---|---|---|
Accès en lecture aux tables et vues système suivantes dans la base de données que vous souhaitez ingérer :
|
Base de données que vous souhaitez ingérer | Exécutez les commandes T-SQL suivantes sur la base de données que vous souhaitez ingérer :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 Managed Instance (Instance gérée Azure SQL)
| Privilèges | Où exécuter les commandes | Commandes |
|---|---|---|
Accès en lecture aux tables et vues système suivantes dans la base de données que vous souhaitez ingérer :
|
Base de données que vous souhaitez ingérer | Exécutez les commandes T-SQL suivantes sur la base de données que vous souhaitez ingérer :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>; |
Afficher et lire l’accès aux bases de données :
|
Base de données master | Exécutez les commandes T-SQL suivantes sur la base de données master :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>; |
Exécutez des autorisations sur les procédures stockées dans le système suivantes :
|
Base de données master | Exécutez les commandes T-SQL suivantes sur la base de données master :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>; |
Exigences relatives aux privilèges de capture des modifications de données (CDC)
Si CDC est activé, des privilèges supplémentaires sont requis sur les objets de support DDL. Consultez Préparer SQL Server pour l’ingestion à l’aide du script d’objets utilitaires.
Exigences relatives au privilège de suivi des modifications
Si le suivi des modifications est activé, des privilèges supplémentaires sont requis sur les objets de prise en charge DDL. Consultez Préparer SQL Server pour l’ingestion à l’aide du script d’objets utilitaires.