共用方式為


sys.database_mirroring (Transact-SQL)

針對 SQL Server 的執行個體中每個資料庫,各包含一個資料列。如果資料庫不是 ONLINE,或尚未啟用資料庫鏡像,除了 database_id,所有資料行的值都是 NULL。

若要查看 master 或 tempdb 以外的資料庫之資料列,您必須是資料庫擁有者,或至少有 master 資料庫中之 ALTER ANY DATABASE 或 VIEW ANY DATABASE 伺服器層級權限,或 CREATE DATABASE 權限。若要查看鏡像資料庫上的非 NULL 值,您必須是 sysadmin 固定伺服器角色的成員。

[!附註]

如果資料庫未參與鏡像,前置詞為 "mirroring_" 的所有資料行都是 NULL。

資料行名稱

資料類型

描述

database_id

int

資料庫的識別碼。在 SQL Server 的執行個體內,這是唯一的。

mirroring_guid

uniqueidentifier

鏡像合作關係的識別碼。

NULL= 資料庫無法存取或未鏡像。

附註附註
如果資料庫未參與鏡像,前置詞為 "mirroring_" 的所有資料行都是 NULL。

mirroring_state

tinyint

鏡像資料庫或資料庫鏡像工作階段的狀態。

0 = 已暫停

1 = 與其他夥伴中斷連接

2 = 正在同步處理

3 = 暫止容錯移轉

4 = 已同步處理

5 = 夥伴不同步。現在不可能進行容錯移轉。

6 = 夥伴已同步。現在可能可以進行容錯移轉。如需有關容錯移轉之需求的詳細資訊,請參閱<同步資料庫鏡像 (高安全性模式)>。

NULL= 資料庫無法存取或未鏡像。

mirroring_state_desc

nvarchar(60)

這是鏡像資料庫或資料庫鏡像工作階段之狀態的描述,它有下列幾種:

DISCONNECTED

SYNCHRONIZED

SYNCHRONIZING

PENDING_FAILOVER

SUSPENDED

UNSYNCHRONIZED

SYNCHRONIZED

NULL

如需詳細資訊,請參閱<鏡像狀態>。

mirroring_role

tinyint

本機資料庫在資料庫鏡像工作階段中目前所扮演的角色。

1 = 主體

2 = 鏡像

NULL= 資料庫無法存取或未鏡像。

mirroring_role_desc

nvarchar(60)

這是本機資料庫在鏡像中所扮演之角色的描述,它有下列幾種:

PRINCIPAL

MIRROR

mirroring_role_sequence

int

鏡像夥伴因容錯移轉或強制服務而切換主體和鏡像角色的次數。

NULL= 資料庫無法存取或未鏡像。

mirroring_safety_level

tinyint

鏡像資料庫的更新安全設定:

0 = 未知狀態

1 = 關閉 [非同步]

2 = 完整 [同步]

NULL= 資料庫無法存取或未鏡像。

mirroring_safety_level_desc

nvarchar(60)

這是鏡像資料庫的更新交易安全設定,它有下列幾種:

UNKNOWN

OFF

FULL

NULL

mirroring_safety_sequence

int

將變更的序號更新為交易安全層級。

NULL= 資料庫無法存取或未鏡像。

mirroring_partner_name

nvarchar(128)

資料庫鏡像夥伴的伺服器名稱。

NULL= 資料庫無法存取或未鏡像。

mirroring_partner_instance

nvarchar(128)

其他夥伴的執行個體名稱和電腦名稱。如果夥伴變成主體伺服器,用戶端就需要這項資訊,才能連接到這個夥伴。

NULL= 資料庫無法存取或未鏡像。

mirroring_witness_name

nvarchar(128)

資料庫鏡像見證的伺服器名稱。

NULL= 沒有見證存在。

mirroring_witness_state

tinyint

這是資料庫的資料庫鏡像工作階段中之見證的狀態,它有下列幾種:

0 = 未知

1 = 已連接

2 = 已中斷連接

NULL= 無見證存在、資料庫不在線上或資料庫未鏡像。

mirroring_witness_state_desc

nvarchar(60)

這是狀態的描述,它有下列幾種:

UNKNOWN

CONNECTED

DISCONNECTED

NULL

mirroring_failover_lsn

numeric(25,0)

保證寫入雙方磁碟的最新交易記錄的記錄序號 (LSN)。在容錯移轉之後,夥伴會使用 mirroring_failover_lsn 做為重新調整點,新鏡像伺服器從此處開始同步處理新鏡像資料庫與新主體資料庫。

mirroring_connection_timeout

int

鏡像連接逾時 (以秒為單位)。這是等待夥伴或見證回應的秒數,過了這段時間,便將它們視為無法使用。預設的逾時值是 10 秒。

NULL= 資料庫無法存取或未鏡像。

mirroring_redo_queue

int

在鏡像中重做的最大記錄量。如果 mirroring_redo_queue_type 設為 UNLIMITED (預設值),這個資料行就是 NULL。如果資料庫不在線上,這個資料行也是 NULL。

否則,這個資料行會包含最大記錄量 (以 MB 為單位)。當到達最大值時,會在主體上暫停記錄,等鏡像伺服器趕上。這項功能會限制容錯移轉的時間。

如需詳細資訊,請參閱<預估角色切換期間的服務中斷時間>。

mirroring_redo_queue_type

nvarchar(60)

UNLIMITED 表示鏡像不會抑制重做佇列。這是預設值。

重做佇列的大小上限以 MB 表示。請注意,如果佇列大小指定為 KB 或 GB,Database Engine 會將這個值轉換成 MB。

如果資料庫不在線上,這個資料行就是 NULL。

權限

在 SQL Server 2005 和更新的版本中,目錄檢視內中繼資料的可見性會限制在使用者所擁有的安全性實體,或已授與使用者某些權限的安全性實體。如需詳細資訊,請參閱<中繼資料可見性組態>。