SQLServer2008-镜像数据库实施手册(双机)SQL-Server2014同样适用

SQL Server2008R2-镜像数据库实施手册(双机)SQL Server2014同样适用

一、配置主备机

1、 服务器基本信息

主机名称为:HOST_A,IP地址为:192.168.1.155

备机名称为:HOST_B,IP地址为:192.168.1.156

二、主备实例互通

实现互通可以使用域或证书来实现,考虑实现的简单,以下选取证书的方式实现。注意:实现“主备数据库实例互通”的操作只需要做一次,例如为了将两个SQL Server 2008的实例中的5个数据库建成镜像关系,则只需要做一次以下操作就可以了;或者这样理解:每一对主备实例(不是数据库)做一次互通。

1、创建证书(主备可并行执行)

--主机执行:

USE master;  

CREATE MASTER KEY ENCRYPTION BY PASSWORD = ‘123456‘;  

CREATE CERTIFICATE HOST_A_cert WITH SUBJECT = ‘HOST_A certificate‘ ,  

START_DATE = ‘2012-08-02‘,  

EXPIRY_DATE = ‘2099-08-02‘; 

 

--备机执行:

USE master;  

CREATE MASTER KEY ENCRYPTION BY PASSWORD = ‘123456‘;  

CREATE CERTIFICATE HOST_B_cert WITH SUBJECT = ‘HOST_B certificate‘,  

START_DATE = ‘2012-08-02‘,  

EXPIRY_DATE = ‘2099-08-02‘; 

 

2、创建连接的端点(主备可并行执行)

--主机执行: 

CREATE ENDPOINT Endpoint_Mirroring  

STATE = STARTED  

AS 

TCP ( LISTENER_PORT=5022 , LISTENER_IP = ALL )  

FOR 

DATABASE_MIRRORING  

( AUTHENTICATION = CERTIFICATE HOST_A_cert , ENCRYPTION = REQUIRED ALGORITHM AES , ROLE = ALL ); 

 

--备机执行:

CREATE ENDPOINT Endpoint_Mirroring  

STATE = STARTED  

AS 

TCP ( LISTENER_PORT=5022 , LISTENER_IP = ALL )  

FOR 

DATABASE_MIRRORING  

( AUTHENTICATION = CERTIFICATE HOST_B_cert , ENCRYPTION = REQUIRED ALGORITHM AES , ROLE = ALL );

 

3、备份证书以备建立互联(主备可并行执行)

--主机执行:

BACKUP CERTIFICATE HOST_A_cert TO FILE = ‘C:\SQLBackup\HOST_A_cert.cer‘; 

 

--备机执行:

BACKUP CERTIFICATE HOST_B_cert TO FILE = ‘C:\SQLBackup\HOST_B_cert.cer‘;

 

 

4、互换证书

将备份到C:\SQLBackup\的证书进行互换,即HOST_A_cert.cer复制到备机的C:\SQLBackup\。HOST_B_cert.cer复制到主机的C:\SQLBackup\。

5、添加登陆名、用户(主备可并行执行)

以下操作只能通过命令行运行,通过图形界面无法完成。(截至SQL Server2005的补丁号为SP2)

--主机执行:

CREATE LOGIN HOST_B_login WITH PASSWORD = ‘123456‘;  

CREATE USER HOST_B_user FOR LOGIN HOST_B_login;  

CREATE CERTIFICATE HOST_B_cert AUTHORIZATION HOST_B_user FROM FILE = ‘C:\SQLBackup\HOST_B_cert.cer‘;  

GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_B_login]; 

 

--备机执行:

CREATE LOGIN HOST_A_login WITH PASSWORD = ‘123456‘;  

CREATE USER HOST_A_user FOR LOGIN HOST_A_login;  

CREATE CERTIFICATE HOST_A_cert AUTHORIZATION HOST_A_user FROM FILE = ‘C:\SQLBackup\HOST_A_cert.cer‘;  

GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_A_login]; 

三、建立镜像关系

以下步骤是针对每个数据库进行的,例如:现有主机中有5个数据库以下过程就要执行5次。

1、 手工同步登录名和密码

在上文中提到数据库镜像的缺点之一是无法维护登录名,所以需要我们手工维护登录。

