数据库镜像搭建

数据库镜像搭建一概述数据库镜像是SQL SERVER 2005用于提高数据库可用性的新技术。

数据库镜像将事务日志记录直接从一台服务器传输到另一台服务器,并且能够在出现故障时快速转移到备用服务器,保证数据的安全性。

优势:数据库镜像可以在不丢失已提交数据的前提下进行快速故障转移,无须专门的硬件,并且易于配置和管理。

二环境准备设备:三台服务器操作系统:Window 2003 Enterprise sp2SQL版本:只有SQL Server 2005 标准版、企业版和开发版才可以建立数据镜像。

其他版本即Express只能作为见证服务器。

如果不知道是什么版本,可以执行如下语句查看:1select serverproperty('productversion'),serverproperty('productlevel'),serverproperty('edition');若要对此数据库进行数据库镜像,必须将它更改为使用完整恢复模式。

若要用Transact-SQL 实现此目的,请使用ALTER DATABASE 语句:1USE master;2ALTER DATABASE<DatabaeName>3SET RECOVERY FULL;下面假设使用的数据库是ccerp_jzt,假设服务器A,B,CA为主体服务器,B为镜像服务器,C为见证服务器IP分别为:A:192.168.5.220B:192.168.5.209C: 192.168.5.208 (这些IP用于证书模式讲解)三三种模式的搭建数据库镜像要建立必需得建立信任关系,那么在WIN环境下建立信任关系可以通过三种方式:域帐户,证书信任,windows 匿名登陆,现就前两种模式做配置说明.3.1 域帐户模式:3.1.1 更改MS SQL Server服务的的登陆方式为域帐户登陆方式:进入windows服务管理控制台,更改服务登陆帐户,使域账户有更改MSSQL SERVER服务状态的权限.三台机器都做同样设置将域帐户赋予sysadmin角色3.1.2 建立端点:通过图形界面建立端点:启动SQLWB,按图一直下一步用域帐户登陆如果成功则:3.2 证书模式建立数据库镜像首先实现“主备数据库实例互通”,该操作只需要做一次,例如为了将两个SQL Server 2005的实例中的5个数据库建成镜像关系,则只需要做一次以下操作就可以了;或者这样理解:每一对主备实例(不是数据库)做一次互通。

