当前位置:文档之家› windows下rsync数据同步部署文档

windows下rsync数据同步部署文档

windows下rsync数据同步部署文档
windows下rsync数据同步部署文档

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
目 录
一、什么是 rsync?..................................................................................................... 2 二、Rsync 同步算法..................................................................................................... 3 三、windows 下 swRsync 使用实例............................................................................. 3 3.1、服务端安装方法........................................................................................... 3 3.2、客户端的安装方法..................................................................................... 11 3.3、文件同步详细方法说明............................................................................. 13 3.4 Rsync 详细参数说明.................................................................................... 16
1

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
rsync? 一、什么是 rsync?
丢失数据是大家都不想看到的,为了数据安全,一个好的智能的备份软件是 必不可少的。 Rsync (remote synchronize) 是一个远程数据同步工具, 是类 unix 系统下的数据镜像备份工具, 可通过 LAN/WAN 快速同步多台主机间的文件。 Rsync 使用“Rsync 算法”来使本地和远程两个主机之间的文件达到同步,这个算法只 传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。 Rsync 本来是用于替代 rcp 的一个工具,目前由 https://www.doczj.com/doc/4214889275.html, 维护,所 以 rsync.conf 文件的格式类似于 samba 的主配置文件。Rsync 可以通过 rsh 或 ssh 使用,也能以 daemon 模式去运行,在以 daemon 方式运行时 Rsync server 会打开一个 873 端口,等待客户端去连接。连接时,Rsync server 会检查口令 是否相符,若通过口令查核,则可以开始进行文件传输。第一次连通完成时,会 把整份文件传输一次, 以后则就只需进行增量备份。 windows 下也有类似的软件, 就是 cwRsync 定期备份软件,此软件分为服务器端/客户端。rsync 有很多不同 的用法,我们在此文档中只介绍 rsync 的 deamon 模式 软件下载 https://www.doczj.com/doc/4214889275.html,/projects/sereds/files/cwRsync/ 目前最新版本为 4.2.0,我用的是比较老一点的 cwRsync_2.1.5 版本
的基本特点如下 如下: Rsync 的基本特点如下: 可以镜像保存整个目录树和文件系统。 可以很容易做到保持原来文件的权限、时间、软硬链接等等。 无须特殊权限即可安装。 优化的流程,文件传输效率高。 可以使用 rcp、ssh 等方式来传输文件,当然也可以通过直接的 socket 连接。 支持匿名传输,以方便进行网站镜象。
2

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
二、Rsync 同步算法
Rsync 只所以同步文件的速度相当快,是因为“Rsync 同步算法”能在很短 的时间内计算出需要备份的数据,关于 Rsync 的同步算法描述如下: 假定在 1 号和 2 号两台计算机之间同步相似的文件 A 与 B,其中 1 号对文件 A 拥有访问权,2 号对文件 B 拥有访问权。并且假定主机 1 号与 2 号之间的网络 带宽很小。那么 rsync 算法将通过下面的五个步骤来完成: 1、2 号将文件 B 分割成一组不重叠的固定大小为 S 字节的数据块,最后一 块可能会比 S 小。 2、 号对每一个分割好的数据块执行两种校验: 2 一种是 32 位的滚动弱校验, 另一种是 128 位的 MD4 强校验。 3、2 号将这些校验结果发给 1 号。 4、1 号通过搜索文件 A 的所有大小为 S 的数据块(偏移量可以任选,不一定 非要是 S 的倍数),来寻找与文件 B 的某一块有着相同的弱校验码和强校验码的 数据块。这项工作可以借助滚动校验的特性很快完成。 5、1 号发给 2 号一串指令来生成文件 A 在 2 号上的备份。这里的每一条指 令要么是对文件 B 经拥有某一个数据块而不须重传的证明,要么是一个数据块, 这个数据块肯定是没有与文件 B 的任何一个数据块匹配上的。
三、windows 下 swRsync 使用实例 swRsync
3.1、 3.1、服务端安装方法 >>>点击安装服务器版本文件 >>>点击安装服务器版本文件
>>>下一步 >>>下一步
3

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
>>>同意 >>>同意
>>>下一步 >>>下一步
>>>下一步 >>>下一步
4

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
>>>选择安装目录默认为 ----开始安装 >>>选择安装目录默认为 C 盘----开始安装 选择安装目录
5

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
>>>安装过程中会默认分配一个 用户和密码, >>>安装过程中会默认分配一个 SvcwRsync 用户和密码, 安装完成后系统会默认用这个用户来 安装完成后系统会默认用这个用户来启动 RsyncServer 服务 系统会默认用这个用户
>>>安装完成 >>>安装完成
6

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
>>>系统默认添加 用户和密码, >>>系统默认添加 SvcwRsync 用户和密码,隶属于 Administrator 组和 user 组
>>>我的电脑>>>管理>>>服务和应用程序>>>服务>>>找到 >>>我的电脑>>>管理>>>服务和应用程序>>>服务>>>找到 RsyncServer 服务 我的电脑>>>管理>>>服务和应用程序>>>服务>>>
7

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
>>>把 服务的启动类型设置为自动启动,并启动服务。 >>>把 RsyncServer 服务的启动类型设置为自动启动,并启动服务。
>>>RsyncServer 用户启动服务,不用管它。 >>>RsyncServer 服务默认会以 SvcwRsync 用户启动服务,不用管它。
8

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
>>>C 我们需要对此文件进行配置。 >>>CwRsync Server 的配置文件为 rsyncd.conf 我们需要对此文件进行配置。 开始>>>程序>>>cwRsync 开始>>>程序>>>cwRsync Server>>>rsyncd.conf >>>程序
>>>R 的模块, >>>Rsyncd.conf 默认配置会建一个 test 的模块, 我们只需要对此模块进行 修改就可以了,我们也可以把 删掉自己建立一个模块 自己建立一个模块。 修改就可以了,我们也可以把 test 删掉自己建立一个模块。当客户端向服务器 请求同步文件时,将会调用咱们设置的模块里边的信息。 请求同步文件时,将会调用咱们设置的模块里边的信息。
9

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
>>>编辑 >>>编辑 rsyncd.conf 文件
同步 C 盘目录下的 work 目录下的所有文件 关闭只读功能,允许客户端上传和下载文件 只允许 192.168.1.0 网段下的客户端同步文件 打开记录日志功能 验证用户为:Administrator 在 C 盘的根目录下用记事本建立一个 rsyncd.secrets 文 件 , 输 入 内 容 为 Administrator:123,服务器的用户名和密码 该文件用来验证客户端同步文件的真实性。
在 C 盘的根目录下用记事本 写入系统的用户名和密码, 保存为 rsyncd.secrets 文件, 该文件是用来验证客户端同 步文件的。提高了同步文件 的安全性。
设置服务器端需要同步的 文件为 C 盘根目录下的 work 文件夹下的所有文件
只需要输入 用户名和 密码就可以了
10
至此服务器端就设置好了, 接下来我们看一下客户端 的安装。

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
3.2、 3.2、客户端的安装方法
>>>下一步 >>>下一步
>>>我同意 >>>我同意
11

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
>>>下一步 >>>下一步
>>>选择安装的目录 >>>选择安装的目录
>>>安装成功 >>>安装成功
12

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
3.3、 3.3、文件同步详细方法说明 服务器端设置: 服务器端设置: 1、 、 安装的过程很简单直接下一步就可以, 其实 server 包括了 client 的功能。 的功能。 安装的过程很简单直接下一步就可以, 安装完 server 后,会在 service 中增加 RsyncServer 服务,进入服务管理, 设置为自动启动。安装成功后,要同步的文件目录必须加上 SvcwRsync 这个用 户可读权限或者把 SvcwRsync 用户加入 Administrator 组就可以了。 2、cwRsync 服务器配置 服务器配置 、 进入 cwRsync 安装目录,配置 rsyncd.conf 如下。 程序代码: port = 873 #默认端口是 873, 做了端口限制的要开启 cwRsync 所使用的端口。 use chroot = false strict modes = false hosts allow = * log file = rsyncd.log pid file = rsyncd.pid # Module definitions # Remember cygwin naming conventions : c:\work becomes /cygwin/c/work # [test] path = /cygdrive/c/work #服务器端需要共享的目录 read only = false #只读关闭,允许上传和下载 hosts allow = 192.168.1.0/255.255.255.0 #允许192.168.1.0网段的用户共享 transfer logging = yes #记录共享日志 auth users = Administrator #用Administrator验证用户 secrets file = /cygdrive/c/rsyncd.secrets #这里指定了验证用户名密码是在C盘的目录下的rsyncd.secrets文件,其内容 是文本编辑为Administrator:123 前面是用户名,后面是密码。
13

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
客户端设置: 客户端设置: 端设置 1、cwRsync 自动数据同步 、 因为只是最简单的数据同步,所以就不使用 ssh 了,直接启动 rsync 服务 就可以了。 在客户机上安装 cwRsync_Server_2.1.5_Installe 安装成功后需要建立两个文件 用文本新建一个 BAT 文件,data.bat,内容如下: 程序代码:
这个文件的意思为: "C:\Program Files\cwRsync\bin\rsync.exe" 运行 rsync.exe 文件启用 rsync 服务 -vrtopg 这个是运行参数, 可以查看下边的参数列表。 --progress 在程序执行的时候屏幕窗口上显示详细的运作信息,例如正在同步哪个文件, 速度多少。 --delete 客户端与服务器端同步文件将完全相一致,不一致的文件将会被删除。 请谨慎使用这条命令!! ! --password-file=/cygdrive/c/pwd.conf 用文本新建一个密码验证文件,pwd.conf,内容为验证用户的密码 跟服务器端一样,指定密码文件的路径,以便在自动运行的时候不用手动来输 入. 在 C 盘根目录下新建一个 pwd.txt 重命名成 pwd.conf 文件,只需要输入 Administrator 的用户名对应的密码就可以了, 我这里是 C 盘根目录下的 pwd.conf 文件。 (pwd.conf 是自己起的,可以自己设置,这个文件是用来验证密码的,只 要有验证用户的密码就可以了) Administrator@192.168.1.31::test /cygdrive/c/work 用 Administrator 用户访问 192.168.1.31 主机的 Rsync 服务器下的 test 模块 把所调用 rest 模块下需要同步的文件复制到客户端 C 盘的 work 目录下。实 现客户端和服务端的文件同步, 该设置是用来设置客户端从服务器下载文件来实 现文件同步的。 设置好了以后,双击该 daba.bat 文件看能不能进行文件同步。
14

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
如果想从客户端上传文件到服务器,实现文件同步可以这样设置 如果想从客户端上传文件到服务器,实现文件同步可以这样设置 data.bat 想从客户端上传文件到服务器
2、cwRsync 定期同步数据 、 在 windows 控制面板里,点计划任务,选中我们新建的 data.bat,按需要设 置自动运行。 后记: 这里配置的 cwRsync 是完全同步的, 服务器内容增加或删减, cwRsync 在 同步时,客户端同样增加或删减,所以每次同步时搜索文件时间会比较长。 我还得唠叨唠叨: 我还得唠叨唠叨: 服务端跟客户端的配置都完成了,可以试试执行。 如果出现任何什么错误最大一个可能第一是权限没弄好目录的,密码文件的。 第二就是配置有误,客户端的没跟服务器的对应好,账号或者存储目录名。 现在客户端所配置的选项是单向的数据上传同步。意思是检测服务端跟客户 端文件的差异,再决定要上传,更新服务器的哪些文件。如果客户端存在比服务 器多的文件,即上传。 如果客户端存在比服务器要新的文件,即覆盖。如果客 户端的文件相比服务器的要缺少,即跳过。 (不跳过也行!你可以在客户端参数中-vrtopg 的后边加入--delete 来实现同步 删除.慎用!!) 对了!还要说一说!.要注意路径的斜杠。很重要!!! /cygdrive/c/work/ 当前目录下边 /cygdrive/c/work Administrator@192.168.1.31::test 这个 work 后少了个斜杠!, 就会把 c:/ 盘下 work 文件同步到服务器当前目录 下边 c:/work 的文件内就是说他会再建一个文件夹。 常出现的错误: 错误 1: rsync: read error: Connection reset by peer (104) rsync error: error in rsync protocol data stream (code 12) at io.c(794) [receive r=3.0.2] 解决:很大可能是服务器端没有开启 rsync 服务。开启服务。 错误 2:@ERROR: chdir failed rsync error: error starting client-server protocol (code 5) at main.c(1495) [rec
15
Administrator@192.168.1.31::test
这个写法, 会吧 c:/ 盘下 work 文件夹下的所有文件都同步到服务器 c: /work

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
eiver=3.0.2] 解决:服务器端同步目录没有权限,cwrsync 默认用户是 Svcwrsync。为同步 目录添加用户 Svcwrsync 权限。 错误 3:@ERROR: failed to open lock file rsync error: error starting client-server protocol (code 5) at main.c(1495) [rec eiver=3.0.2] 解决:配置文件 rsync.conf 中添加 lock file = rsyncd.lock 即可解决。 3.4、 命令详细 详细参数说明 3.4、 Rsync 命令详细参数说明 -v, --verbose 详细模式输出 -q, --quiet 精简输出模式 -c, --checksum 打开校验开关,强制对文件传输进行校验 -a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等 于-rlptgoD -r, --recursive 对子目录以递归模式处理 -R, --relative 使用相对路径信息 -b, --backup 创建备份, 也就是对于目的已经存在有同样的文件名时, 将老的 文件重新命名为~filename。可以使用--suffix 选项来指定不同的备份文件前缀。 --backup-dir 将备份文件(如~filename)存放在在目录下。 -suffix=SUFFIX 定义备份文件前缀 -u, --update 仅仅进行更新,也就是跳过所有已经存在于 DST,并且文件时间 晚于要备份的文件。(不覆盖更新的文件) -l, --links 保留软链结 -L, --copy-links 想对待常规文件一样处理软链结 --copy-unsafe-links 仅仅拷贝指向 SRC 路径目录树以外的链结 --safe-links 忽略指向 SRC 路径目录树以外的链结 -H, --hard-links 保留硬链结 -p, --perms 保持文件权限 -o, --owner 保持文件属主信息 -g, --group 保持文件属组信息 -D, --devices 保持设备文件信息 -t, --times 保持文件时间信息 -S, --sparse 对稀疏文件进行特殊处理以节省 DST 的空间 -n, --dry-run 现实哪些文件将被传输 -W, --whole-file 拷贝文件,不进行增量检测 -x, --one-file-system 不要跨越文件系统边界 -B, --block-size=SIZE 检验算法使用的块尺寸,默认是 700 字节
16

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
-e, --rsh=COMMAND 指定使用 rsh、ssh 方式进行数据同步 --rsync-path=PATH 指定远程服务器上的 rsync 命令所在路径信息 -C, --cvs-exclude 使用和 CVS 一样的方法自动忽略文件, 用来排除那些不希望 传输的文件 --existing 仅仅更新那些已经存在于 DST 的文件, 而不备份那些新创建的文件 --delete 删除那些 DST 中 SRC 没有的文件 --delete-excluded 同样删除接收端那些被该选项指定排除的文件 --delete-after 传输结束以后再删除 --ignore-errors 及时出现 IO 错误也进行删除 --max-delete=NUM 最多删除 NUM 个文件 --partial 保留那些因故没有完全传输的文件,以是加快随后的再次传输 --force 强制删除目录,即使不为空 --numeric-ids 不将数字的用户和组 ID 匹配为用户名和组名 --timeout=TIME IP 超时时间,单位为秒 -I, --ignore-times 不跳过那些有同样的时间和长度的文件 --size-only 当决定是否要备份文件时,仅仅察看文件大小而不考虑文件时间 --modify-window=NUM 决定文件是否时间相同时使用的时间戳窗口, 默认为 0 -T --temp-dir=DIR 在 DIR 中创建临时文件 --compare-dest=DIR 同样比较 DIR 中的文件来决定是否需要备份 -P 等同于 --partial --progress 显示备份过程 -z, --compress 对备份的文件在传输时进行压缩处理 --exclude=PATTERN 指定排除不需要传输的文件模式 --include=PATTERN 指定不排除而需要传输的文件模式 --exclude-from=FILE 排除 FILE 中指定模式的文件 --include-from=FILE 不排除 FILE 指定模式匹配的文件 --version 打印版本信息 --address 绑定到特定的地址 --config=FILE 指定其他的配置文件,不使用默认的 rsyncd.conf 文件 --port=PORT 指定其他的 rsync 服务端口 --blocking-io 对远程 shell 使用阻塞 IO -stats 给出某些文件的传输状态 --progress 在传输时现实传输过程 --log-format=formAT 指定日志文件格式
17

