sys.databases (Transact-SQL)
適用於:sql Server Azure SQL 資料庫 Azure SQL 受控執行個體 azure Synapse Analytics Platform System (PDW) MICROSOFT Fabric 倉儲中的 MICROSOFT Fabric 倉儲中的 SQL Analytics 平台系統 (PDW) SQL 分析端點
針對 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 的 ALTER AUTHORIZATION 一節。 |
create_date | datetime | 建立或重新命名資料庫的日期。 針對 tempdb ,此值會在每次伺服器重新啟動時變更。 在 Azure SQL 資料庫 上執行重新命名作業時,create_date不會變更。 |
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為 ON 0 = AUTO_CLOSE為 OFF |
is_auto_shrink_on | bit | 1 = AUTO_SHRINK為 ON 0 = AUTO_SHRINK為 OFF |
state | tinyint | 值 0 = ONLINE 1 = 還原 2 = 復原 1 3 = RECOVERY_PENDING 1 4 = SUSPECT 5 = 緊急 1 6 = OFFLINE 1 7 = 複製 2 10 = 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) | 資料庫狀態的描述。 請參閱狀態。 |
is_in_standby | bit | 資料庫是還原記錄檔的唯讀。 |
is_cleanly_shutdown | bit | 1 = 資料庫完全關閉;啟動時不需要復原 0 = 資料庫未完全關閉;啟動時需要復原 |
is_supplemental_logging_enabled | bit | 1 = SUPPLEMENTAL_LOGGING為 ON 0 = 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為 ON 0 = 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為 ON 0 = AUTO_UPDATE_STATISTICS為 OFF |
is_auto_update_stats_async_on | bit | 1 = AUTO_UPDATE_STATISTICS_ASYNC為 ON 0 = AUTO_UPDATE_STATISTICS_ASYNC為 OFF |
is_ansi_null_default_on | bit | 1 = ANSI_NULL_DEFAULT為 ON 0 = ANSI_NULL_DEFAULT為 OFF |
is_ansi_nulls_on | bit | 1 = ANSI_NULLS為 ON 0 = ANSI_NULLS為 OFF |
is_ansi_padding_on | bit | 1 = ANSI_PADDING為 ON 0 = ANSI_PADDING為 OFF |
is_ansi_warnings_on | bit | 1 = ANSI_WARNINGS為 ON 0 = ANSI_WARNINGS為 OFF |
is_arithabort_on | bit | 1 = ARITHABORT 為 ON 0 = ARITHABORT 為 OFF |
is_concat_null_yields_null_on | bit | 1 = CONCAT_NULL_YIELDS_NULL為 ON 0 = CONCAT_NULL_YIELDS_NULL為 OFF |
is_numeric_roundabort_on | bit | 1 = NUMERIC_ROUNDABORT為 ON 0 = NUMERIC_ROUNDABORT為 OFF |
is_quoted_identifier_on | bit | 1 = QUOTED_IDENTIFIER為 ON 0 = QUOTED_IDENTIFIER為 OFF |
is_recursive_triggers_on | bit | 1 = RECURSIVE_TRIGGERS為 ON 0 = RECURSIVE_TRIGGERS為 OFF |
is_cursor_close_on_commit_on | bit | 1 = CURSOR_CLOSE_ON_COMMIT為 ON 0 = 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 = 跨資料庫擁有權鏈結為 ON 0 = 跨資料庫擁有權鏈結為 OFF |
is_parameterization_forced | bit | 1 = 參數化為 FORCED 0 = 參數化為 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 | 事務歷史記錄空間的重複使用目前正在等候最後一個檢查點的其中一個。 如需這些值的詳細說明,請參閱 事務歷史記錄。 值 0 = Nothing 1 = 檢查點 (當資料庫具有記憶體優化的數據檔案群組時,您應該會看到數據 log_reuse_wait 行指出 checkpoint 或 xtp_checkpoint ) 12 = 記錄備份 1 3 = 作用中備份或還原 1 4 = 使用中交易 1 5 = 資料庫鏡像 1 6 = 複寫 1 7 = 建立資料庫快照集 1 8 = 記錄掃描 9 = AlwaysOn 可用性群組次要複本將這個資料庫的事務歷史記錄記錄套用至對應的輔助資料庫。 2 9 = 其他 (暫時性) 3 10 = 僅供內部使用 2 11 = 僅供內部使用 2 12 = 僅供內部使用 2 13 = 最舊的第 2 頁 14 = 其他 2 16 = XTP_CHECKPOINT (當資料庫具有記憶體優化的數據檔群組時,您應該會看到數據 log_reuse_wait 行指示 checkpoint 或 xtp_checkpoint ) 417 = 使用加速資料庫復原時的 sLog 掃描 5 1 適用於: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 複寫 DATABASE_SNAPSHOT_CREATION LOG_SCAN AVAILABILITY_REPLICA OLDEST_PAGE XTP_CHECKPOINT SLOG_SCAN |
is_date_correlation_on | bit | 1 = DATE_CORRELATION_OPTIMIZATION為 ON 0 = DATE_CORRELATION_OPTIMIZATION為 OFF |
is_cdc_enabled | bit | 1 = 資料庫已啟用異動數據擷取。 如需詳細資訊,請參閱 sys.sp_cdc_enable_db (Transact-SQL) 。 |
is_encrypted | bit | 指出資料庫是否已加密(反映最後一次使用 ALTER DATABASE SET ENCRYPTION 子句設定的狀態)。 可以是下列值之一:1 = 已加密 0 = 未加密 如需資料庫加密的詳細資訊,請參閱透明數據加密(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為 ON 0 = 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 not 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 = DISABLED 1 = 允許 2 = 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_DEFAULT 2 = 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 = 已啟用 ADR 0 = 已停用 ADR 適用於:SQL Server 2019 (15.x) 和更新版本,以及 Azure SQL 資料庫 |
is_tempdb_spill_to_remote_store | bit | 指出是否 tempdb 啟用溢出至遠端存放區。1 = 已啟用 0 = 已停用 適用於:Azure Synapse Analytics Gen2。 當此功能推出至所有區域時,請檢查部署至實例的版本,以及最新的 Azure Synapse 版本資訊和 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 資料庫 |
權限
如果的呼叫端不是資料庫的擁有者 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;
相關內容
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應