3.2.1、创建证书--主体服务器执行:USE master;--删除已经有的密钥(错误信息:数据库中已存在主密钥。

执行此语句前,请先删除该主密钥)drop master keyCREATE MASTER KEY ENCRYPTION BY PASSWORD ='sumpojxc198023';CREATE CERTIFICATE HOST_A_cert WITH SUBJECT ='220_cert' ,START_DATE ='02/28/2011', EXPIRY_DATE='04/06/2099';--镜像服务执行:USE master;--删除已经有的密钥(错误信息:数据库中已存在主密钥。

执行此语句前,请先删除该主密钥)drop master keyCREATE MASTER KEY ENCRYPTION BY PASSWORD ='sumpojxc198023';CREATE CERTIFICATE HOST_B_cert WITH SUBJECT ='209_cert',START_DATE ='02/28/2011', EXPIRY_DATE='04/06/2099';;--见证服务器执行:USE master;--删除已经有的密钥(错误信息:数据库中已存在主密钥。

执行此语句前,请先删除该主密钥)drop master keyCREATE MASTER KEY ENCRYPTION BY PASSWORD ='sumpojxc198023';CREATE CERTIFICATE HOST_C_cert WITH SUBJECT ='208_cert',START_DATE ='02/28/2011', EXPIRY_DATE='04/06/2099';这个MASTER KEY对于每个sql server实例唯一的,如果数据库中已经创建了MASTER KEY,可以用如下的sql删除之后重新执行:DROP MASTER KEY ,同样CERTIFICATE 表示的是证书,如果证书HOST_A_cert已经存在,可以用如下的sql删除之后重新执行:DROP CERTIFICATE HOST_A_cert,3.2.2、创建连接的端点--主体服务器执行:CREATE ENDPOINT Endpoint_MirroringSTATE = STARTEDASTCP ( LISTENER_PORT=5022 , LISTENER_IP =ALL )FORDATABASE_MIRRORING( AUTHENTICATION = CERTIFICATE HOST_A_cert , ENCRYPTION = REQUIRED ALGORITHM AES , ROLE =ALL );--镜像服务器执行:CREATE ENDPOINT Endpoint_MirroringSTATE = STARTEDASTCP ( LISTENER_PORT=5022 , LISTENER_IP =ALL )FORDATABASE_MIRRORING( AUTHENTICATION = CERTIFICATE HOST_B_cert , ENCRYPTION = REQUIRED ALGORITH M AES , ROLE =ALL );--见证服务器执行:CREATE ENDPOINT Endpoint_MirroringSTATE = STARTEDASTCP ( LISTENER_PORT=5022 , LISTENER_IP =ALL )FORDATABASE_MIRRORING( AUTHENTICATION = CERTIFICATE HOST_C_cert , ENCRYPTION = REQUIRED ALGORITH M AES , ROLE =ALL );如果数据库中已经创建了端点Endpoint_Mirroring,可以用如下的sql删除之后重新执行:DROP ENDPOINT Endpoint_Mirroring3.2.3、备份证书以备建立互联--主体服务器执行:BACKUP CERTIFICATE HOST_A_cert TO FILE='C:\CERTIFICATE\HOST_A_cert.cer';--镜像服务器执行:BACKUP CERTIFICATE HOST_B_cert TO FILE='C:\CERTIFICATE\HOST_B_cert.cer';--见证服务器执行:BACKUP CERTIFICATE HOST_C_cert TO FILE='C:\CERTIFICATE\HOST_C_cert.cer';3.2.4、互换证书将备份到C:\的证书进行互换,即HOST_A_cert.cer、HOST_C_cert.cer复制到镜像服务器的C:\。

HOST_B_cert.cer、HOST_C_cert.cer复制到主体服务器的C:\。

HOST_A_cert.cer、HOST_B_cert.cer 复制到见证服务器的C:\。

3.2.5、添加登陆名、用户以下操作只能通过命令行运行,通过图形界面无法完成。

(截至文档编写结束,SQL Server2005的不定号为SP2)--主体服务器执行:CREATE LOGIN HOST_B_login WITH PASSWORD ='sumpojxc198023';CREATE USER HOST_B_user FOR LOGIN HOST_B_login;CREATE CERTIFICATE HOST_B_cert AUTHORIZATION HOST_B_user FROM FILE='C:\CERTI FICATE\HOST_B_cert.cer';GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO[HOST_B_login];CREATE LOGIN HOST_C_login WITH PASSWORD ='sumpojxc198023';CREATE USER HOST_C_user FOR LOGIN HOST_C_login;CREATE CERTIFICATE HOST_C_cert AUTHORIZATION HOST_C_user FROM FILE='C:\CERTI FICATE\HOST_C_cert.cer';GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO[HOST_C_login];--镜像服务器执行:CREATE LOGIN HOST_A_login WITH PASSWORD ='sumpojxc198023';CREATE USER HOST_A_user FOR LOGIN HOST_A_login;CREATE CERTIFICATE HOST_A_cert AUTHORIZATION HOST_A_user FROM FILE='C:\CERTIFICATE\HOST_A_cert.cer';GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_A_login];CREATE LOGIN HOST_C_login WITH PASSWORD ='sumpojxc198023';CREATE USER HOST_C_user FOR LOGIN HOST_C_login;CREATE CERTIFICATE HOST_C_cert AUTHORIZATION HOST_C_user FROM FILE='C:\CERTI FICATE\HOST_C_cert.cer';GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO[HOST_C_login];--见证服务器执行:CREATE LOGIN HOST_A_login WITH PASSWORD ='sumpojxc198023';CREATE USER HOST_A_user FOR LOGIN HOST_A_login;CREATE CERTIFICATE HOST_A_cert AUTHORIZATION HOST_A_user FROM FILE='C:\CERTI FICATE\HOST_A_cert.cer';GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_A_login];CREATE LOGIN HOST_B_login WITH PASSWORD ='sumpojxc198023';CREATE USER HOST_B_user FOR LOGIN HOST_B_login;CREATE CERTIFICATE HOST_B_cert AUTHORIZATION HOST_B_user FROM FILE='C:\CERTI FICATE\HOST_B_cert.cer';GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO[HOST_B_login];四.建立镜像关系:4.1、准备备机数据库承接上文,该节是描述如何同步主备数据库内的数据。

