我有一个奇怪的场景,我的镜像数据库不能在一台服务器上访问,但它可以在另一台服务器上。 我已经尝试指定一个特定的SQLlogin来使它工作,但是当数据库在其他服务器上失败时,SQL不再能够使用这些凭证。 我也尝试使用集成安全性来使用域pipe理员帐户,我认为这两个服务器之间是一致的。 没有运气。 那么我能做些什么来弥补这个问题,并有办法让一个服务器实例从另一个服务器实例中获取安全帐户。 这两台服务器都位于受信任的域中。
SQL Server数据库镜像是数据库级别的高可用性机制。 除了正在镜像的数据库(例如存储在主服务器上的login名)之外,任何影响数据库的事情都需要在故障切换发生后或在定期维护期间定期(更理想地)手动传播到镜像。
如果login被复制,而且还遇到问题,则可能是在查看SID不匹配。 在这里看看更多的信息和解决scheme。
在任何镜像期间,只有委托人可用,镜像处于脱机状态。
在高可用性模式下,还有一个见证,这是自动故障转移所需的。 需要有两个节点来同意谁是主节点,以避免两个节点成为主节点。
您可以使用像这样的连接string自动连接到2个服务器的活动:
Data Source=myServerAddress;Failover Partner=myMirrorServerAddress;Initial Catalog=myDataBase;Integrated Security=True;