通常来说数据库都将会有若干个用户作为访问数据库的用户,并且数据库会有相应的登录名,但是在备机中缺少与之相对应的登录名,例如某业务系统使用’myuser’作为登录名访问数据库,但是在备机中没有’myuser’这个登录名,因此一旦主备切换,业务系统就无法登录数据库了,这种情况称为"孤立用户"。在主机和备机数据库上建立相同用户名及密码即可

2、 准备备机数据库(主机备份及镜像还原)

在主机上备份数据库,先做完整备份,再做日志事务备份。

1、主数据必须设置成完整模式进行备份,如下图:

上图中将“恢复模式”选成“完整模式”。

2、备份数据库,如下图:

备份时将“备份类型”选成“完整”。

3、备份事务日志,如下图:

将“备份类型”选成“事务日志”且备份目录与备份数据库的目录一致。

将备份文件在备机上使用主机的全备文件进行还原,在还原数据的时候需要使用选上“with non recover”。如图所示:

如果执行成功数据库将会变成这个样子:

3、 建立镜像

--在备机中执行如下语句:

ALTER DATABASE shishan SET PARTNER = ‘TCP://192.168.1.155:5022‘;

说明:shishan为数据库名,需要根据实际进行修改。192.168.1.155为主机IP地址,需根据实际进行修改。

--主机执行:

ALTER DATABASE shishan SET PARTNER = ‘TCP://192.168.1.156:5022‘; 

说明:shishan为数据库名,需要根据实际进行修改。192.168.1.156为备机IP地址,需根据实际进行修改。

执行成功后:

到此,SQL镜像热备配置完成。

四、常见命令

--切换主备

use master;

alter database testdb set partner failover;

 

-- 备机强制切换

use master;

alter database testdb set partner force_service_allow_data_loss;

 

--恢复镜像

use master;

alter database testdb set partner resume;

 

 

--取消见证服务器

ALTER DATABASE testdb SET WITNESS OFF ;

 

--取消镜像

ALTER DATABASE testdb SET PARTNER OFF;

 

--设置镜像数据库还原为正常

RESTORE DATABASE testdb WITH RECOVERY;

 

备份主数据库出现:Backup a database on a HDD with a different sector size,可以执行以下语句备份:

BACKUP DATABASE MyDB TO  DISK = N‘D:\MyDB.bak‘ WITH  INIT , NOUNLOAD ,  NAME = N‘MyDB backup‘,  STATS = 10,  FORMAT

 

总结

要进行以上sql server的镜像设置一定要使用sql server 的配置管理器开启TCP/IP协议,如下图

如果没有启用TCP/IP协议则只能在同一个网段内的机器配置镜像,前面的配置步骤里面所用到的IP地址要换成对应的实例名。同一个网段配置并使用镜像的时实性、传输速率更高,适用于大数据量的同步,跨网段或者跨公网的sql server镜像一般适用于数据量小,时实性要求不高的数据同步,而且数据库在公网上同步也不安全。

时间: 2024-07-28 17:17:05

SQLServer2008-镜像数据库实施手册(双机)SQL-Server2014同样适用的相关文章

SQL Server2008 R2 数据库镜像实施手册(双机)SQL Server2014同样适用

这篇文章主要介绍了SQL Server2008 R2 数据库镜像实施手册(双机)SQL Server2014同样适用,需要的朋友可以参考下 一.配置主备机 1. 服务器基本信息 主机名称为:HOST_A,IP地址为:192.168.1.155 备机名称为:HOST_B,IP地址为:192.168.1.156 二.主备实例互通 实现互通可以使用域或证书来实现,考虑实现的简单,以下选取证书的方式实现.注意:实现"主备数据库实例互通"的操作只需要做一次,例如为了将两个SQL Server 2

SQL Server2008 R2 数据库镜像实施手册(双机)