合集下载

MySQL镜像配置方法

MySQL镜像配置方法

(一),环境介绍及配置:主库192.168.1.104 从库192.168.1.114◆修改主库的/etc/f 文件,在[mysqld]节里边的键值增加server-id=1log-bin=binlog_name◆主库增加用户,用于从库读取主库日志grant replication slave,reload,super on *.* to ’slave’@’ 192.168.1.114’ identified by ’psgis@123◆从库连接主库进行测试/opt/mysql/bin/mysql -u slave -p -h 192.168.1.104◆停从库,修改从库/etc/f,增加选项:[mysqld]server-id=2master-host=192.168.1.104master-user=slavemaster-password=123456◆启动从库,进行主从库数据同步/opt/mysql/share/mysql/mysql start/opt/mysql/bin/mysql -u root -pmysql>load data from master;说明:这一步也可以用数据库倒入或者直接目录考过来。

这一步需要注意,可能花很长时间,而且会干扰主库的正常运行。

◆进行测试:主库创建表,(二)打开从库,察看:(三)TroubleShooting如果发现数据不能同步,老是需要在从库执行:Load data from master才能做到数据同步。

那么:A,在主库执行:show master status;得到下面的输出:B,根据上面的输出,在slave端执行:Mysql> slave stop;mysql>CHANGE MASTER TO-> MASTER_HOST='192.168.1.104',-> MASTER_USER='slave',-> MASTER_PASSWORD='psgis@123',-> MASTER_LOG_FILE='binlog_name.000003',-> MASTER_LOG_POS=208;Mysql> start slave;然后再测试。

在虚拟机中安装与配置数据库的步骤(九)

在虚拟机中安装与配置数据库的步骤(九)

虽然现在云技术的发展已经使得很多软件可以在线使用,但在某些情况下,我们还是需要在本地环境中安装和配置数据库。

而为了隔离环境和提高效率,使用虚拟机来完成这个任务是非常不错的选择。

下面就让我们一起来探讨一下,在虚拟机中安装与配置数据库的步骤吧。

1. 选择合适的虚拟化软件在开始之前,首先需要选择一个合适的虚拟化软件来创建虚拟机。

目前比较常用的有VMware Workstation、VirtualBox以及Hyper-V等。

根据个人的需求和喜好,选择一款适合自己的工具进行安装。

2. 下载和安装虚拟机镜像在选择好虚拟化软件后,我们需要下载数据库所需的虚拟机镜像。

常见的数据库如MySQL、PostgreSQL以及Oracle数据库等,它们通常会提供官方的虚拟机镜像供下载使用。

在官网或社区下载镜像文件,并保存到本地。

3. 创建虚拟机打开虚拟化软件,点击新建虚拟机,根据提示进行虚拟机的创建。

首先选择虚拟机镜像的路径,并配置虚拟机的基本信息,如虚拟机的名称、硬件配置等。

4. 安装虚拟机操作系统完成虚拟机的创建后,选择虚拟机并启动它。

虚拟机会从镜像中加载操作系统,然后进入安装界面。

根据操作系统的提示进行安装过程,这里通常需要选择安装的语言、时区等信息。

安装完成后,系统会提示重启虚拟机。

5. 安装数据库软件当虚拟机重启后,进入操作系统的桌面界面。

打开浏览器,前往数据库官网或官方文档,找到对应的数据库软件下载页面。

下载安装包到虚拟机中。

6. 配置数据库参数和权限安装完成后,打开数据库软件,会进入配置向导界面。

