sys.databases (Transact-SQL)
適用於:SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System (PDW) Microsoft Fabric 的 SQL 端點分析 Microsoft Fabric 的倉儲
針對 SQL Server 執行個體中的每個資料庫,各包含一個資料列。
如果資料庫不是 ONLINE
,或 AUTO_CLOSE
設定為 ON
且資料庫已關閉,則某些資料行的值可以是 NULL
。 如果資料庫是 OFFLINE
,則低許可權使用者看不到對應的數據列。 若要查看資料庫為 OFFLINE
的對應數據列,使用者至少 ALTER ANY DATABASE
必須具有伺服器層級許可權,或 CREATE DATABASE
資料庫中的許可權 master
。
資料行名稱 | 資料類型 | 描述 |
---|---|---|
name |
sysname | 資料庫名稱、SQL Server 實例內或 Azure SQL 資料庫 邏輯伺服器內的唯一名稱。 |
database_id |
int | 資料庫標識碼,在 SQL Server 實例內是唯一的。 在 Azure SQL 資料庫 中,這些值在邏輯伺服器內是唯一的,而且可以與數據行上的 database_id sys.database_service_objectives聯結,但不適用於數據行存在的其他系統檢視database_id 。 如需詳細資訊,請參閱 DB_ID。 |
source_database_id |
int | 非 NULL = 這個資料庫快照集源資料庫的識別碼。 NULL = 不是資料庫快照集。 |
owner_sid |
varbinary(85) | 已向伺服器註冊之資料庫外部擁有者的 SID (安全性識別符)。 如需誰可以擁有資料庫的資訊,請參閱 資料庫的 ALTER AUTHORIZATION。 |
create_date |
datetime | 建立或重新命名資料庫的日期。 針對 tempdb ,此值會在每次伺服器重新啟動時變更。 在 create_date Azure SQL 資料庫 上執行重新命名作業時,不會變更 。 |
compatibility_level |
tinyint | 對應至行為相容之 SQL Server 版本的整數。 70 - SQL Server 7.0 到 SQL Server 2008 (10.0.x) 80 - SQL Server 2000 (8.x) 到 SQL Server 2008 R2 (10.50.x) 90 - SQL Server 2008 (10.0.x) 到 SQL Server 2012 (11.x) 100 - SQL Server 2008 (10.0.x) 和更新版本,以及 Azure SQL 資料庫 110 - SQL Server 2012 (11.x) 和更新版本,以及 Azure SQL 資料庫 120 - SQL Server 2014 (12.x) 和更新版本,以及 Azure SQL 資料庫 130 - SQL Server 2016 (13.x) 和更新版本,以及 Azure SQL 資料庫 140 - SQL Server 2017 (14.x) 和更新版本,以及 Azure SQL 資料庫 150 - SQL Server 2019 (15.x) 和更新版本,以及 Azure SQL 資料庫 160 - SQL Server 2022 (16.x) 和更新版本,以及 Azure SQL 資料庫 |
collation_name |
sysname | 資料庫的定序。 做為資料庫中的預設定序。 NULL = 資料庫不在在線,或AUTO_CLOSE設為 ON 且資料庫已關閉。 |
user_access |
tinyint | 使用者存取設定:0 = MULTI_USER 指定1 = SINGLE_USER 指定2 = RESTRICTED_USER 指定 |
user_access_desc |
nvarchar(60) | 使用者存取設定的描述。 |
is_read_only |
bit | 1 = 資料庫為 READ_ONLY 0 = 資料庫為 READ_WRITE |
is_auto_close_on |
bit | 1 = AUTO_CLOSE 為 ON0 = AUTO_CLOSE 為 OFF |
is_auto_shrink_on |
bit | 1 = AUTO_SHRINK 為 ON0 = AUTO_SHRINK 為 OFF |
state |
tinyint | ReplTest10 = ONLINE 1 = RESTORING 2 = RECOVERING 13 = RECOVERY_PENDING 14 = SUSPECT 5 = EMERGENCY 16 = OFFLINE 17 = COPYING 210 = OFFLINE_SECONDARY 2注意:針對 AlwaysOn 資料庫,請查詢 database_state sys.dm_hadr_database_replica_states 的 或 database_state_desc 數據行。1 適用於:SQL Server 2008 (10.0.x) 和更新版本,以及 Azure SQL 資料庫 2 適用於:Azure SQL 資料庫 作用中異地復寫 |
state_desc |
nvarchar(60) | 資料庫狀態的描述。 請參閱 state 。 |
is_in_standby |
bit | 資料庫是還原記錄檔的唯讀。 |
is_cleanly_shutdown |
bit | 1 = 資料庫完全關閉;啟動時不需要復原0 = 資料庫未完全關閉;啟動時需要復原 |
is_supplemental_logging_enabled |
bit | 1 = SUPPLEMENTAL_LOGGING 為 ON0 = SUPPLEMENTAL_LOGGING 為 OFF |
snapshot_isolation_state |
tinyint | 允許快照隔離交易的狀態,如 選項所 ALLOW_SNAPSHOT_ISOLATION 設定:0 = 快照隔離狀態為 OFF (預設值)。 不允許快照集隔離。1 = 快照集隔離狀態開啟。 允許快照集隔離。2 = 快照隔離狀態正在轉換為 OFF 狀態。 所有交易都有其修改版本。 無法使用快照集隔離來啟動新的交易。 資料庫會維持在轉換至 OFF 狀態,直到執行時 ALTER DATABASE 處於作用中狀態的所有交易都可以完成為止。3 = 快照隔離狀態正在轉換為 ON 狀態。 新交易已修改版本。 交易在快照隔離狀態變成 1 (ON) 之前,無法使用快照集隔離。 資料庫會維持在轉換為 ON 狀態,直到執行時 ALTER DATABASE 處於作用中狀態的所有更新交易都可以完成為止。 |
snapshot_isolation_state_desc |
nvarchar(60) | 描述允許的快照隔離交易狀態,如 選項所 ALLOW_SNAPSHOT_ISOLATION 設定。 |
is_read_committed_snapshot_on |
bit | 1 = READ_COMMITTED_SNAPSHOT 選項為 ON。 讀取認可隔離等級下的讀取作業是以快照集掃描為基礎,而且不會取得鎖定。0 = READ_COMMITTED_SNAPSHOT 選項為 OFF (預設值)。 讀取認可隔離等級下的讀取作業會使用共享鎖定。 |
recovery_model |
tinyint | 選取的復原模式:1 = FULL 2 = BULK_LOGGED 3 = SIMPLE |
recovery_model_desc |
nvarchar(60) | 選取的恢復模式描述。 |
page_verify_option |
tinyint | 選項的 PAGE_VERIFY 設定:0 = NONE 1 = TORN_PAGE_DETECTION 2 = CHECKSUM |
page_verify_option_desc |
nvarchar(60) | 選項設定的描述 PAGE_VERIFY 。 |
is_auto_create_stats_on |
bit | 1 = AUTO_CREATE_STATISTICS 為 ON0 = AUTO_CREATE_STATISTICS 為 OFF |
is_auto_create_stats_incremental_on |
bit | 表示自動統計數據之累加選項的預設設定。0 = 自動建立統計數據為非累加式1 = 如果可能的話,自動建立統計數據是累加的適用於:SQL Server 2014 (12.x) 和更新版本。 |
is_auto_update_stats_on |
bit | 1 = AUTO_UPDATE_STATISTICS 為 ON0 = AUTO_UPDATE_STATISTICS 為 OFF |
is_auto_update_stats_async_on |
bit | 1 = AUTO_UPDATE_STATISTICS_ASYNC 為 ON0 = AUTO_UPDATE_STATISTICS_ASYNC 為 OFF |
is_ansi_null_default_on |
bit | 1 = ANSI_NULL_DEFAULT 為 ON0 = ANSI_NULL_DEFAULT 為 OFF |
is_ansi_nulls_on |
bit | 1 = ANSI_NULLS 為 ON0 = ANSI_NULLS 為 OFF |
is_ansi_padding_on |
bit | 1 = ANSI_PADDING 為 ON0 = ANSI_PADDING 為 OFF |
is_ansi_warnings_on |
bit | 1 = ANSI_WARNINGS 為 ON0 = ANSI_WARNINGS 為 OFF |
is_arithabort_on |
bit | 1 = ARITHABORT 為 ON0 = ARITHABORT 為 OFF |
is_concat_null_yields_null_on |
bit | 1 = CONCAT_NULL_YIELDS_NULL 為 ON0 = CONCAT_NULL_YIELDS_NULL 為 OFF |
is_numeric_roundabort_on |
bit | 1 = NUMERIC_ROUNDABORT 為 ON0 = NUMERIC_ROUNDABORT 為 OFF |
is_quoted_identifier_on |
bit | 1 = QUOTED_IDENTIFIER 為 ON0 = QUOTED_IDENTIFIER 為 OFF |
is_recursive_triggers_on |
bit | 1 = RECURSIVE_TRIGGERS 為 ON0 = RECURSIVE_TRIGGERS 為 OFF |
is_cursor_close_on_commit_on |
bit | 1 = CURSOR_CLOSE_ON_COMMIT 為 ON0 = CURSOR_CLOSE_ON_COMMIT 為 OFF |
is_local_cursor_default |
bit | 1 = CURSOR_DEFAULT 是本機0 = CURSOR_DEFAULT 是全域 |
is_fulltext_enabled |
bit | 1 = 資料庫已啟用全文檢索0 = 資料庫已停用全文檢索 |
is_trustworthy_on |
bit | 1 = 資料庫已標示為可信任0 = 資料庫尚未標示為可信任根據預設,還原或附加的資料庫未啟用可信任。 |
is_db_chaining_on |
bit | 1 = 跨資料庫擁有權鏈結為 ON0 = 跨資料庫擁有權鏈結為 OFF |
is_parameterization_forced |
bit | 1 = 參數化為 FORCED0 = 參數化為 SIMPLE |
is_master_key_encrypted_by_server |
bit | 1 = 資料庫具有加密的主要金鑰0 = 資料庫沒有加密的主要金鑰 |
is_query_store_on |
bit | 1 = 此資料庫已啟用查詢存放區。 檢查 sys.database_query_store_options 以檢視查詢存放區狀態。0 = 查詢存放區未啟用適用於:SQL Server 2016 (13.x) 和更新版本。 |
is_published |
bit | 1 = 資料庫是交易式或快照式複寫拓撲中的發行集資料庫0 = 不是發行集資料庫 |
is_subscribed |
bit | 未使用此資料行。 不論資料庫的訂閱者狀態為何,它一律都會傳回 0 。 |
is_merge_published |
bit | 1 = 資料庫是合併式複寫拓撲中的發行集資料庫0 = 不是合併式複寫拓撲中的發行集資料庫 |
is_distributor |
bit | 1 = 資料庫是復寫拓撲的散發資料庫0 = 不是復寫拓撲的散發資料庫 |
is_sync_with_backup |
bit | 1 = 資料庫已標示為使用備份進行復寫同步處理0 = 未標示為使用備份進行復寫同步處理 |
service_broker_guid |
uniqueidentifier | 這個資料庫的 Service Broker 識別符。 做為 broker_instance 路由表格中目標的 。 |
is_broker_enabled |
bit | 1 = 此資料庫中的訊息代理程式目前正在傳送和接收訊息。0 = 所有傳送的訊息都會保留在傳輸佇列上,而接收的訊息將不會放在此資料庫中的佇列上。根據預設,還原或附加的資料庫已停用訊息代理程式。 例外狀況是故障轉移後啟用訊息代理程式的資料庫鏡像。 |
log_reuse_wait |
tinyint | 事務歷史記錄空間的重複使用目前正在等候最後一個檢查點的其中一個。 如需這些值的詳細說明,請參閱 事務歷史記錄。 ReplTest1 0 = Nothing1 = 檢查點 (當資料庫具有記憶體優化資料檔案群組時,您應該會看到資料 log_reuse_wait 行指出 checkpoint 或 xtp_checkpoint ) 12 = 記錄備份 13 = 作用中備份或還原 14 = 使用中交易 15 = 資料庫鏡像 16 = 複寫 17 = 資料庫快照集建立 18 = 記錄掃描9 = AlwaysOn 可用性群組次要複本將這個資料庫的事務歷史記錄記錄套用至對應的輔助資料庫。 29 = 其他 (暫時性) 310 = 僅供 內部使用 211 = 僅供 內部使用 212 = 僅供 內部使用 213 = 最舊的第 2 頁14 = 其他 216 = XTP_CHECKPOINT (當資料庫具有記憶體優化數據檔案群組時,您應該會看到數據 log_reuse_wait 行指出 checkpoint 或 xtp_checkpoint ) 417 = 使用加速資料庫復原時的 sLog 掃描 51 適用於:SQL Server 2008 (10.0.x) 和更新版本 2 適用於:SQL Server 2012 (11.x) 和更新版本 3 適用於:SQL Server 2008 R2 (10.50.x) 和舊版 4 適用於:SQL Server 2014 (12.x) 和更新版本 5 適用於:SQL Server 2019 (15.x) 和更新版本 |
log_reuse_wait_desc |
nvarchar(60) | 事務歷史記錄空間的重複使用描述目前正在等候最後一個檢查點。 可能的值:NOTHING CHECKPOINT LOG_BACKUP ACTIVE_BACKUP_OR_RESTORE ACTIVE_TRANSACTION DATABASE_MIRRORING REPLICATION DATABASE_SNAPSHOT_CREATION LOG_SCAN AVAILABILITY_REPLICA OLDEST_PAGE XTP_CHECKPOINT SLOG_SCAN |
is_date_correlation_on |
bit | 1 = DATE_CORRELATION_OPTIMIZATION 為 ON0 = DATE_CORRELATION_OPTIMIZATION 為 OFF |
is_cdc_enabled |
bit | 1 = 資料庫已啟用異動數據擷取。 如需詳細資訊,請參閱 sys.sp_cdc_enable_db (Transact-SQL) 。 |
is_encrypted |
bit | 指出資料庫是否已加密(反映最後一次使用 ALTER DATABASE SET ENCRYPTION 子句設定的狀態)。 可以是下列值之一:1 = Encrypted0 = 未加密如需資料庫加密的詳細資訊,請參閱透明數據加密(TDE)。 如果資料庫正在進行解密, is_encrypted 則顯示的值 0 。 您可以使用sys.dm_database_encryption_keys動態管理檢視來查看加密程式的狀態。 |
is_honor_broker_priority_on |
bit | 指出資料庫是否接受交談優先順序(反映最後一次使用 ALTER DATABASE SET HONOR_BROKER_PRIORITY 子句設定的狀態)。 可以是下列值之一:1 = HONOR_BROKER_PRIORITY為 ON0 = HONOR_BROKER_PRIORITY為 OFF根據預設,還原或附加的資料庫會關閉訊息代理程序優先順序。 |
replica_id |
uniqueidentifier | 可用性群組之本機 Always On 可用性群組可用性複本的唯一標識碼,如果有的話,資料庫會參與其中。NULL = 資料庫不是可用性群組中可用性複本的一部分。適用於:SQL Server 2012 (11.x) 和更新版本,以及 Azure SQL 資料庫 |
group_database_id |
uniqueidentifier | Always On 可用性群組內資料庫的唯一標識碼,如果有的話,資料庫會參與其中。 group_database_id 在主要復本上,以及資料庫已加入可用性群組的每個次要複本上,這個資料庫都相同。NULL = 資料庫不是任何可用性群組中可用性複本的一部分。適用於:SQL Server 2012 (11.x) 和更新版本,以及 Azure SQL 資料庫 |
resource_pool_id |
int | 對應至此資料庫之資源集區的標識碼。 此資源集區可控制此資料庫中記憶體優化數據表可用的記憶體總計。 適用於:SQL Server 2014 (12.x) 和更新版本 |
default_language_lcid |
smallint | 表示自主資料庫預設語言的本機標識碼 (lcid )。注意: 作為 設定 預設語言 (伺服器組態選項) 的 sp_configure 函式。 這個值 NULL 適用於非自主資料庫。適用於:SQL Server 2012 (11.x) 和更新版本,以及 Azure SQL 資料庫 |
default_language_name |
nvarchar(128) | 表示自主資料庫的默認語言。 這個值 NULL 適用於非自主資料庫。適用於:SQL Server 2012 (11.x) 和更新版本,以及 Azure SQL 資料庫 |
default_fulltext_language_lcid |
int | 表示自主資料庫預設全文檢索語言的地區設定標識碼(lcid)。 注意: 作為預設 的 [設定預設全文檢索語言] (伺服器組態選項) 的 sp_configure 函式。 這個值 NULL 適用於非自主資料庫。適用於:SQL Server 2012 (11.x) 和更新版本,以及 Azure SQL 資料庫 |
default_fulltext_language_name |
nvarchar(128) | 表示自主資料庫的預設全文檢索語言。 這個值 NULL 適用於非自主資料庫。適用於:SQL Server 2012 (11.x) 和更新版本,以及 Azure SQL 資料庫 |
is_nested_triggers_on |
bit | 指出自主資料庫中是否允許巢狀觸發程式。0 = 不允許巢狀觸發程式1 = 允許巢狀觸發程式注意: 作為 的設定 巢狀觸發程式(伺服器組態選項) 的 sp_configure 函式。 這個值 NULL 適用於非自主資料庫。 如需詳細資訊,請參閱 sys.configurations (Transact-SQL) 。適用於:SQL Server 2012 (11.x) 和更新版本,以及 Azure SQL 資料庫 |
is_transform_noise_words_on |
bit | 指出是否應該在自主資料庫中轉換非搜尋字組。0 = 不應轉換非搜尋字組。1 = 應轉換非搜尋字組。注意:函式做為 轉換非搜尋字伺服器組態選項 sp_configure 。 這個值 NULL 適用於非自主資料庫。 如需詳細資訊,請參閱 sys.configurations (Transact-SQL) 。適用於:SQL Server 2012 (11.x) 和更新版本 |
two_digit_year_cutoff |
smallint | 表示介於 1753 到 9999 之間的數位值,表示將兩位數年份解譯為四位數年份的截止年份。 注意:作為 的設定兩位數年份截止功能(伺服器組態選項)。 sp_configure 這個值 NULL 適用於非自主資料庫。 如需詳細資訊,請參閱 sys.configurations (Transact-SQL) 。適用於:SQL Server 2012 (11.x) 和更新版本,以及 Azure SQL 資料庫 |
containment |
tinyint | 指示資料庫的內含項目狀態。 不可為 Null。0 = 資料庫內含項目已關閉。 適用於:SQL Server 2012 (11.x) 和更新版本,以及 Azure SQL 資料庫。1 = 資料庫在部分內含項目 適用於:SQL Server 2012 (11.x) 和更新版本 |
containment_desc |
nvarchar(60) | 指示資料庫的內含項目狀態。 不可為 Null。NONE = 舊版資料庫 (零內含專案)PARTIAL = 部分自主資料庫適用於:SQL Server 2012 (11.x) 和更新版本,以及 Azure SQL 資料庫 |
target_recovery_time_in_seconds |
int | 復原資料庫的估計時間,以秒為單位。 可為 Null。 適用於:SQL Server 2012 (11.x) 和更新版本,以及 Azure SQL 資料庫 |
delayed_durability |
int | 延遲持久性設定:0 = DISABLED1 = ALLOWED2 = FORCED如需詳細資訊,請參閱控制交易持久性。 適用於:SQL Server 2014 (12.x) 和更新版本,以及 Azure SQL 資料庫。 |
delayed_durability_desc |
nvarchar(60) | 延遲持久性設定:DISABLED ALLOWED FORCED 適用於:SQL Server 2014 (12.x) 和更新版本,以及 Azure SQL 資料庫。 |
is_memory_optimized_elevate_to_snapshot_on |
bit | 當會話設定 TRANSACTION ISOLATION LEVEL 設定為較低的隔離等級、READ COMMITTED 或 READ UNCOMMITTED 時,會使用 SNAPSHOT 隔離來存取記憶體優化數據表。1 = 最小隔離等級為 SNAPSHOT。0 = 隔離等級未提高。 |
is_federation_member |
bit | 指出資料庫是否為同盟的成員。 適用於:Azure SQL Database |
is_remote_data_archive_enabled |
bit | 指出資料庫是否延展。0 = 資料庫未啟用 Stretch。1 = 資料庫已啟用 Stretch 功能。適用於:SQL Server 2016 (13.x) 和更新版本 如需詳細資訊,請參閱 Stretch Database。 |
is_mixed_page_allocation_on |
bit | 指出資料庫中的數據表和索引是否可以從混合範圍配置初始頁面。0 = 資料庫中的數據表和索引一律會從統一範圍配置初始頁面。1 = 資料庫中的數據表和索引可以從混合範圍配置初始頁面。如需詳細資訊,請參閱 SET MIXED_PAGE_ALLOCATION ALTER DATABASE SET 選項 (Transact-SQL) 的選項。適用於:SQL Server 2016 (13.x) 和更新版本 |
is_temporal_history_retention_enabled |
bit | 指出是否啟用時態性保留原則清除工作。1 = 已啟用時態保留0 = 已停用時態保留適用於:SQL Server 2017 (14.x) 和更新版本,以及 Azure SQL 資料庫 |
catalog_collation_type |
int | 目錄定序設定:0 = DATABASE_DEFAULT2 = SQL_Latin_1_General_CP1_CI_AS 適用於:Azure SQL Database |
catalog_collation_type_desc |
nvarchar(60) | 目錄定序設定: COLLATE SQL_Latin_1_General_CP1_CI_AS 適用於:Azure SQL Database |
physical_database_name |
nvarchar(128) | 若為 SQL Server,則為資料庫的實體名稱。 若為 Azure SQL 資料庫,則為對應至用戶資料庫之目前實體資料庫的唯一標識符。 變更資料庫服務等級目標或還原資料庫會導致此值變更。 適用於:SQL Server 2019 (15.x) 和更新版本,以及 Azure SQL 資料庫 |
is_result_set_caching_on |
bit | 指出是否啟用結果集快取。1 = 已啟用結果集快取0 = 結果集快取已停用適用於:Azure Synapse Analytics Gen2。 當此功能推出至所有區域時,請檢查部署至實例的版本,以及最新的 Azure Synapse 版本資訊和 Gen2 升級排程,以取得功能可用性。 |
is_accelerated_database_recovery_on |
bit | 指出是否啟用加速資料庫復原 (ADR)。1 = 已啟用 ADR0 = ADR 已停用適用於:SQL Server 2019 (15.x) 和更新版本,以及 Azure SQL 資料庫 |
is_tempdb_spill_to_remote_store |
bit | 指出是否 tempdb 啟用溢出至遠端存放區。1 = 已啟用0 = 已停用適用於:Azure Synapse Analytics Gen2。 |
is_stale_page_detection_on |
bit | 指出是否啟用過時的頁面偵測。1 = 已啟用過時頁面偵測0 = 已停用過時的頁面偵測適用於:Azure Synapse Analytics Gen2。 當此功能推出至所有區域時,請檢查部署至實例的版本,以及最新的 Azure Synapse 版本資訊和 Gen2 升級排程,以取得功能可用性。 |
is_memory_optimized_enabled |
bit | 指出是否為資料庫啟用特定的記憶體內部功能,例如 混合式緩衝池。 不會反映記憶體內部 OLTP 概觀和使用案例的可用性或設定狀態。1 = 已啟用記憶體優化功能0 = 記憶體優化功能已停用適用於:SQL Server 2019 (15.x) 和更新版本,以及 Azure SQL 資料庫 |
is_data_retention_on |
bit | 指出是否為 Azure Edge 資料庫啟用數據保留。 適用於:Azure SQL Edge |
is_ledger_on |
bit | 指出 總賬資料庫,這是所有用戶數據表都是總賬數據表的資料庫(所有客戶資料庫都是竄改的)。 適用於:SQL Server 2022 (16.x) 和更新版本,以及 Azure SQL 資料庫 |
is_change_feed_enabled |
bit | 指出目前資料庫是否為 SQL 或 網狀架構鏡像資料庫的 Azure Synapse Link 啟用。 適用於:SQL Server 2022 (16.x) 和更新版本,以及 Azure SQL 資料庫 |
is_vorder_enabled |
bit | 指出是否 為每個倉儲啟用 V 訂單 。 適用於:僅限 Microsoft Fabric。 |
權限
如果的呼叫端不是資料庫的擁有者 sys.databases
,而且資料庫不是 master
或 tempdb
,則查看對應數據列所需的最小許可權為 ALTER ANY DATABASE
或 VIEW ANY DATABASE
伺服器層級許可權,或 CREATE DATABASE
資料庫中的許可權 master
。 呼叫端所連接的資料庫,永遠可以在 sys.databases
中進行檢視。
重要
根據預設,公用角色具有 VIEW ANY DATABASE
許可權,允許所有登入查看資料庫資訊。
若要封鎖登入,以偵測資料庫、 REVOKE
VIEW ANY DATABASE
來自 public
的許可權或DENY
VIEW ANY DATABASE
個別登入的許可權。
備註
在 Azure SQL 資料庫 此檢視可在資料庫和用戶資料庫中使用master
。 在 master
資料庫中,此檢視會傳回資料庫和伺服器上所有使用者資料庫的資訊 master
。 在使用者資料庫中,此檢視只會傳回目前資料庫和 master
資料庫的資訊。
由於可能的元數據同步處理,檢視 sys.databases
可能會提供資料庫加密的不正確資訊。 為了確保結果正確,建議您使用 sys.dm_database_encryption_keys 檢視來取得實際的加密狀態。
使用sys.databases
建立新資料庫之 Azure SQL 資料庫 伺服器資料庫中的檢視master
。 資料庫複製開始之後,您可以從目的地伺服器的資料庫查詢 sys.databases
和 sys.dm_database_copies
檢視 master
,以擷取複製進度的詳細資訊。
範例
A. 查詢檢視sys.databases
下列範例會傳回檢視中 sys.databases
可用的幾個數據行。
SELECT name, user_access_desc, is_read_only, state_desc, recovery_model_desc
FROM sys.databases;
B. 檢查 SQL 資料庫 中的複製狀態
下列範例會查詢 sys.databases
和 sys.dm_database_copies
檢視,以傳回資料庫複製作業的相關信息。
適用於:Azure SQL Database
-- Execute from the master database.
SELECT a.name, a.state_desc, b.start_date, b.modify_date, b.percent_complete
FROM sys.databases AS a
INNER JOIN sys.dm_database_copies AS b ON a.database_id = b.database_id
WHERE a.state = 7;
C. 在 SQL 資料庫 中檢查時態性保留原則狀態
下列範例會查詢 sys.databases
,以傳回是否啟用時態性保留清除工作的資訊。 還原作業之後,預設會停用暫時保留期。 使用 ALTER DATABASE
明確啟用它。
適用於:Azure SQL Database
-- Execute from the master database.
SELECT a.name, a.is_temporal_history_retention_enabled
FROM sys.databases AS a;