希望对大家有帮助
  后附上镜像相关脚本
--=================================
--拆除镜像
SELECT  DB_NAME([database_id]) as 'dbname',* FROM sys.[database_mirroring]
GO
ALTER DATABASE [test] SET PARTNER OFF
ALTER DATABASE [test] SET WITNESS OFF
--=================================
--恢复镜像
USE [master]
GO
ALTER DATABASE [Demo1] SET PARTNER RESUME
GO
--=================================
--挂起镜像
USE [master]
GO
ALTER DATABASE [Demo1] SET PARTNER SUSPEND
GO
--===================================================
--未发送的日志和未重做的日志情况
WITH tmp AS(
SELECT
DB_NAME(Database_id) AS DatabaseName,
ROW_NUMBER()OVER(PARTITION BY Database_id ORDER BY local_time DESC) AS RID,
*
FROM msdb.dbo.dbm_monitor_data
)
SELECT *  FROM tmp
WHERE RID=1
--看一下redo_queue 和send_queue
--=================================
--删除镜像
USE [master]
GO
ALTER DATABASE [Demo1] SET PARTNER OFF
GO
--=================================
--移除见证服务器
USE [master]
GO
ALTER DATABASE [Demo1] SET WITNESS OFF
GO
--=================================
--修改为高性能模式
USE [master]
GO
ALTER DATABASE [Demo1] SET PARTNER SAFETY OFF
GO
--=================================
--修改为高安全模式
USE [master]
GO
ALTER DATABASE [Demo1] SET PARTNER SAFETY FULL
GO
--=================================
--在高安全下手动转移镜像(在主服务器上)
USE [master]
GO
ALTER DATABASE [Demo1] SET PARTNER FAILOVER
GO
--=================================
--在高性能下手动转移镜像(在从服务器上),此时主服务器已停止
--同样适用高安全
USE [master]
GO
ALTER DATABASE [Demo1] SET PARTNER FORCE_SERVICE_ALLOW_DATA_LOSS
GO
--=================================
--在镜像被挂起后恢复镜像回话
--如镜像服务器停止后又重启时,主体服务器会被挂起,使用以下SQL来恢复镜像
USE [master]
GO
ALTER DATABASE [Demo1] SET PARTNER RESUME
GO
--=================================
--将数据库从还原状态转化成正常模式
USE [master]
GO
RESTORE DATABASE [Demo1] WITH RECOVERY
GO
--=================================
--修改为高安全模式
USE [master]
GO
ALTER DATABASE [Demo1] SET PARTNER SAFETY FULL
GO
--=================================
--在高性能下手动转移镜像(在从服务器上),此时主服务器已停止
--同样适用高安全
USE [master]
GO
ALTER DATABASE [Demo1] SET PARTNER FORCE_SERVICE_ALLOW_DATA_LOSS
GO