根据向导的提示,设置数据库的一些参数,如安装目录、默认字符集、端口号等。

另外,还需要设置数据库的管理员账号和密码,并分配相应的权限。

7. 启动数据库服务配置完成后,启动数据库服务程序。

这里需要注意,要确保虚拟机的防火墙或安全策略不会阻止数据库的正常运行。

启动数据库服务后,可以使用命令行或者可视化工具连接到数据库,并进行相关的操作,如创建数据库、表,插入数据等。

配置数据库镜像

配置数据库镜像
2.在代码编辑区域中输入代码:
USE MASTER
GO
Alter database adventureWorks set recovery full with no_wait
go
3.按F5键执行代码,确认代码执行成功后,关闭代码编辑窗口
在主体服务器创建镜像通讯端点,并授予用户访问权限
4.在SQL Server Management Studio的工具栏中选择新建查询,在服务器名称中选择SQLDEMO,在身份验证中选择“Windows验证”
25.可通过查看SQLDEMO和SQLDEMO\MIRROR两实例AdventureWorks数据库的状态来确定数据库镜像的角色和状态
执行手动故障切换
26.在SQL Server Management Studio的工具栏中选择新建查询,在服务器名称中选择SQLDEMO,在身份验证中选择“Windows验证”
go
alter database AdventureWorks set partner='tcp://sqldemo:5023'
alter database AdventureWorks set partner='tcp://sqldemo:5024'
go
24.按F5键执行代码,确认代码执行成功后,关闭代码编辑窗口
go
grant connect on endpoint::endpoint_mirroring to [builtin\administrators]
go
6.按F5键执行代码,确认代码执行成功后,关闭代码编辑窗口
在镜像服务器创建镜像通讯端点,并授予用户访问权限
7.在SQL Server Management Studio的工具栏中选择新建查询,在服务器名称中选择SQLDEMO\MIRROR,在身份验证中选择“Windows验证”

数据库镜像-sql2005-三种模式

数据库镜像-sql2005-三种模式

数据库镜像搭建一概述数据库镜像是SQL SERVER 2005用于提高数据库可用性的新技术。

数据库镜像将事务日志记录直接从一台服务器传输到另一台服务器,并且能够在出现故障时快速转移到备用服务器。

可以编写客户端程序自动重定向连接信息,这样一旦出现故障转移就可以自动连接到备用服务器和数据库。

优势:数据库镜像可以在不丢失已提交数据的前提下进行快速故障转移,无须专门的硬件,并且易于配置和管理。

二环境准备操作系统:Window 2003 enterprise sp2(至少两台,如要启用自动故障转移,必需三台) SQL版本:MSSQL SERVER 2005 SP3检查SQL SERVER版本:exec xp_msverselect SERVERPROPERTY('productlevel')数据库准备:准备一个数据库:ccerp_jzt ,备份此数据库还原到另外一台机器上,另外一台必须是with no recovery这里我假设服务器A,B,CA为主体服务器,B为镜像服务器,C为见证服务器A服务器use mastergorestore filelistonly fromdisk=N'f:\databak\ccerp_jzt_backup_200911250100.bak'restore database ccerp_jzt fromdisk=N'f:\databak\ccerp_jzt_backup_200911250100.bak'withreplace,recovery,move'ccerp_ydswzip_Data'to'd:\data\ccerp_jzt.mdf',move'ccerp_ydswzip_Log'to'd:\data\ccerp_jzt_log.ldf'exec sp_helpdb'ccerp_jzt'backup database ccerp_jzt to disk=N'f:\databak\sk.bak'with init --更改恢复模式alter database ccerp_jzt set recovery fullB服务器:CREATE DATABASE ccerp_jztON(NAME= Sales_dat,FILENAME='d:\data\ccerp_jzt.mdf',SIZE= 10)LOG ON(NAME='ccerp_jzt_log',FILENAME='d:\data\ccerp_jzt_log.ldf',SIZE= 5MB)GOrestore filelistonly from disk=N'f:\xxzx\data\sk.bak'use mastergorestore database ccerp_jzt from disk=N'f:\xxzx\data\sk.bak'with replace,norecovery,exec sp_helpdb'ccerp_jzt'C服务器只要装上SQL SERVER 2005就可以,无需其他准备准备完成后如下图所示:三三种模式的搭建数据库镜像要建立必需得建立信任关系,那么在WIN环境下建立信任关系可以通过三种方式:域帐户,证书信任,windows 匿名登陆,现就前两种模式做配置说明.3.1 域帐户模式:3.1.1 更改mssqlserver服务的的登陆方式为域帐户登陆方式:进入windows服务管理控制台,更改服务登陆帐户,使域账户有更改MSSQL SERVER服务状态的权限.三台机器都做同样设置3.1.2 建立端点:通过图形界面建立端点:启动SQLWB,按图一直下一步用域帐户登陆如果成功则:3.2 证书模式3.2.1建立证书&端点参与数据库镜像会话的服务器必须彼此信任。