Rsync 文件数据同步
https://www.doczj.com/doc/4214889275.html,/
--password-file=FILE 从 FILE 中得到密码 --bwlimit=KBPS 限制 I/O 带宽,KBytes per second -h, --help 显示帮助信息
18

数据库与数据库进行对接SQL同步不同数据库的表

//192.168.2.9中dbo.test_hr表中的數據拋入192.168.3.127中dbo.test insert into OA_TO_HR.FlowMaster.dbo.test(id,a,b,c,d) (select * from dbo.test_hr) //在192.168.2.9中刪除192.168.3.127中dbo.test表中的數據 delete from OA_TO_HR.FlowMaster.dbo.test //在192.168.2.9中查詢192.168.3.127中dbo.test表中的數據 select * from OA_TO_HR.FlowMaster.dbo.test //192.168.3.127中dbo.test表中的數據拋入192.168.2.9中dbo.test_hr insert into OA_HR.ESHR.dbo.test_hr(id,a,b,c,d) (select * from dbo.test) //在192.168.3.127中刪除192.168.2.9中dbo.test表中的數據 delete from OA_HR.ESHR.dbo.test_hr //在192.168.3.127中查詢192.168.2.9中dbo.test表中的數據 select * from OA_HR.ESHR.dbo.test_hr 1、建立數據庫鏈接 MSDTC 服務需開啟 組件服務中的安全配置頁中的網絡訪問勾選 2、新建作業 現方式為將2.9服務器中表i_test數據寫入到2.34 ivan_t表中 insert into srv_link.rldata.dbo.ivan_t(uid,uname) (select*from dbo.i_test) select*from srv_link.rldata.dbo.ivan_t delete from srv_link.rldata.dbo.ivan_t

