我想测量SQL Server切换服务器angular色所需的时间。 有没有办法知道多久才能成为主要的镜子,并准备好新的更新?
非常感谢你!
监视使用数据库镜像状态更改事件类的探查器基础结构。 StartTime将包含事件的时间,State将包含更改后的新状态。 我不确定我是否记得,如果状态改变发生在新的主体运行恢复之前,或者之后,你将不得不testing和看到。 从Nick的post来看,我想说的是,事件对你来说是完美的。
你有没有尝试查看你失败的服务器上的错误日志? 应该看到这样的东西:
2010-02-01 16:33:50.600,spid23s,Starting up database 'adventureworks'. 2010-02-01 16:33:54.240,spid23s,2 transactions rolled forward in database 'adventureworks' (8). This is an informational message only. No user action is required. 2010-02-01 16:33:54.330,spid28s,0 transactions rolled back in database 'adventureworks' (8). This is an informational message only. No user action is required. 2010-02-01 16:33:54.330,spid28s,Recovery is writing a checkpoint in database 'adventureworks' (8). This is an informational message only. No user action is required. 2010-02-01 16:33:55.220,spid12s,Database mirroring is active with database 'adventureworks' as the principal copy. This is an informational message only. No user action is required.
一个非常丑陋的暴力方法可能是一个小应用程序,每秒钟一次与主体连接。 如果使用明确的客户端redirect对其进行configuration,则可以指出故障转移的位置,并且可以成功连接到新的主体。
查找SqlConnection .Net类 – 成功连接的DataSource成员将为您提供连接到的服务器名称。
跟踪所涉及的时间是SMOC。
希望这可以帮助。