sql数据库镜像方法

sql数据库镜像方法

sql数据库镜像方法
SQL数据库镜像可以通过以下步骤实现:
1. 确保主体数据库在执行备份时使用了完整恢复模式。

2. 还原主体数据库的最新完整数据库备份,同时,镜像数据库的名称必须与主体数据库的名称相同。

3. 如果自还原完整备份以来已对数据库执行任何差异备份,请还原最新的差异备份。

4. 还原自完整数据库备份或差异数据库备份以来进行的所有日志备份。

5. 对伙伴开始镜像之前,应该创建原始数据库的当前日志备份并将其还原到将来的镜像数据库。

在实现过程中,可能会遇到问题,这时需要暂停数据库镜像会话。

执行暂停操作将保留在挂起镜像时的会话状态。

当出现瓶颈时,暂停可能有利于提高主体服务器的性能。

会话暂停后,主体数据库仍然可用。

请注意,操作具有一定的风险性,因此,需要具备一定的数据库管理知识。

在进行实际操作前,应进行充分的准备和测试。

如有必要,建议咨询专业人士。

sql2005镜像

sql2005镜像

使用SQL Server Management Studio配置数据库镜像2010-09-20 作者:dqw 来源:dqw的blog一、简介“数据库镜像”是Sql Server 2005推出的一个主要用于提高数据库可用率的软件解决方案。

镜像是基于每个数据库执行的,仅适用于使用完整恢复模式的数据库。

简单恢复模式和大容量日志恢复模式不支持数据库镜像。

数据库镜像是通过维护一个热备用服务器而发挥作用的。

在一般的镜像会话期间,如果生产服务器出现故障,客户端应用程序可以通过重新连接到备用服务器来快速进行恢复。

二、前提条件1、准备好服务器,保证数据库版本至少是Sql Server 2005 SP1,当然最好是最新版本2、保证需要镜像的数据库为完全恢复模式3、配置域环境,数据库镜像使用域环境会比较方便,感觉比使用证书要省事4、设置sql server的服务以域账号运行5、选择镜像方案,镜像服务可以使用三个数据库实例(主、镜像、见证)也可以使用两个数据库实例(主、镜像),实际使用环境中每个实例应该是运行在不同的服务器上。

如果使用见证服务器的话好处是可以实现自动的故障转移,但是需要使用3台服务器,而且至少要保证其中2台服务器是可用的,因为如果镜像服务器和见证服务器同时当机,即时主服务器没有任何问题也是无法对外提供服务的。

我这里只是为了实现数据库的镜像,做一个实时的数据库备份所以没有使用见证服务器,如果主服务器当机需要手动切换镜像服务器为主服务器。

三、具体步骤1、在主服务器完整备份需要镜像的数据库,在镜像服务器以“不对数据库执行任何操作,不会滚未提交的事务。

(RESTORE WITH NORECOVERY)”的状态恢复。

然后备份事务日志,以相同的恢复状态在镜像服务器恢复事务日志。