通过触发器实现数据库的即时同步

通过触发器实现数据库的即时同步 --即时同步两个表的实例: --测试环境:SQL2000,远程主机名:xz,用户名:sa,密码:无,数据库名:test --创建测试表,不能用标识列做主键,因为不能进行正常更新 --在本机上创建测试表,远程主机上也要做同样的建表操作,只是不写触发器 if exists (select * from dbo.sysobjects where id = object_id(N'[test]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [test] create table test(id int not null constraint PK_test primary key ,name varchar(10)) go --创建同步的触发器 create trigger t_test on test for insert,update,delete as set XACT_ABORT on --启动远程服务器的MSDTC服务 exec master..xp_cmdshell 'isql /S"xz" /U"sa" /P"" /q"exec master..xp_cmdshell ''net start msdtc'',no_output"',no_output --启动本机的MSDTC服务 exec master..xp_cmdshell 'net start msdtc',no_output --进行分布事务处理,如果表用标识列做主键,用下面的方法 BEGIN DISTRIBUTED TRANSACTION delete from openrowset('sqloledb','xz';'sa';'',test.dbo.test) where id in(select id from deleted) insert into openrowset('sqloledb','xz';'sa';'',test.dbo.test) select * from inserted commit tran go --插入数据测试 insert into test select 1,'aa' union all select 2,'bb' union all select 3,'c' union all select 4,'dd' union all select 5,'ab' union all select 6,'bc' union all select 7,'ddd' --删除数据测试 delete from test where id in(1,4,6)

数据库同步

一个是远程SQLServer数据库,一个是本地SQLServer数据库 回答 验证码:换一张 登录并发表取消 回答 dhy40022008-11-18 10:15:22 下介绍实现复制的步骤。(以快照复制为例) 准备工作: 1.在发布服务器上,新建一个共享目录,做为发布的快照文件的存放目录,操作: 我的电脑--D:\ 新建一个目录,名为: PUB --右键这个新建的目录 --属性--共享 --选择"共享该文件夹"(另外还可以通过"权限"按纽来设置具体的用户权限 --确定 2.设置SQL代理(SQLSERVERAGENT)服务的启动用户 开始--程序--管理工具--服务 --右键SQLSERVERAGENT --属性--登陆--选择"此账户" --输入".\Administrator",或者选择其他系统管理员 --"密码"中输入该用户的密码 3.设置SQL Server身份验证模式,解决连接时的权限问题 企业管理器 --右键SQL实例--属性

--安全性--身份验证 --选择"SQL Server 和Windows" --确定 4.在发布服务器和订阅服务器上互相注册 企业管理器 --右键SQL Server组 --新建SQL Server注册... --下一步--可用的服务器中,输入你要注册的远程服务器名--添加 --下一步--连接使用,选择第二个"SQL Server身份验证" --下一步--输入用户名和密码 --下一步--选择SQL Server组,也可以创建一个新组 --下一步--完成 lixiaohui11520012008-11-20 10:29:07 假设你的远程SQLServer数据库和你的本地是局域网,不知道sqlServer里面有没有dblin k(oracle中有,oracle就是用DBLink实现数据库同步的)。 ai000052009-10-04 08:05:07 MSSQL数据同步利用数据库复制技术实现数据同步更新(来自网络,也是非常完美的教程) 复制的概念 复制是将一组数据从一个数据源拷贝到多个数据源的技术,是将一份数据发布到多个存储站点上的有效方式。使用复制技术,用户可以将一份数据发布到多台服务器上,从而使不同的服务器用户都可以在权限的许可的范围内共享这份数据。复制技术可以确保分布在不同地点的数据自动同步更新,从而保证数据的一致性。 SQL复制的基本元素包括 出版服务器、订阅服务器、分发服务器、出版物、文章 SQL复制的工作原理 SQLSERVER主要采用出版物、订阅的方式来处理复制。源数据所在的服务器是出版服务器,负责发表数据。出版服务器把要发表的数据的所有改变情况的拷贝复制到分发服务器,分发服务器包含有一个分发数据库,可接收数据的所有改变,并保存这些改变,再把这些改变分发给订阅服务器 SQLSERVER复制技术类型 SQLSERVER提供了三种复制技术,分别是: 1、快照复制(呆会我们就使用这个) 2、事务复制 3、合并复制

SQL SERVER 2008数据库同步复制

SQL Server 2008数据库复制实现数据库同步备份 SQL Server 2008数据库复制是通过发布/订阅的机制进行多台服务器之间的数据同步,我们把它用于数据库的同步备份。这里的同步备份指的是备份服务器与主服务器进行实时数据同步,正常情况下只使用主数据库服务器,备份服务器只在主服务器出现故障时投入使用。它是一种优于文件备份的数据库备份解决方案。 在选择数据库同步备份解决方案时,我们评估了两种方式:SQL Server 2008的数据库镜像和SQL Server 2008数据库复制。数据库镜像的优点是系统能自动发现主服务器故障,并且自动切换至镜像服务器。但缺点是配置复杂,镜像数据库中的数据不可见(在SQL Server Management Studio中,只能看到镜像数据库处于镜像状态,无法进行任何数据库操作,最简单的查询也不行。想眼见为实,看看镜像数据库中的数据是否正确都不行。只有将镜像数据库切换主数据库才可见)。如果你要使用数据库镜像,强烈推荐killkill写的SQL Server 2005 镜像构建手册,我们就是按照这篇文章完成了数据库镜像部署测试。 最终,我们选择了SQL Server 2008数据库复制。 下面通过一个示例和大家一起学习一下如何部署SQL Server 2008数据库复制。 测试环境:Windows Server 2008 R2 + SQL Server 2008 R2(英文版),两台服务器,一台主数据库服务器CNBlogsDB1,一台备份数据库服务器CNBlogsDB2。 复制原理:我们采用的是基于快照的事务复制。主数据库服务器生成快照,备份库服务器读取并加载该快照,然后不停地从主数据库服务器复制事务日志。见下图:

数据库实时同步技术解决方案

数据库实时同步技术解决方案 一、前言 随着企业的不断发展,企业信息化的不断深入,企业内部存在着各种各样的异构软、硬件平台,形成了分布式异构数据源。当企业各应用系统间需要进行数据交流时,其效率及准确性、及时性必然受到影响。为了便于信息资源的统一管理及综合利用,保障各业务部门的业务需求及协调工作,常常涉及到相关数据库数据实时同步处理。基于数据库的各类应用系统层出不穷,可能涉及到包括ACCESS、SQLSERVER、ORACLE、DB2、MYSQL等数据库。目前国内外几家大型的数据库厂商提出的异构数据库复制方案主要有:Oracle的透明网关技术,IBM的CCD表(一致变化数据表)方案,微软公司的出版者/订阅等方案。但由于上述系统致力于解决异构数据库间复杂的交互操作,过于大而全而且费用较高,并不符合一些中小企业的实际需求。 本文结合企业的实际应用实践经验,根据不同的应用类型,给出了相应的数据库实时同步应用的具体解决方案,主要包括: (1) SQLSERVER 到SQLSERVER 同步方案 (2) ORACLE 到SQLSERVER 同步方案 (3) ACCESS 到SQLSERVER/ORACLE 同步方案

二、异构数据库 异构数据库系统是相关的多个数据库系统的集合,可以实现数据的共享和透明访问,每个数据库系统在加入异构数据库系统之前本身就已经存在,拥有自己的DMBS。异构数据库的各个组成部分具有自身的自治性,实现数据共享的同时,每个数据库系统仍保有自己的应用特性、完整性控制和安全性控制。异构数据库的异构性主要体现在以下几个方面: 1、计算机体系结构的异构 各数据库可以分别运行在大型机、小型机、工作站、PC嵌入式系统中。 2、基础操作系统的异构 各个数据库系统的基础操作系统可以是Unix、Windows NT、Linux等。 3、DMBS本身的异构 可以是同为关系型数据库系统的Oracle、SQL Server等,也可以是不同数据模型的数据库,如关系、模式、层次、网络、面向对象,函数型数据库共同组成一个异构数据库系统。 三、数据库同步技术

数据库同步更新

数据库同步更新 一、两类方法实现数据库实时更新 1、简单表更新可通过创建触发器实现时时更新,如果数据量大的话,不建议此类。x 2、数据量大的话,可通过数据库复制技术实现。 二,方法概述: 复制是将数据或数据库对象从一个数据库复制和分发到另外一个数据库,并进行数据同步,从而使源数据库和目标数据库保持一致。使用复制,可以在局域网和广域网、拨号连接、无线连接和 Internet 上将数据分发到不同位置以及分发给远程或移动用户。 一组SQL SERVER2005复制有发布服务器、分发服务器、订阅服务器(图1 复制服务器之间的关系图)组成,他们之间的关系类似于书报行业的报社或出版社、邮局或书店、读者之间的关系。以报纸发行为例说明,发布服务器类似于报社,报社提供报刊的内容并印刷,是数据源;分发服务器相当于邮局,他将各报社的报刊送(分发)到订户手中;订阅服务器相当于订户,从邮局那里收到报刊。在实际的复制中,发布服务器是一种数据库实例,它通过复制向其他位置提供数据,分发服务器也是一种数据库实例,它起着存储区的作用,用于复制与一个或多个发布服务器相关联的特定数据。每个发布服务器都与分发服务器上的单个数据库(称作分发数据库)相关联。分发数据库存储复制状态数据和有关发布的元数据,并且在某些情况下为从发布服务器向订阅服务器移动的数据起着排队的作用。在很多情况下,一个数据库服务器实例充当发布服务器和分发服务器两个角色。这称为“本地分发服务器”。订阅服务器是接收复制数据的数据库实例。一个订阅服务器可以从多个发布服务器和发布接收 数据。 (图1) 复制有三种类:事务复制、快照复制、合并复制。

事务复制是将复制启用后的所有发布服务器上发布的内容在修改时传给订阅服务器,数据更改将按照其在发布服务器上发生的顺序和事务边界,应用于订阅服务器,在发布内部可以保证事务的一致性。快照复制将数据以特定时刻的瞬时状态分发,而不监视对数据的更新。发生同步时,将生成完整的快照并将其发送到订阅服务器。合并复制通常是从发布数据库对象和数据的快照开始,并且用触发器跟踪在发布服务器和订阅服务器上所做的后续数据更改和架构修改。订阅服务器在连接到网络时将与发布服务器进行同步,并交换自上次同步以来发布服务器和订阅服务器之间发生更改的所有行。 1、复制实例 这里以配置一个事务复制来说明复制配置过程。 试验在同一台机器的二个实例间进行,实例名分别是SERVER01、SERVER02 。将SERVER01配置发布服务器和分发服务器(也就是前面提到的“本地分发服务器”),SERVER02配置为 订阅服务器。在本例中将SERVER01中一个DBCoper库中person表作为发布的数据,在发布前请确保person表有主键、SQL SERVER 代理自动启动、发布数据库是日志是完整模式。第一步:完全备份SERVER01 DBCopy数据库,在SERVER02上恢复DBCopy数据库(复制前的同步,使用发布的源和目标数据一致) 第二步:在SERVER01上设置发布和分发A 在SERVER01的复制节点—>本地发布右键选择新建订阅(图2) ()(图2) B B 在新建发布向导中首先要求选择分发服务器,本例选择本机作为分发服务器,选择默认值。(图3)

实现两个数据库间表数据同步张金总结版

1,在目标机上建立Oracle DB Link: --在本地(目标机器)如下文件加入代码,连接到目标数据库上面1.1,在network/admin/tnsname.ora文件中加入源库的连接信息,如:AAA_10.5.1.3= (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.5.1.3)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = AAA) ) ) 说明: 10.5.1.3:源库ip AAA_10.5.1.3:创建的实例名(服务名)1,2,在目标机器上用sqlplus user/pwd 登录:目标机器(本地)的用户名和密码,不是源库机器的用户名和密码。 1.3,在本地机器(目标库)上用如下命令建立DB Link: create public database link AAA_LINK connect to user identified by pwd using 'AA A_10.5.1.3'; 命令说明: AAA_LINK:dblink的名称user:源库的用户名 pwd :源库的密码 AAA_10.5.1.3:配置的实例名(服务名)说明:CREATE PUBLIC DATABASE LINK 数据库链接名 CONNECT TO 用户名 IDENTIFIED BY 密码USING ‘本地配置的数据的实例名’;如果建立成功,会提示:Database link created.1.4--测试使用链接的数据库(表名@dblink名称) select * from FA_CARD@ AAA_LINK; 1.5创建一个测试表:在目标机器和原机器上都创建createtable dblink_test ( user_id NUMBER, user_name VARCHAR2(100) ); --在其中增加一条记录: insertinto dblink_test (user_id, user_name) values (1, '钟德荣');

