数据库间同步
㈠ 数据库怎么实现数据同步
不同服务器数据库之间的数据操作 --创建链接服务器 exec sp_addlinkedserver 'ITSV ', '', 'SQLOLEDB ', '远程服务器名或ip地址 'exec sp_addlinkedsrvlogin 'ITSV ', 'false ',null, '用户名 ', '密码'--查询示例 select*from ITSV.数据库名.dbo.表名 --导入示例 select*into 表from ITSV.数据库名.dbo.表名 --以后不再使用时删除链接服务器 exec sp_dropserver 'ITSV ', 'droplogins '--连接远程/局域网数据(openrowset/openquery/opendatasource) --1、openrowset --查询示例 select*fromopenrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码',数据库名.dbo.表名) --生成本地表 select*into 表fromopenrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码',数据库名.dbo.表名) --把本地表导入远程表 insertopenrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码',数据库名.dbo.表名) select*from 本地表 --更新本地表 update b set b.列A=a.列A fromopenrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码',数据库名.dbo.表名)as a innerjoin 本地表 b on a.column1=b.column1 --openquery用法需要创建一个连接 --首先创建一个连接创建链接服务器 exec sp_addlinkedserver 'ITSV ', '', 'SQLOLEDB ', '远程服务器名或ip地址 '--查询select*FROMopenquery(ITSV, 'SELECT * FROM 数据库.dbo.表名 ') --把本地表导入远程表 insertopenquery(ITSV, 'SELECT * FROM 数据库.dbo.表名 ') select*from 本地表 --更新本地表 update b set b.列B=a.列B FROMopenquery(ITSV, 'SELECT * FROM 数据库.dbo.表名 ') as a innerjoin 本地表 b on a.列A=b.列A --3、opendatasource/openrowset SELECT*FROMopendatasource( 'SQLOLEDB ', 'Data Source=ip/ServerName;User ID=登陆名;Password=密码 ' ).test.dbo.roy_ta --把本地表导入远程表 insertopendatasource( 'SQLOLEDB ', 'Data Source=ip/ServerName;User ID=登陆名;Password=密码 ').数据库.dbo.表名 select*fromSQL code 用强制订阅实现数据库同步操作 大量和批量的数据可以用数据库的同步机制处理: // 说明:为方便操作,所有操作均在发布服务器(分发服务器)上操作,并使用推模式在客户机器使用强制订阅方式。 有疑问联系作者:[email protected] 测试通过 //--1:环境服务器环境: 机器名称: ZehuaDb 操作系统:Windows 2000 Server 数据库版本:SQL 2000 Server 个人版 客户端机器名称:Zlp 操作系统:Windows 2000 Server 数据库版本:SQL 2000 Server 个人版 --2:建用户帐号在服务器端建立域用户帐号我的电脑管理->本地用户和组->用户->建立UserName:zlp UserPwd:zlp --3:重新启动服务器MSSQLServer我的电脑->控制面版->管理工具->服务->MSSQLServer 服务 (更改为:域用户帐号,我们新建的zlp用户 ./zlp,密码:zlp) --4:安装分发服务器A:配置分发服务器工具->复制->配置发布、订阅服务器和分发->下一步->下一步(所有的均采用默认配置) B:配置发布服务器工具->复制->创建和管理发布->选择要发布的数据库(SZ)->下一步->快照发布->下一步-> 选择要发布的内容->下一步->下一步->下一步->完成C:强制配置订阅服务器(推模式,拉模式与此雷同) 工具->复制->配置发布、订阅服务器和分发->订阅服务器->新建->SQL Server数据库->输入客户端服务器名称(ZLP)->使用SQL Server 身份验证(sa,空密码)->确定->应用->确定D:初始化订阅复制监视器->发布服务器(ZEHUADB)->双击订阅->强制新建->下一步->选择启用的订阅服务器->ZLP-> 下一步->下一步->下一步->下一步->完成--5:测试配置是否成功复制监视器->发布服务器(ZEHUADB)->双击SZ:SZ->点状态->点立即运行代理程序查看:复制监视器->发布服务器(ZEHUADB)->SZ:SZ->选择ZLP:SZ(类型强制)->鼠标右键->启动同步处理如果没有错误标志(红色叉),恭喜您配置成功 --6:测试数据 --在服务器执行:选择一个表,执行如下SQL insertinto WQ_NEWSGROUP_S select'测试成功',5 复制监视器->发布服务器(ZEHUADB)->SZ:SZ->快照->启动代理程序 ->ZLP:SZ(强制)->启动同步处理 去查看同步的 WQ_NEWSGROUP_S 是否插入了一条新的记录 测试完毕,通过。
㈡ 多数据库之间同步数据怎么做
如果是同一种数据库的话,你同步的数据表结构是否相同,如果也相同的话,完全可以利用数据库的同步复制机制来解决;(做主从) 如果表结构不相同的话,如果不在应用层处理的话,有两种方式参考: 1,A推数据给B;A有数据的时候,实时或非实时(采用event或trigger)将数据推到B中,B再做处理; 2,B从A拉数据,用一个event(mysql中的job)定时从A中拉数据然后进行处理; 另外可以选择在应用层来做,这个我就不多介绍了,根据业务逻辑coding就行了。 由于不清楚你的业务特点,所以无法进一步的帮你分析。
㈢ 如何实现两个数据库的同步
不同服务器数据库之间的数据操作 --创建链接服务器 exec sp_addlinkedserver 'ITSV ', '', 'SQLOLEDB ', '远程服务器名或ip地址 'exec sp_addlinkedsrvlogin 'ITSV ', 'false ',null, '用户名 ', '密码'--查询示例 select*from ITSV.数据库名.dbo.表名 --导入示例 select*into 表from ITSV.数据库名.dbo.表名 --以后不再使用时删除链接服务器 exec sp_dropserver 'ITSV ', 'droplogins '--连接远程/局域网数据(openrowset/openquery/opendatasource) --1、openrowset --查询示例 select*fromopenrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码',数据库名.dbo.表名) --生成本地表 select*into 表fromopenrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码',数据库名.dbo.表名) --把本地表导入远程表 insertopenrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码',数据库名.dbo.表名) select*from 本地表 --更新本地表 update b set b.列A=a.列A fromopenrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码',数据库名.dbo.表名)as a innerjoin 本地表 b on a.column1=b.column1 --openquery用法需要创建一个连接 --首先创建一个连接创建链接服务器 exec sp_addlinkedserver 'ITSV ', '', 'SQLOLEDB ', '远程服务器名或ip地址 '--查询select*FROMopenquery(ITSV, 'SELECT * FROM 数据库.dbo.表名 ') --把本地表导入远程表 insertopenquery(ITSV, 'SELECT * FROM 数据库.dbo.表名 ') select*from 本地表 --更新本地表 update b set b.列B=a.列B FROMopenquery(ITSV, 'SELECT * FROM 数据库.dbo.表名 ') as a innerjoin 本地表 b on a.列A=b.列A --3、opendatasource/openrowset SELECT*FROMopendatasource( 'SQLOLEDB ', 'Data Source=ip/ServerName;User ID=登陆名;Password=密码 ' ).test.dbo.roy_ta --把本地表导入远程表 insertopendatasource( 'SQLOLEDB ', 'Data Source=ip/ServerName;User ID=登陆名;Password=密码 ').数据库.dbo.表名 select*fromSQL code 用强制订阅实现数据库同步操作 大量和批量的数据可以用数据库的同步机制处理: // 说明:为方便操作,所有操作均在发布服务器(分发服务器)上操作,并使用推模式在客户机器使用强制订阅方式。 有疑问联系作者:[email protected] 测试通过 //--1:环境服务器环境: 机器名称: ZehuaDb 操作系统:Windows 2000 Server 数据库版本:SQL 2000 Server 个人版 客户端机器名称:Zlp 操作系统:Windows 2000 Server 数据库版本:SQL 2000 Server 个人版 --2:建用户帐号在服务器端建立域用户帐号我的电脑管理->本地用户和组->用户->建立UserName:zlp UserPwd:zlp --3:重新启动服务器MSSQLServer我的电脑->控制面版->管理工具->服务->MSSQLServer 服务 (更改为:域用户帐号,我们新建的zlp用户 ./zlp,密码:zlp) --4:安装分发服务器A:配置分发服务器工具->复制->配置发布、订阅服务器和分发->下一步->下一步(所有的均采用默认配置) B:配置发布服务器工具->复制->创建和管理发布->选择要发布的数据库(SZ)->下一步->快照发布->下一步-> 选择要发布的内容->下一步->下一步->下一步->完成C:强制配置订阅服务器(推模式,拉模式与此雷同) 工具->复制->配置发布、订阅服务器和分发->订阅服务器->新建->SQL Server数据库->输入客户端服务器名称(ZLP)->使用SQL Server 身份验证(sa,空密码)->确定->应用->确定D:初始化订阅复制监视器->发布服务器(ZEHUADB)->双击订阅->强制新建->下一步->选择启用的订阅服务器->ZLP-> 下一步->下一步->下一步->下一步->完成--5:测试配置是否成功复制监视器->发布服务器(ZEHUADB)->双击SZ:SZ->点状态->点立即运行代理程序查看:复制监视器->发布服务器(ZEHUADB)->SZ:SZ->选择ZLP:SZ(类型强制)->鼠标右键->启动同步处理如果没有错误标志(红色叉),恭喜您配置成功 --6:测试数据 --在服务器执行:选择一个表,执行如下SQL insertinto WQ_NEWSGROUP_S select'测试成功',5 复制监视器->发布服务器(ZEHUADB)->SZ:SZ->快照->启动代理程序 ->ZLP:SZ(强制)->启动同步处理 去查看同步的 WQ_NEWSGROUP_S 是否插入了一条新的记录 测试完毕,通过。
㈣ 2个数据库表之间及时同步
看你问题补充说的应该有2太数据库服务器吧? 可以做数据库集群双机互备啊! 网络方面如果服务器有多网口网线也可以做成互备的。
㈤ 怎么在不同数据库之间进行同步数据
怎么在不同数据库之间进行同步数据
数据库A和数据库B是建立在两台独立的数据库服务器上,回那么采答用dblink方式是一种可行的方式,存在两个数据同步过程:
一、数据库A正常运行的时候需要将数据同步到备用库即数据库B;
二、数据库A不正常的时候启用数据库B,在数据库A恢复正常之前的数据更新都发生在数据库B,那么需要将数据库B的数据同步给数据库A。
第一种方式:前提是数据库A和数据库B本地网是24小时互通的同时对数据同步实时性有比较高的要求,那么可以建立DBLINK,在两个库都建触发器,不管当前在哪个库发生数据更新的时候实时同步数据到目标数据库;
㈥ 如何解决多数据库之间同步问题
如果是同一种数据库的话,你同步的数据表结构是否相同,如果也相同的话,完全可以利内用数据库的容同步复制机制来解决;(做主从)
如果表结构不相同的话,如果不在应用层处理的话,有两种方式参考:
1,A推数据给B;A有数据的时候,实时或非实时(采用event或trigger)将数据推到B中,B再做处理;
2,B从A拉数据,用一个event(mysql中的job)定时从A中拉数据然后进行处理;
另外可以选择在应用层来做,这个我就不多介绍了,根据业务逻辑coding就行了。
由于不清楚你的业务特点,所以无法进一步的帮你分析。
㈦ 如何实现两个数据库之间的表数据同步
首先你要说明一下这2个数据库是什么关系
数据库集群,那么 AB 两库是 镜像 还是 互备,内当然,根据数据容库 品牌不同,同步的方式也不一样,不过都可以通过安装过程和建立 数据库实例中的配置 来实现
数据库之间通过其他可控程序连接,那么,该情况下,需要数据可能出现延迟等,不推荐
数据库之间没有连接,但是都由同一个节点进行数据下发,那么就在这个节点上实现一个跨库事物控制就行了
㈧ 多个数据库间的数据同步,各位都使用什么方
首先你要说明一下这2个数据库是什么关系
数据库集群,那么 AB 两库是 镜像 还是 互备,当然,根据数据库 品牌不同,同步的方式也不一样,不过都可以通过安装过程和建立 数据库实例中的配置 来实现
数据库之间通过其他可控程序连接,那么,该情况下,需要数据可能出现延迟等,不推荐
数据库之间没有连接,但是都由同一个节点进行数据下发,那么就在这个节点上实现一个跨库事物控制就行了