2、在主服务器,选择需要镜像数据库的镜像功能,点击“配置安全性”3、选择否,不包括见证服务器实例4、选择主体服务器实例5、选择镜像服务器实例6、如果主服务器实例和镜像服务器实例是以不同的域账户运行的,需要输入对应的账户,我使用的是相同的账户所以留空7、配置完成8、配置端点9、点击“开始镜像”,完成10、如果没有提示任何错误,主服务器的数据库会显示“主体,已同步”,镜像服务器的数据库会显示“镜像,已同步,正在还原…”,数据库镜像服务配置完成四、故障转移1、主机备机互换在主机按“故障转移”按钮就可以了2、如果主机当机,需要启用镜像服务器当主服务器在镜像服务器执行USE master;ALTER DATABASE 数据库名SET PARTNER FORCE_SERVICE_ALLOW_DATA_LOSS;然后按“故障转移”按钮就可以了五、遇到的错误1、“消息1418,级别16,状态1,第1 行服务器网络地址"TCP://机器名或IP地址:端口号" 无法访问或不存在。

MySQL中的数据镜像和容灾切换策略

MySQL中的数据镜像和容灾切换策略MySQL是一款常用的关系型数据库管理系统,被广泛应用于各种Web应用和企业级系统中。

随着数据量的增加和对数据可用性的要求提高,数据库的镜像和容灾切换成为了许多企业必备的功能。

本文将探讨MySQL中的数据镜像和容灾切换策略,以提供一种可靠的数据库备份和容灾方案。

I. 数据镜像的概念和原理数据镜像是指将一个数据库实时地复制到另一个数据库,以实现数据的冗余存储和高可用性。

当源数据库发生故障或不可用时,可以立即切换到镜像数据库,从而保证系统的连续运行和数据的安全性。

MySQL的数据镜像可以通过各种方法实现,其中最常用的方式是使用主备复制(Master-Slave Replication)机制。

主备复制使用二进制日志(Binary Log)来记录源数据库的写操作,然后将这些写操作实时地复制到备库。

备库可以是一个独立的MySQL实例,也可以是一个集群。

在进行数据镜像时,需要注意以下几点:1. 主服务器和备服务器的硬件配置应尽量相同,以保证在切换时不会出现性能瓶颈。

2. 镜像数据的同步方式可以选择同步或异步。

同步方式要求主服务器和备服务器的数据一致性非常高,切换速度也较快;异步方式则容许主备服务器之间存在一定的数据延迟,但切换速度可能较慢。

3. 镜像数据的一致性可以通过读写分离(Read-Write Separation)来实现。

在读写分离中,主服务器负责处理写操作,而备服务器负责处理读操作。

这种方式可以有效减轻主服务器的负载,并增加系统的吞吐量。

II. 容灾切换策略的选择容灾切换是指在发生故障时,将系统从主服务器切换到备服务器的过程。

容灾切换策略的选择取决于对系统的可用性和数据一致性的要求。

1. 手动切换手动切换是最简单的切换方式,也是最容易实施的方式。

在发生故障时,管理员手动将系统切换到备服务器。

手动切换的优点是操作简单直观,可以根据实际情况进行调整;缺点是需要管理员的主动干预,有一定的人为错误风险。

数据库管理中的数据镜像与数据同步技术

数据库管理中的数据镜像与数据同步技术在当前的信息时代,数据库扮演着不可或缺的角色。

随着数据库的规模不断增长,对数据的可靠性和安全性有着更高的要求。

数据镜像与数据同步技术应运而生,成为数据库管理中的重要一环。

本文将深入探讨数据镜像与数据同步技术的概念、原理、应用和挑战。

1. 数据镜像技术1.1 概念数据镜像是指将一个数据源的镜像副本生成到另一个位置,以提供对数据的远程备份和快速恢复能力。

数据镜像将源和目标之间的数据保持同步,确保镜像副本是源数据的准确拷贝。

1.2 原理数据镜像以源数据库为主节点,将所有数据的变更记录复制到镜像数据库。

这些变更记录可以通过基于日志的技术或基于复制的技术来实现。

基于日志的技术通过捕获事务日志中的变更并将其应用到镜像数据库中,而基于复制的技术则通过将源数据库的数据块复制到镜像数据库中来实现。

