NOTE 7 for Mirroring

官方非常详细

http://technet.microsoft.com/library/Cc917680

有些问题还是要值得思考的,比方mirroring 要求

Some important items to note about database mirroring:

  • The principal database must be in the FULL recovery model. Log records that result from bulk-logged operations cannot be sent to the mirror database.

  • The mirror database must be initialized from a restore of the principal database with NORECOVERY, followed by restores in sequence of principal transaction log backups.

  • The mirror database must have the same name as the principal database.

  • Because the mirror database is in a recovering state, it cannot be accessed directly. You can create database snapshots on the mirror to indirectly read the mirror database at a point in time. (See 'Database Mirroring and Database Snapshots' later in this paper.)

看看recovery和norecovery的选项,从下面可以看到关键就是最后一个备份的,最后事务的提交,数据库可用还是不可用,mirroring机制多少也能想一点出来

在执行还原数据库的操作时,常用的选项包括RECOVERY和NORECOVERY。也就是说,在执行还原操作时,必须指定这两个选项中的一个。RECOVERY选项是默认的选项。

在执行最后一次事务日志还原操作或完全数据库还原操作之后,可以使用RECOVERY选项,这时数据库还原到正常的状态:

SQL Server系统取消事务日志中所有未完成的事务,提交所有已经完成的事务。

数据库可以使用。

如果有多个备份内容需要还原时,那么需要使用NORECOVERY选项。当使用NORECOVERY选项时,应该考虑下面一些因素:

除了最后一个将要还原的备份,前面的所有还原操作都使用NORECOVERY选项。

SQL Server系统既不取消未完成的事务,也不提交已经完成的事务。

这时的数据库是不可使用的。

Transaction Safety 选项也很容易理解,更2pl协议性质差不多,是异步还是同步,同步两边日志都要应用完,异步的话要求就没这么高

你可能感兴趣的:(NOTE 7 for Mirroring)