都配置成功了,如图:
出现如下错误,文本:
标题: 数据库属性
------------------------------开始镜像时出错。------------------------------
其他信息:更改 对于 数据库“Demo_Test”失败。 (Microsoft.SqlServer.Smo)有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=9.00.3042.00&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=更改+Database&LinkId=20476------------------------------执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)------------------------------没有为数据库镜像配置数据库 "Demo_Test"。 (Microsoft SQL Server,错误: 1416)有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=09.00.3042&EvtSrc=MSSQLServer&EvtID=1416&LinkId=20476------------------------------
按钮:确定
------------------------------出错图片:
出现如下错误,文本:
标题: 数据库属性
------------------------------开始镜像时出错。------------------------------
其他信息:更改 对于 数据库“Demo_Test”失败。 (Microsoft.SqlServer.Smo)有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=9.00.3042.00&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=更改+Database&LinkId=20476------------------------------执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)------------------------------没有为数据库镜像配置数据库 "Demo_Test"。 (Microsoft SQL Server,错误: 1416)有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=09.00.3042&EvtSrc=MSSQLServer&EvtID=1416&LinkId=20476------------------------------
按钮:确定
------------------------------出错图片:
镜像布骤: 1.在wed8-ha-db1上建了一个库名为:Demo_Test放在本机D:/db目录下 将此库备份放在本机D:/bak目录下
2.到wed8-ha-db2上将wed8-ha-db1上D:/bak目录下的Demo_Test.bak备份文件考到了wed8-ha-db2本机的D:/bak目录下,并在本机上也建了一个库为:Demo_Test放在了wed8-ha-db2本机D:/db目录下并还原wed8-ha-db2本机的D:/bak目录下的Demo_Test.bak
3.到wed8-ha-db1上开始镜像Demo_Test数据库 过程都ok 如以上图一,点开始镜像时出错如图二
--仅适用于使用完整恢复模式的数据库。简单恢复模式和大容量日志恢复模式不支持数据库镜像。/*
三个SQL Server 2005的实例,如果在同一台机器上不允许端口相同。
server1主数据库服务器 5011
server2备份数据库服务器 5022
jgj监视服务器 5033 Server1上准备好要镜像的数据库,然后完整备份,将备份还原到Server2服务器上,注意使用NoRecovery选项 准备好以上后,开始执行代码:
*/ --创建端点
--Server1主数据库服务器
CREATE ENDPOINT DbMirroring
AS TCP(LISTENER_PORT=5011)
FOR DATABASE_MIRRORING(ROLE=PARTNER,ENCRYPTION=SUPPORTED)
Go
Alter EndPoint DbMirroring STATE=STARTED
Go --Server2备用服务器
CREATE ENDPOINT DbMirroring
AS TCP(LISTENER_PORT=5022)
FOR DATABASE_MIRRORING(ROLE=PARTNER,ENCRYPTION=SUPPORTED)
Go
Alter EndPoint DbMirroring STATE=STARTED
Go --JGJ见证服务器
CREATE ENDPOINT DbMirroring
STATE=STARTED
AS TCP(LISTENER_PORT=5033)
FOR DATABASE_MIRRORING(ROLE=WITNESS,ENCRYPTION=SUPPORTED)
go --配置安全性
--Server1
Use master
Go
Grant connect on endpoint::"DbMirroringEP" to "jgj\administrator"
GO --Server2
Use master
Go
Grant connect on endpoint::"DbMirroringEP" to "jgj\administrator"
GO --jgj
Use master
Go
Grant connect on endpoint::"DbMirroringEP" to "jgj\administrator"
GO --启动镜像
--Server2
ALTER DATABASE DBMirror
SET PARTNER=N'TCP://jgj:5011'
Go --Server1
ALTER DATABASE DBMirror
SET PARTNER=N'TCP://jgj:5022'
Go --指定见证服务器端点
ALTER DATABASE DBMirror
SET WITNESS=N'TCP://jgj:5033'
GO --配置数据库镜像事务安全级别
ALTER DATABASE DBMirror Set SAFETY Full
GO
--通过系统目录视图查看数据库镜像配置情况
Select * from sys.database_mirroring_endpoints
Select * from sys.database_mirroring where database_id=(select database_id from sys.databases where name =’ DBMirror’) --数据库镜像角色手动切换
ALTER DATABASE DBMirror SET PARTNER FAILOVER
--客户端重定向
--(使用ADO.Net或SQL Native Client能够自动连接到故障转移后的伙伴)
ConnectionString="Data Source=A;Failover Partner=B;
Initial Catalog=AdventureWorks;Integrated Security=True;" 参照下吧