1.3 应用数据镜像广泛应用于灾难恢复和高可用性方面。

当源数据库发生故障或不可用时,可以通过切换到镜像数据库来恢复数据的使用。

此外,数据镜像还可用于数据备份、数据分析和服务扩展等方案中。

1.4 挑战数据镜像技术面临着一些挑战。

首先,数据镜像会增加系统的负载和网络传输开销,因此需要合理规划带宽和资源分配。

其次,数据一致性和准确性是保证数据镜像有效性的关键问题,需要采取合适的同步策略和机制。

最后,数据镜像还需要考虑数据安全和隐私保护的问题,以防止未经授权的访问和数据泄露。

2. 数据同步技术2.1 概念数据同步是指将数据源的变更应用到一个或多个目标位置,以保持数据的一致性。

通过数据同步技术,可以确保不同地点的数据保持同步,以实现数据的共享和协同操作。

2.2 原理数据同步可以通过事务日志或表级别的更新来实现。

基于事务日志的同步技术将源数据库的事务日志记录复制到目标数据库并应用,从而保持两者的数据一致性。

而基于表级别的更新则通过对源表进行变更时,同步复制至目标表。

2.3 应用数据同步技术广泛应用于数据仓库、数据分析和数据分发等方面。

SQL Server mirror 镜像配置