一.配置主备机 1. 服务器基本信息 主机名称为:HOST_A,IP地址为:192.168.1.155 备机名称为:HOST_B,IP地址为:192.168.1.156 二.主备实例互通 实现互通可以使用域或证书来实现,考虑实现的简单,以下选取证书的方式实现.注意:实现“主备数据库实例互通”的操作只需要做一次,例如为了将两个SQL Server 2008的实例中的5个数据库建成镜像关系,则只需要做一次以下操作就可以了:或者这样理解:每一对主备实例(不是数据库)做一次互通. 1.创建证书(主备可并

在异步镜像中移动镜像数据库文件实战

在异步数据库镜像中,移动镜像数据库文件实战 某数据库部署为异步数据库镜像,镜像数据库所在磁盘空间不足,我得移动镜像数据库文件到新的磁盘上. 在异步数据库镜像中,应用程序连接到主数据库访问.我们这里要根据你的线上环境考虑选择哪种方式合适: 直接重做镜像,将数据文件放在新的位置. 直接移动镜像数据库文件. 移动数据库文件的所有操作都是对镜像数据库实例,如果镜像数据库实例上没有其他线上主数据库,不会对线上业务产生影响的情况下,可以直接移动镜像数据库文件. 1. 在主库上点击"Pause",暂

SQL Server不停机移动镜像数据库

SQL Server数据库镜像是对于数据库可用性的软件解决方案.镜像在每个数据库级别被部署,并只能在完整恢复模式下工作.由于磁盘空间的问题,需要移动镜像数据库到一个不同的位置.我们想不停机.不破坏镜像来完成这个任务.需要在不同的环境做测试. 对于启用了数据库镜像的数据库的文件移动,我们只有有限的选择.常规方法如下: 破坏数据库镜像会话,通过使用Alter database或Attach Detach移动在线数据库文件到一个新的位置. 备份数据库,并在镜像服务器上恢复备份,然后重建镜像. 技术上来

SQLServer2008 和SQLServer2008 R2版本导出 数据库结构和数据sql

①SQLServer2008 版本导出 数据库结构和数据sql ②SQLServer2008R2 版本导出 数据库结构和数据sql 采集 #HUABAN_WIDGETS .HUABAN-red-normal-icon-button, .HUABAN-red-large-icon-button, .HUABAN-red-small-icon-button, .HUABAN-white-normal-icon-button, .HUABAN-white-large-icon-button, .HUA

HPDL380G8平台11.2.0.3 RAC实施手册

HPDL380G8平台11.2.0.3 RAC实施手册   1 前言 此文档详细描述了Oracle 11gR2 数据库在HPDL380G上的安装RAC的检查及安装步骤.文档中#表示root用户执行,$表示grid或oracle用户执行. 2 系统环境 1.操作系统环境 说明项 节点1 节点2 硬件型号 HPDL380pGen8 HPDL380pGen8 操作系统 Oel6.4 Oel6.4 集群件 oracle grid oracle grid 服务器主机名 Rbdb81 Rbdb82 IP地址

vCenter Server6.5 & SQL Server2014单机部署 - vShpere ESXI6.0-6.5集群管理

vCenter Server6.5 & SQL Server2014单机部署 VMware官方网站提供免费下载vCenter Server6.5试用版: http://www.vmware.com/ 系统版本:Windows Server2012 R2 部署vCenter Server6.5 步骤: 1.安装SQL Server2014 SP2(或者SQL Server2008R2 SP1以上) 2.配置ODBC 64位数据源 3.安装vCenter Server6.5 (VMware-VIM-

SQL Server2014 Cluster安装及配置

提到SQL Server相信大家都很熟悉了,根据自己的需求不同,可以选择不同的数据库版本,比如使用最多的应该就是mysql了,因为mysql是免费使用的, 接下来就是SQL Server了,最后就是oracle了,当然,这些不同版本的数据库有不同的作用:mysql不能用于大数据的写入及存取,因为满足不了需求.剩下的就是SQL Server和oracle了,那他们的区别有哪些呢?1.开发性,SQL Server只能运行在windows上,操作系通过的稳定对数据库是十分重要的,而windows平台的

Oracle 11.2.0.4 RAC Standby实施手册

Oracle RAC Standby实施手册   目录 1 实施环境规划 3 1.1 IP地址规划 3 1.2 归档配置相关参数 3 1.3 主库软件环境信息 4 1.4 备库软件环境信息 4 2 Active DataGuard实施条件 6 3 Active DataGuard实施准备 8 3.1 配置DG专用监听 8 3.1.1 创建LISTENER_DG 8 3.1.2 将监听加入到crs资源 10 3.2 配置TNS别名 10 3.3 同步口令文件 11 3.4 测试TNS配置有效性 1