两个数据库表数据实时同步(sql2008 触发器)

/****** Object: Trigger [dbo].[TR_C0T14] Script Date: 11/01/2011 13:21:04 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: <2011-11-01> -- Description: <两个数据库表数据实时同步> -- ============================================= --DROP TRIGGER TR_C0T14 CREATE TRIGGER [dbo].[TR_C0T14] ON [dbo].[C0T14] FOR INSERT,UPDATE,DELETE AS BEGIN IF NOT EXISTS(SELECT * FROM deleted) BEGIN /*插入*/ INSERT INTO leamon_test..C0T14 (RATINGID,[BROKER],BROKERRATE,SFRATE,SFVALUE,F_OP1,F_OP2,F_OPC1,F_OPC2,F_9997,f _9998) SELECT RATINGID,[BROKER],BROKERRATE,SFRATE,SFVALUE,F_OP1,F_OP2,F_OPC1,F_OPC2,F_9997,f_ 9998 FROM inserted WHERE NOT EXISTS (SELECT TOP 1 * FROM leamon_test..C0T14 WHERE inserted.RATINGID = leamon_test..C0T14.RATINGID) END /*删除*/ ELSE IF NOT EXISTS(SELECT * FROM inserted) DELETE FROM leamon_test..C0T14 WHERE RATINGID IN (SELECT RATINGID FROM deleted) ------- /*若两个主键关联删除表数据 ELSE IF NOT EXISTS(SELECT * FROM inserted) DELETE FROM [INPUT]..C1T30 WHERE EXISTS (SELECT 1 FROM deleted B WHERE [INPUT]..C1T30.F_CODE=B.F_CODE AND

数据中心同步平台建设方案

数据中心同步平台建设方案 第一章概述 1.1 平台建设背景 当前政府、企业的信息化的状况是,各政府和企业一般都设计和建设了属于机构、业务本身的应用、流程以及数据的信息处理系统,独立、异构、涵盖各自业务内容的信息处理系统,系统设计建设的时期不同、业务模式不同,信息化建设缺乏有效的总体规划,重复建设;缺乏统一的设计标准,大多数系统都是由不同的厂商在不同的平台上,使用不同的语言进行开发的,信息交互共享困难,存在大量的信息孤岛和流程孤岛。为了有效整合分散异构的信息资源,消除“信息孤岛”现象,提高政府和企业的信息化水平。宇思公司要开发的数据共享交换平台,主要目的是有效整合分散异构系统的信息资源,消除“信息孤岛”现象,提高政府和企业的信息化水平,灵活实现不同系统间的信息交换、信息共享与业务协同,加强信息资源管理,开展数据和应用整合,进一步发挥信息资源和应用系统的效能,提升信息化建设对业务和管理的支撑作用。 要求新构建的数据共享交换平台要遵循标准的、面向服务架构(SOA)的方式,基于先进的企业服务总线ESB技术,遵循先进技术标准和规范,为跨地域、跨部门、跨平台不同应用系统、不同数据库之间的互连互通提供包含提取、转换、传输和加密等操作的数据交换服务,实现扩展性良好的“松耦合”结构的应用和数据集成;同时

要求数据共享交换平台,能够通过分布式部署和集中式管理架构,可以有效解决各节点之间数据的及时、高效地上传下达,在安全、方便、快捷、顺畅的进行信息交换的同时精准的保证数据的一致性和准确性,实现数据的一次 数据共享交换平台-设计方案 采集、多系统共享;要求数据交换平台节点服务器适配器的可视化配置功能,可以有效解决数据交换平台的“最后一公里”问题,快速实现不同机构、不同应用系统、不同数据库之间基于不同传输协议的数据交换与信息共享,为各种应用和决策支持提供良好的数据环境。要求数据共享交换平台能够把各种纷繁复杂的数据系统集成在一起完成特定业务,提供同构数据、异构数据之间的数据抽取、格式转换、内容过滤、内容转换、同异步传输、动态部署、可视化管理监控等方面功能,支持的数据包括各主流数据库(如Oracle、SQL Server、MySQL等)、地理空间数据(如卫星影像、矢量数据)、常规文件(word、excel、pdf)等各种格式,并可以根据用户需求定制开发特定业务服务。 1.2 应用场景 场景一:中国科学院电子学研究所的信息交换需求 实现各个数据中心间的数据库层面的数据共享交换,各中心之间是双向的、实时的数据交换,各数据节点的数据库是同构的数据库系统(即Oracle),数据的类型是基于数据库表格的规则数据,字段类型包含BLOB字段类型。目前各数据节点的数据结构(表)是相同的,主要是一表对一表的数据交换,数据抽取和过滤需求比较简单。目前数据共享交换是通过Oracle GoldenGate数据库同步工具来

数据库同步技术解决方案.doc

数据库同步技术解决方案 ----数据库发布订阅SqlServer数据库同步是项目中常用到的环节,若一个项目中的数据同时存在于不同的数据库服务器中,而这些数据库需要被多个不同的网域调用时,配置SqlServer数据库同步是个比较好的解决方案。SqlServer数据库同步的配置比较烦锁,下面对其配置详细步骤进行介绍: 一、数据复制前提条件 1. 数据库故障还原模型必需为完全还原模型。 2. 所有被同步的数据表都必须要用主键。 3. 发布服务器、分发服务器和订阅服务器必须使用计算机名称来进行SQLSERVER服务器的注册。 4. SQLSERVER必需启动代理服务,且代理服务必需以本地计算机的帐号运行。 二、解决前提条件实施步骤 1. 将数据库故障还原模型调整为完全还原模型。具体步骤如下: 打开SQLSERVER企业管理器>选择对应的数据库>单击右键选择属性.>选择”选项”>恢复模式选‘完整’。 2. 所有被同步的数据表都必须要有主键。(主要指事务复制)如果没有主键的数据表,增加一个字段名称为id,类型为int 型,标识为自增1的字段。 3. 发布服务器、分发服务器和订阅服务器必须使用计算机名称来进行SQLSERVER服务器的注册。 在企业管理器里面注册的服务器,如果需要用作发布服务器、分发服务器和订阅服务器,都必需以服务器名称进行注册。不得使用IP地址以及别名进行注册,比如LOCAL, “.”以及LOCALHOST等。

4.如果非同一网段或者远程服务器,需要将其对应关系加到本地系统网络配置文件中。文件的具体位置在%systemroot%\system32\drivers\etc\hosts 配置方式: 用记事本打开hosts文件,在文件的最下方添加IP地址和主机名的对应关系。如图:

数据库同步技术分析

数据实时同步或抽取上收的技术分析(社保、电力营销、财政、税务征管、公安警务等地市数据省级大集中应用/异地灾备) 收藏 1 实现数据集中的技术手段分析比较 根据业界提供数据同步或抽取的解决方案来看,主要包括以下几大类: l 存储复制技术 l 数据库复制技术 l ETL抽取技术 1.1 存储复制技术 实现原理 存储复制技术主要由磁盘阵列复制技术、主机卷复制技术以及一些文件复制技术。 存储复制方案的技术核心是利用存储阵列自身的盘阵对盘阵的数据块复制技术实现对生产数据的远程拷贝,从而实现生产数据的灾难保护。在主数据中心发生灾难时,可以利用灾备中心的数据在灾备中心建立运营支撑环境,为业务继续运营提供IT支持。同时,也可以利用灾备中心的数据恢复主数据中心的业务系统,从而能够让企业的业务运营快速回复到灾难发生前的正常运营状态。 基于存储的复制方案有两种方式:同步方式和异步方式,说明如下:同步方式,可以做到主/备中心磁盘阵列同步地进行数据更新,应用系统的I/O写入主磁盘阵列后(写入Cache中),主磁盘阵列将利用自身的机制(如EMC的SRDF/S)同时将写I/O写入后备磁盘阵列,后备磁盘阵列确认后,主中心磁盘阵列才返回应用的写操作完成信息。异步方式,是在应用系统的I/O写入主磁盘阵列后(写入Cache中),主磁盘阵列立即返回给主机应用系统“写完成”信息,主机应用可以继续进行读、写I/O操作。同时,主中心磁盘阵列将利用自身的机制(如EMC的SRDF/A)将写I/O写入后备磁盘阵列,实现数据保护。采用同步方式,使得后备磁盘阵列中的数据总是与生产系统数据同步,因此当生产数据中心发生灾难事件时,不会造成数据丢失。为避免对生产系统性能的影响,同步方式通常在近距离范围内(FC连接通常是200KM范围内,实际用户部署多在35KM左右)。而采用异步方式应用程序不必等待远程更新的完成,因此远程数据备份的性能的影响通常较小,所以一般可以到100KM左右。 采用基于存储数据复制技术建设复制方案的必要前提是: l 通常必须采用同一厂家的存储平台,通常也必须是同一系列的存储产品,给用户的存储平台选择带来一定的限制。 l 复制中心的主机平台也需要和生产中心为相同类型。 l 采用同步方式可能对生产系统性能产生影响,而且对通信链路要求较

两台电脑数据库同步

SQL code --定时同步服务器上的数据 --例子: --测试环境,SQL Server200 0,远程服务器名:xz,用户名 为:sa,无密码,测试数据库: test --服务器上的表(查询分析 器连接到服务器上创建) create table[user](id i nt primary key,number va rchar(4),name varchar(1 0)) go --以下在局域网(本机操作) --本机的表,state说明:nul l 表示新增记录,1 表示修 改过的记录,0 表示无变化 的记录 if exists (select*from dbo.sysobjects where id =object_id(N'[user]') and OBJECTPROPERTY(id, N 'IsUserTable') =1) drop table[user] GO create table[user](id i nt identity(1,1),number varchar(4),name varchar (10),state bit) go --创建触发器,维护state 字段的值 create trigger t_state o n[user] after update as update[user]set state= 1 from[user] a join inser ted b on a.id=b.id where a.state is not nul l go --为了方便同步处理,创建 链接服务器到要同步的服务 器 --这里的远程服务器名为:x z,用户名为:sa,无密码if exists(select1from master..sysservers where srvname='srv_lnk') exec sp_dropserver ' srv_lnk','droplogins' go exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB ','xz' exec sp_addlinkedsrvlogi n 'srv_lnk','false',nul l,'sa' go --创建同步处理的存储过程 if exists (select*from dbo.sysobjects where id =object_id(N'[dbo].[p_ synchro]') and OBJECTPRO PERTY(id, N'IsProcedure ') =1) drop procedure[db o].[p_synchro] GO create proc p_synchro as --set XACT_ABORT on --启动远程服务器的MSDTC 服务 --exec master..xp_cmdshe ll 'isql /S"xz" /U"sa" / P"" /q"exec master..xp_c mdshell ''net start msdt c'',no_output"',no_outpu t --启动本机的MSDTC服务 --exec master..xp_cmdshe ll 'net start msdtc',no_ output --进行分布事务处理,如果 表用标识列做主键,用下面 的方法 --BEGIN DISTRIBUTED TRAN SACTION --同步删除的数据 delete from srv_lnk. test.dbo.[user] where id not in (select id from[user]) --同步新增的数据 insert into srv_lnk. test.dbo.[user] select id,number,nam e from[user]where stat e is null --同步修改的数据 update srv_lnk.test. dbo.[user]set number=b.number, name=https://www.doczj.com/doc/4214889275.html, from srv_lnk.test.db o.[user] a join[user] b on a.id= b.id where b.state=1 --同步后更新本机的标 志 update[user]set st ate=0where isnull(stat e,1)=1 --COMMIT TRAN go --创建作业,定时执行数据 同步的存储过程 if exists(SELECT1from msdb..sysjobs where name ='数据处理') EXECUTE msdb.dbo.sp_ delete_job @job_name='数 据处理' exec msdb..sp_add_job @j ob_name='数据处理' --创建作业步骤 declare@sql varchar(80 0),@dbname varchar(250) select@sql='exec p_sync hro'--数据处理的命 令 ,@dbname=db_name() --执行数据处理 的数据库名 exec msdb..sp_add_jobste p @job_name='数据处理', @step_name='数据同 步', @subsystem='TSQL', @database_name=@dbna me,

Oracle DataGuard数据同步技术及配置详解

Oracl e DataGuard数据同步技术及配置详解 一、DataGuard数据同步技术 DataGuard是Oracle数据库自带的数据同步功能,基本原理是将日志文件从原数据库传输到目标数据库,然后在目标数据库上应用(Apply)这些日志文件,从而使目标数据库与源数据库保持同步。DataGuard提供了三种日志传输(Redo Transport)方式,分别是ARCH传输、LGWR同步传输和LGWR异步传输。在上述三种日志传输方式的基础上,提供了三种数据保护模式,即最大性能(Maximum Performance Mode)、最大保护(Maximum Protection Mode)和最大可用(Maximum Availability Mode),其中最大保护模式和最大可用模式要求日志传输必须用LGWR同步传输方式,最大性能模式下可用任何一种日志传输方式。 最大性能模式:这种模式是默认的数据保护模式,在不影响源数据库性能的条件下提供尽可能高的数据保护等级。在该种模式下,一旦日志数据写到源数据库的联机日志文件,事务即可提交,不必等待日志写到目标数据库,如果网络带宽充足,该种模式可提供类似于最大可用模式的数据保护等级。 最大保护模式:在这种模式下,日志数据必须同时写到源数据库的联机日志文件和至少一个目标库的备用日志文件(standby redo log),事务才能提交。这种模式可确保数据零丢失,但代价是源数据库的可用性,一旦日志数据不能写到至少一个目标库的备用日志文件(standby redo log),源数据库将会被关闭。这也是目前市场上唯一的一种可确保数据零丢失的数据同步解决方案。 最大可用模式:这种模式在不牺牲源数据库可用性的条件下提供了尽可能高的数据保护等级。与最大保护模式一样,日志数据需同时写到源数据库的联机日志文件和至少一个目标库的备用日志文件(standby redo log),事务才能提交,与最大保护模式不同的是,如果日志数据不能写到至少一个目标库的备用日志文件(standby redo log),源数据库不会被关闭,而是运行在最大性能模式下,待故障解决并将延迟的日志成功应用在目标库上以后,源数据库将会自动回到最大可用模式下。 根据在目标库上日志应用(Log Apply)方式的不同,DataGuard可分为Physical Standby(Redo Apply)和Logical Standby(SQL Apply)两种。 Physical Standby数据库,在这种方式下,目标库通过介质恢复的方式保持与源数据库同步,这种方式支持任何类型的数据对象和数据类型,一些对数据库物理结构的操作如数据文件的添加,删除等也可支持。如果需要,Physical Standby 数据库可以只读方式打开,用于报表查询、数据校验等操作,待这些操作完成后再将数据库置于日志应用模式下。 Logical Standby数据库,在这种方式下,目标库处于打开状态,通过LogMiner 挖掘从源数据库传输过来的日志,构造成SQL语句,然后在目标库上执行这些

不同数据库之间的实时同步

最近一段时间前单位的同事问我有什么方法可以实现不同数据库之间表数据的同步,起初我告诉他可以用DATAGURAD,STREAM,物化视图等技术手段实现。但他告诉我需要同步数据的表并不多(有3-5张表需要同步)。我就想通过编写触发器实现要更为简单一些。通过几天的努力终于实现。通过一些简单的测试感觉效果还可以,特总结一下奉献给大家。之前论坛里有人问过此类问题,但很多高手都说可以用触发器实现,可是没有给出具体的实现方法。可能他们认为非常easy,呵呵!在这里我帖出实现的具体方法和触发器的代码给当前有此需求的兄弟。将来可能有此需求的兄弟可以将此作为备选方案,参考一下也可以。同时请论坛里的高手多指点,多给出改进意见。如果这篇文章对大家的工作有一定的帮助,那么希望大家能多给于支持。谢谢!我将把大家的支持化作持续、深入学习ORACLE的动力。 现在假设有两个数据库A,B,B库中的备用表需要和A库中的住表同步数据。主表和备用表表名相同(也可以不同),都叫a 1。首先建立在A库所在的机器建立访问B库的网络服务名prod,用NET-MANAGER完成 2。创建PUBLIC DATABASE LINK,先不指定用户名和密码 CREATE PUBLIC DATABASE LINK prod USING 'prod' 注意: 'prod'表示第1步中创建的网络服务名,以sys/system用户创建 3。在需要访问远程数据库用户下创建私有DATABASE LINK(同PUBLIC DATABASE LINK名称相同),要具有CREATE DATABASE LINK权限。指定用户和密码 CREATE DATABASE LINK prod CONNECT TO scott IDENTIFIED BY tiger 注意:scott用户必须在B库中存在且指定相应的密码,和这里给出的密码要一致。 4。创建触发器 a表为实验表,表结构为user_id number(3) username varchar2(20) 更新或插入主表记录时和备份表同步数据的触发器,其中表a是主表,a@prod是备份表,即B库中的a表 create or repalce trigger sync_data1 after insert or update on a begin merge into a@prod t2 using a t1 on( https://www.doczj.com/doc/4214889275.html,er_id=https://www.doczj.com/doc/4214889275.html,er_id) when matched then update set https://www.doczj.com/doc/4214889275.html,ername=https://www.doczj.com/doc/4214889275.html,ername when not matched then insert (https://www.doczj.com/doc/4214889275.html,er_id,https://www.doczj.com/doc/4214889275.html,ername) values(https://www.doczj.com/doc/4214889275.html,er_id,https://www.doczj.com/doc/4214889275.html,ername) end sync_data1; 删除主表记录时和备份表同步数据的触发器,其中a是主表,a@prod是备份表,即B库中的a表 create or replace trigger sync_data2 after delete on a begin delete from a@prod

SQL数据库同步工具使用说明

本系统分为客户端和服务器两个部分,其中客户端承担了系统绝大数事务,服务器只是简单的执行客户端传送的命令,属于典型的C/S胖客户端瘦服务器模式。这样设计的目的是为了减轻服务器的压力,让系统更加流畅。 客户端负责采集分布数据库中的数据,然后汇总到服务器。客户端需要配置的数据库连接字符串是指分布数据库的连接字符串,连接成功后才可以向主数据库同步数据。例如,有A、B、C三个分布数据库,需要把数据汇总到D数据库,那么需要三个客户端,分别连接A、B、C数据库,客户端运行在哪无所谓,只要能连接数据库即可。 主页说明

主页显示一些公共信息。 程序启动日期有助于您分析日志同步状况; 扫描引擎、同步引擎是本系统两大核心引擎,扫描引擎负责获取分布数据库的数据变动,同步引擎负责向服务器发送需要同步的数据。如果数据库连接字符串未设置,引擎不会开启,否则,引擎自动开启,无需人工干预。 数据库占用空间是指程序本地的SQLite数据库占用空间,由于长期使用会有大量日志信息,占用过大空间会使程序效率降低,可以及时清理。清理界面如下: 选择好要清除的日志类型,然后选择日期,提交后会清除该日期之前的所有记录。 活动日志说明

该页面可以查询程序的活动状况,以日期查询可以显示某个日期的记录。 程序活动日志是扫描记录,详细记录了扫描信息。 程序同步活动日志是同步记录,详细记录了同步信息。 同步说明 同步界面用来配置需要同步的表和同步时间,如果已经配置数据库连接字符串,将会显示数据库中的所有表,用户可根据需要选择要同步的表。 在要同步的表列表中,如果表间有外键约束,一定要把主表靠前排列。 同步时间即何时同步数据,用户可根据实际需要选择闲时同步,建议多个客户端选择不同的时间段同步,避免冲突。支持多个时间,以逗号分隔,24小时制表示,时间格式举例:20:33,22:12。 成功提交设置后,会自动开启扫描引擎和同步引擎。 参数设定说明

达梦数据同步软件DMHS技术白皮书V2.0

达梦数据同步软件DMHS 技术白皮书 达梦数据库有限公司 DM DATABASE CO.,LTD

目录 1.概述 (2) 2.DMHS产品特点 (3) 体系结构高可扩展 (3) 确保业务系统高可用 (3) 高效的数据实时同步 (3) 高可靠的数据传输 (4) 可读写的备机系统 (4) 数据同步内容可定制 (5) 轻量级设计实现快捷部署 (5) 跨平台软硬件支持 (5) 3.DMHS典型应用场景 (5) 应急灾备系统 (6) 提高资源利用率,实现多业务中心 (7) 提供实时异构资源信息整合新方案 (8) 改进数据仓库架构 (9) 数据迁移、滚动升级 (10) 1.概述 达梦数据同步软件(DMHS:Heterogeneous database Synchronization for DM)是达梦公司推出的新一代支持异构环境的高性能、高可靠、高可扩展数据库实时同步系统。该产品基于成熟的关系数据模型和标准接口,跨越多种软硬件平台,支持强大而灵活的拓扑结构,能以极少的系统开支实现秒级数据实时同步,可广泛应用于应急系统、容灾备份、负载均衡、数据移植、联机维护、订阅分发、多业务中心等业务领域。 随着信息化建设的高速发展,信息系统已经成为企业维持业务运转的关键,企业迫切需要提高信息系统的可用性,保证业务的连续性,最大限度地减少因灾难或故障所带来的损失。另一方面,多样化的业务类型导致数据访问需求的日趋复杂化,数据量的急剧攀升也导致数据库服务器不堪重负,企业同样迫切需要提高信息系统的运行效率。 达梦数据同步软件DMHS,通过秒级数据实时同步可以有效避免传统备份系统导致的无法完全满足企业对于信息系统不中断服务的问题;通过变化日志捕捉可以有效降低传统ETL工具因创建触发器、影子表等对业务系统带来的性能影响;通过可读写的备机数据库系统可以解决传统备机系统仅作为后备而无法对外提

相关主题
文本预览
相关文档 最新文档