域与非域做镜像
环境:
主服务器:WINDOWS 2003 Enterprise Server +Windows 2005 Enterprise SP3,DB在域中
镜像服务器:WINDOWS 2003 Enterprise Server +Windows 2008Enterprise SP1 DB 不在域中
准备:
由于是域服务器至非域服务器的,需要在主服务器上建立一个和SQL SERVER 服务启动账户相同的本地账户,
加入SQL SERVER 中,赋予SA权限,或者赋予端点连接权限。
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO LoginName
步骤:
1.确认数据库为完整恢复模式。
2.备份数据库和日志
backup database testdb to disk='d:\testdb.bak'
backup log testdb to disk='d:\testdb.trn'
3.将备份COPY至镜像服务器,恢复数据库和日志
恢复备份
RESTORE DATABASE [testdb] FROM DISK = N'C:\testdb.bak' WITH FILE = 1,
MOVE N'testdb' TO N'E:\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\testdb.mdf',
MOVE N'testdb_log' TO N'E:\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\testdb_1.ldf', NORECOVERY, NOUNLOAD
GO
恢复日志
RESTORE LOG [testdb] FROM DISK = N'C:\testdb.trn' WITH FILE = 1,
NORECOVERY, NOUNLOAD
GO
4.在主服务器上创建ENDPOINT,要注意AUTHORIZATION 这个参数的值,这儿使用的是准备工作阶段创建的本地账户。
CREATE ENDPOINT [Endpoint_23]
AUTHORIZATION [DB192168001023\SqlService]
STATE=STARTED
AS TCP (LISTENER_PORT = 5022, LISTENER_IP = ALL)
FOR DATA_MIRRORING (ROLE = PARTNER, AUTHENTICATION = WINDOWS NEGOTIATE
, ENCRYPTION = REQUIRED ALGORITHM RC4)
5.在镜像服务器创建端点,这儿指定的是服务启动账户
CREATE ENDPOINT [Endpoint_58]
AUTHORIZATION [5173DB-10C77532\SqlService]
STATE=STARTED
AS TCP (LISTENER_PORT = 5022, LISTENER_IP = ALL)
FOR DATA_MIRRORING (ROLE = PARTNER, AUTHENTICATION = WINDOWS NEGOTIATE
, ENCRYPTION = REQUIRED ALGORITHM RC4)
6.创建镜像
在镜像服务器上执行
ALTER DATABASE testdb SET PARTNER = 'TCP://主机IP:5022';
在主机上执行
ALTER DATABASE testdb SET PARTNER = 'TCP://镜像服务器IP:5022';
7.设置高性能模式
ALTER DATABASE testdb SET SAFETY OFF
转载于:https://blog.51cto.com/fygh6318/382864