Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Erfahren Sie, welche Berechtigungen dem Microsoft SQL Server-Datenbankbenutzer gewährt werden sollen, den Sie für die Aufnahme in Azure Databricks verwenden möchten.
Databricks empfiehlt, einen Datenbankbenutzer zu erstellen, der ausschließlich für die Erfassung von Databricks verwendet wird.
Gewähren von Datenbankberechtigungen
Die Tabellen in diesem Abschnitt enthalten die Berechtigungen, über die der Datenbankbenutzer je nach Datenbankvariation verfügen muss. Diese Berechtigungen sind erforderlich, unabhängig davon, ob Sie die Änderungsdatenerfassung (Change Data Capture, CDC) oder die Änderungsnachverfolgung verwenden. In den Tabellen werden auch die Befehle zum Erteilen der einzelnen Berechtigungen angezeigt.
Nicht-Azure-Datenbanken
| Erforderliche Berechtigungen | Wo die Befehle ausgeführt werden sollen | Befehle zur Zuweisung |
|---|---|---|
VIEW ANY DATABASE |
Masterdatenbank | Führen Sie den folgenden T-SQL-Befehl in der Masterdatenbank aus:GRANT VIEW ANY DATABASE TO DATABASE_USER; |
Lesezugriff auf die folgenden Systemtabellen und -ansichten in der Masterdatenbank:
|
Masterdatenbank | Führen Sie die folgenden T-SQL-Befehle in der Masterdatenbank aus: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;GRANT SELECT ON object::sys.triggers TO DATABASE_USER; |
Führen Sie Berechtigungen für die folgenden gespeicherten Systemprozeduren in der Masterdatenbank aus:
|
Masterdatenbank | Führen Sie die folgenden T-SQL-Befehle in der Datenbank aus, die Sie aufnehmen möchten: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; |
VIEW DATABASE STATE |
Datenbank, die Sie importieren möchten | Führen Sie den folgenden T-SQL-Befehl für die Datenbank aus, die Sie aufnehmen möchten:USE DATABASE_NAME;GRANT VIEW DATABASE STATE TO DATABASE_USER;In SQL Server 2022 und höher können Sie stattdessen die eingeschränkte VIEW DATABASE PERFORMANCE STATE-Berechtigung verwenden:USE DATABASE_NAME;GRANT VIEW DATABASE PERFORMANCE STATE TO DATABASE_USER; |
SELECT-Berechtigung für die Schemas und Tabellen, die Sie erfassen möchten. |
Datenbank, die Sie importieren möchten | Führen Sie die folgenden T-SQL-Befehle für jedes Schema und jede Tabelle aus, die Sie aufnehmen möchten:GRANT SELECT ON schema::SCHEMA_NAME TO DATABASE_USER;GRANT SELECT ON object::TABLE_NAME TO DATABASE_USER; |
SELECT Berechtigungen an den folgenden Systemtabellen und -ansichten in der Datenbank, die Sie einbinden möchten:
|
Datenbank, die Sie importieren möchten | Führen Sie die folgenden T-SQL-Befehle in der Datenbank aus, die Sie aufnehmen möchten: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-Datenbank
| Berechtigungen | Wo die Befehle ausgeführt werden sollen | Befehle |
|---|---|---|
Mitgliedschaft in der folgenden Serverrolle in der Masterdatenbank, damit der Benutzer auf master zugreifen kann:
|
Masterdatenbank | Führen Sie den folgenden T-SQL-Befehl in der Masterdatenbank aus:ALTER ROLE ##MS_DatabaseConnector## ADD MEMBER DATABASE_USER; |
Lesezugriff auf die folgenden Systemtabellen und Ansichten in der Datenbank, die Sie importieren möchten:
|
Datenbank, die Sie importieren möchten | Führen Sie die folgenden T-SQL-Befehle in der Datenbank aus, die Sie aufnehmen möchten: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; |
VIEW DATABASE STATE |
Datenbank, die Sie importieren möchten | Führen Sie den folgenden T-SQL-Befehl für die Datenbank aus, die Sie aufnehmen möchten:GRANT VIEW DATABASE STATE TO DATABASE_USER;In SQL Server 2022 und höher können Sie stattdessen die eingeschränkte VIEW DATABASE PERFORMANCE STATE-Berechtigung verwenden:GRANT VIEW DATABASE PERFORMANCE STATE TO DATABASE_USER; |
Verwaltete Azure SQL-Instanz
| Berechtigungen | Wo die Befehle ausgeführt werden sollen | Befehle |
|---|---|---|
Lesezugriff auf die folgenden Systemtabellen und Ansichten in der Datenbank, die Sie importieren möchten:
|
Datenbank, die Sie importieren möchten | Führen Sie die folgenden T-SQL-Befehle in der Datenbank aus, die Sie aufnehmen möchten: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; |
Ansehen und Lesen von Datenbankinhalten:
|
Masterdatenbank | Führen Sie die folgenden T-SQL-Befehle in der Masterdatenbank aus: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; |
Führen Sie Berechtigungen für die folgenden gespeicherten Systemprozeduren aus:
|
Masterdatenbank | Führen Sie die folgenden T-SQL-Befehle in der Masterdatenbank aus: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; |
VIEW DATABASE STATE |
Datenbank, die Sie importieren möchten | Führen Sie den folgenden T-SQL-Befehl für die Datenbank aus, die Sie aufnehmen möchten:USE DATABASE_NAME;GRANT VIEW DATABASE STATE TO DATABASE_USER;In SQL Server 2022 und höher können Sie stattdessen die eingeschränkte VIEW DATABASE PERFORMANCE STATE-Berechtigung verwenden:USE DATABASE_NAME;GRANT VIEW DATABASE PERFORMANCE STATE TO DATABASE_USER; |
Amazon RDS für SQL Server
Bei Amazon RDS für SQL Server sind Masterdatenbankzuschüsse nicht erforderlich. SQL Server Anmeldungen erhalten automatisch Zugriff auf die erforderlichen Systemansichten und gespeicherten Prozeduren im Master über die Rolle public. Sie können keine Benutzer in der master Datenbank auf Amazon RDS erstellen.
| Erforderliche Berechtigungen | Wo die Befehle ausgeführt werden sollen | Befehle zur Zuweisung |
|---|---|---|
SELECT Berechtigungen für die folgenden Systemsichten in der Datenbank, die Sie erfassen möchten:
|
Datenbank, die Sie importieren möchten | Führen Sie die folgenden T-SQL-Befehle in der Datenbank aus, die Sie aufnehmen möchten: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; |
SELECT-Berechtigung für die Schemas und Tabellen, die Sie erfassen möchten. |
Datenbank, die Sie importieren möchten | Führen Sie den folgenden T-SQL-Befehl für jedes Schema oder jede Tabelle aus, die Sie aufnehmen möchten:GRANT SELECT ON SCHEMA::SCHEMA_NAME TO DATABASE_USER;-- Or for individual tables:GRANT SELECT ON object::TABLE_NAME TO DATABASE_USER; |
Berechtigungsanforderungen für Change Data Capture (CDC)
Wenn CDC aktiviert ist, sind zusätzliche Berechtigungen für die DDL-Unterstützungsobjekte erforderlich. Weitere Informationen finden Sie unter Vorbereiten von SQL Server für die Aufnahme mithilfe des Skripts für Hilfsobjekte.
Note
Für die CDC-Einrichtung auf Amazon RDS muss der Benutzer, der das Setup-Skript des Hilfsprogramms ausführt, der RDS-Masterbenutzer sein, oder ihm muss vom Masterbenutzer EXECUTE auf msdb.dbo.rds_cdc_enable_db gewährt werden. Sie müssen den Benutzer zuerst in msdb erstellen, bevor Sie diese Berechtigung erteilen:
USE msdb;
CREATE USER SETUP_USER FOR LOGIN SETUP_USER;
GRANT EXECUTE ON dbo.rds_cdc_enable_db TO SETUP_USER;
GO
Diese zusätzliche Berechtigung ist für die Einrichtung der Änderungsnachverfolgung nicht erforderlich.
Anforderungen für die Berechtigung zur Änderungsnachverfolgung
Wenn die Änderungsnachverfolgung aktiviert ist, sind zusätzliche Berechtigungen für die DDL-Unterstützungsobjekte erforderlich. Weitere Informationen finden Sie unter Vorbereiten von SQL Server für die Aufnahme mithilfe des Skripts für Hilfsobjekte.