SQL Server 2005镜像配置基本概念
我理解的SQL Server 2005镜像配置实际上就是由三个服务器(也可以是同一服务器的三个SQL实例)组成的一个保证数据的环境,分别是:主服务器、从服务器、见证服务器。
主服务器:数据存放的地方
从服务器:数据备份的地方(即:主服务器的镜像)
见证服务器:动态调配主/从服务器的第三方服务器
5 STATE = STARTED
6 AS TCP (
7 LISTENER_PORT = 5022 --监听端口,任意指定(三个服务器的端口最好是一致)
8 , LISTENER_IP = ALL --监听IP地址,网内所有地址
9 )
10 FOR DATABASE_MIRRORING (
11 AUTHENTICATION = WINDOWS --认证方式,Windows
开始SQL Server 2005镜像配置
一、在A、B、C中新配置一个用户(DBUser),该用户要具有SQL Server的所有使用权限,我这里是将该用户添加到Administrators组。
二、在A、B、C中执行以下SQL语句:
在A、B、C中创建对象
1USE master
2GO
3
4CREATE ENDPOINT Endpoint_Mirroring
环境介绍
首先介绍一下配置的环境:
本次配置使用的是三个独立的服务器(A、B、C三台电脑)。
A:主服务器,IP:192.168.0.2
B:从服务器,IP:192.168.0.3
C:见证服务器,IP:192.168.0.4
三台电脑系同一局域网内,系统均是Windows Server 2003,数据库是SQL Server 2005

sqlserver双机热备份方案之数据库镜像(实测sqlserver2016)

sqlserver双机热备份⽅案之数据库镜像(实测sqlserver2016)⼀、先简单介绍下sql server ⾃带的双机的热备的⼏种⽅案1,发布--订阅利⽤sql server 复制功能实现主机发布数据库,备机订阅数据库,做到数据热备2,⽇志传送SQLServer数据库引擎中,使⽤⽇志传送将事务⽇志不间断地从⼀个数据库(主数据库)发送到另⼀个数据库(辅助数据库)。

不间断地备份主数据库中的事务⽇志,然后将它们复制并还原到辅助数据库,这将使辅助数据库与主数据库基本保持同步。

⽬标服务器充当备份服务器,并可以将查询处理从主服务器重新分配到⼀个或多个只读的辅助服务器。

⽇志传送可与使⽤完整或⼤容量⽇志恢复模式的数据库⼀起使⽤。

3,数据库镜像利⽤sql server 镜像功能在备机建⽴镜像后,实现主机和备机数据热备。

数据库镜像是⽤于提⾼数据库可⽤性的主要软件解决⽅案。

镜像基于每个数据库实现,并且只适⽤于使⽤完整恢复模式的数据库。

数据库镜像维护⼀个数据库的两个副本,这两个副本必须驻留在不同的SQL Server数据库引擎实例(服务器实例)上。

通常,这些服务器实例驻留在不同位置的计算机上。

其中⼀个服务器实例使数据库服务于客户端(“主体服务器”),⽽另⼀个服务器实例则充当热备⽤或备⽤服务器(“镜像服务器”),具体取决于镜像会话的配置和状态。

同步数据库镜像会话时,数据库镜像提供了热备⽤服务器,可⽀持在已提交事务不丢失数据的情况下进⾏快速故障转移。

⼆、数据库镜像热备⽅法注意点:1.数据库的模式要是完整模式。

2.要对数据库完整备份和事务⽇志备份,分别还原到镜像库上,使⽤NORECOVERY模式。

3.镜像数据库是不允许删除和操作,即便查看属性也不⾏。

4.先删除端点,再删除证书,再删除主密钥。

5.只有是同步模式的时候,才能⼿动故障转移,异步模式不能⼿动故障转移。

主机:192.168.11.253备机:192.168.11.251(1),先创建密匙,主机备机都要下⾯执⾏代码use master --创建密匙gocreate master key encryption by password='888888'goselect * from sys.key_encryptions --查询密匙(2),创建证书,主机执⾏use master --主机证书为:DBAgocreate certificate DBA_cert with subject='DBA certificate',expiry_date='2099-1-1'go备机执⾏use master --主机证书为:DBBgocreate certificate DBB_cert with subject='DBB certificate',expiry_date='2099-1-1'goselect * from sys.certificates --查看证书(3),创建主库镜像和端点主机执⾏use mastergocreate endpoint Ticket_Mirroring --端点为Ticket_Mirroring ,端⼝号:5022,镜像为DBAstate=startedas tcp ( listener_port = 5022,listener_ip = all )for database_mirroring ( authentication = certificate DBA_cert, encryption = required algorithm aes, role = all )go备机执⾏create endpoint Ticket_Mirroring --端点为Ticket_Mirroring ,端⼝号:5022,镜像为DBBstate=startedas tcp ( listener_port = 5022,listener_ip = all )for database_mirroring ( authentication = certificate DBB_cert, encryption = required algorithm aes, role = all )go(4),备份密匙主机执⾏use master --备份密匙gobackup certificate DBA_cert to file = 'D:\cert\DBA_cert.cer' --密匙路径go备机执⾏use master --备份密匙gobackup certificate DBB_cert to file = 'D:\cert\DBA_cert.cer' --密匙路径go(5),复制交换密匙,保证在主机和备机的D:\cer下路径都有DBA_cert和DBB_cert⽂件(6)创建登录名,和证书关联,主机创建备机,备机创建主机主机执⾏use mastergocreate login DBB_login with password='888888'go备机执⾏use mastergocreate login DBA_login with password='888888'go(7),创建使⽤该登录名的⽤户,主机创建备机,备机创建主机主机执⾏use mastergocreate user DBB for login DBB_logingo备机执⾏use mastergocreate user DBA for login DBA_logingo(8),证书与⽤户关联,主机关联备机,备机关联主机主机执⾏use mastergocreate certificate DBB_certauthorization DBBfrom file='D:\cert\DBB_cert.cer'go备机执⾏use mastergocreate certificate DBA_certauthorization DBAfrom file='D:\cert\DBA_cert.cer'go(9),授予对远程数据库端点的登录名的CONNECT权限,主授权备机,备机授权主机主机执⾏use mastergoGRANT CONNECT ON ENDPOINT::Ticket_Mirroring TO [DBB_login];go备机执⾏use mastergoGRANT CONNECT ON ENDPOINT::Ticket_Mirroring TO [DBA_login];go(10),从主机上备份需要热备的数据库的数据库和事务⽇志,数据库⼀定要完整,然后把数据库和事务⽇志还原到备机,还原⼀定要使⽤NORECOVERY模式,还原后备机数据库显⽰正在还原为正常现象。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档