mysql数据库同步问题

mysql数据库同步问题,第1张

昏。楼上所说的所有方法,统统不适用于楼主的情况。

楼主你也是没经验吧。你要及时同步做什么。你的测试服务器不修改数据么?不修改表结构么?你修改了怎么可能还从生产上同步过来。

最好最简单的一种方法,就是逻辑导出和落导入。而且支持跨版本。

具体的方法就是,在你的生产数据库上执行

exp userid=system/password file=expdmp log=explog statistics=none buffer=800000 full=y

这样就生成了一个叫expdmp的导出文件。此时需要注意你的环境变量,包括NLS之类的。如果你懂了就看下一步,否则自己去研究一下。如果没看清到时候出了乱码别怪我。

把那个expdmp拷贝到你的测试服务器上去,然后在同一个目录下执行

imp userid=system/password file=expdmp log=implog statistics=none

buffer=800000 full=y

做完就可以了,你的测试库就和生产库同步了。相同用户密码一样。

这才是最简单最行之有效的数据库同步办法。

当然,如果是我我现在还喜欢用热备份直接恢复。也很好很强大。可惜不能跨平台跨版本。

你按照教程做吧,可以的。创建一个同步项目

安装完成后会有两个图标:

1 点击 "SyncNavigator (客户端)" 图标进入系统。

2 在登录界面中输入连接到的服务器地址,点击 "确定" 按钮开始连接。

注意:这里不是登陆您的数据库,而是登陆到本软件的管理端。

默认情况下直接点击 "连接" 按钮即可(本机默认已经安装)。

默认服务器登录用户名为 "admin" 密码为空。

本机服务器地址为 127001 。

您可以使用域名或者IP地址作为服务器地址。

3 切换到 "同步管理" 面板中点击 "新建" 按钮开始创建同步项目。

4 首先切换到 "来源数据库" 选项卡。填写同步的来源数据库信息。 (存放需要同步数据的数据库叫做来源数据库)

一般情况下只需要输入数据库地址,数据库名称,登录用户名,登录密码。

数据库地址: 来源数据所在机器的地址。可以是域名或者IP地址。

数据库名称: 来源数据库名称。如果已经指定了默认的登录数据库可以为空。

登录用户名: 登录数据库服务器使用的用户名。如果需要使用Windows账户登录请变更 "登录方式"

连接测试: 测试输入的信息是否正确。如果连接失败则会返回具体错误信息。

5 切换到 "目标数据库" 选项卡。以相同的方式填写同步的目标数据库。

目标数据可以像来源数据库那样选择已有的数据库,也可以通过本软件创建一个新的数据库,选择已有数据库步骤大致同上,新建数据库步骤如下:

您只需要创建一个新的目标数据库,软件会自动创建最大兼容的表结构。

如果您希望目标数据库与来源数据库表结构完全一致,您只需要在目标数据库创建一个空表结构即可。

当您使用 MySQL 作为来源数据库时,同步的表至少需要一个主键。

目标数据库不应包含外键约束,因为它可能导致部分数据无法同步。

如果您的目标数据库与来源数据库结构(如字段类型,约束)不兼容,这可能导致部分数据无法同步。

假设您设置来源库为 19216812 ,设置目标数据库为 19216813, 那么数据将从19216812 同步到 19216813。如果您的方向设置错误,可能会导致数据被覆盖。

6 切换到 "同步内容设置" 选项卡。选择需要同步的数据库表。

如果需要设置每个表的具体内容可以点击 "详细设置" 按钮进行调整。

您可以设置条件过滤。比如只查询评分大于90的表记录,或者隐藏不需要同步的字段。

如果在这一个步骤未勾选任何表则不会同步任何内容。

7 点击 "确定"按钮完成项目设置。

8 切换到 "总控制台" 面板中选择需要开始同步的项目。点击 "开始" 按钮即可开始数据库同步。

自动同步数据库数据

使用 HKROnlineSyncNavigator 自动同步数据库数据。与谷歌日历、Hotmail日历等的 *** 作非常类似,您只需要设置同步任务执行的时间系统便能在指定的时间自动运行。

1 在 "同步管理"面板中选择需要设置的项目,点击 "修改" 按钮开始设置。

2 切换到 "计划调度设置" 选项卡,点击 "新建" 按钮新建一个运行计划。

3 指定需要运行的时间。设置完成后点击 "确定" 按钮完成设置。

开始日期: 计划开始的时间。可以设置为以后的一个时间点表示未来执行。

一次: 只执行一次同步任务。执行完成后此计划立即失效。

每天: 每天都在指定的时间运行。如果需要在每天都运行多次,请勾选 "重复任务" 复选框并设置间隔周期。

每周: 每周按照指定的时间运行。如果不需要在指定的时间运行可以取消具体的时间复选框。

过期日期: 任务将在指定的时间过期。过期后的任务不再被执行。

使用这个计划: 表示该计划是否有效。如果取消此复选框计划任务将不再被执行。

4 点击 "确定"按钮保存当前设置。

预计下次运行时间 列显示了同步任务下次自动运行的时间。

启动/停止服务端服务

1 点击 "SyncNavigator(客户端)" 图标进入系统。

2 在登录界面中点击 "取消" 按钮后点击 "本地服务" 按钮。

2 打开界面后,图中绿色区域显示当前服务的启动状态。点击区域内按钮可以切换服务状态为 "启动" 或"停止"。

已启动: 服务端已经启动。可以正常运行数据库同步任务并处理客户端命令。

已停止: 服务端已经停止。所有的同步任务不会被运行,并不再处理客户端的命令。

SQL Server 自动同步到MySQL

本文章将向您介绍如何将数据从SQL Server 自动或定时同步到 MySQL 数据库(或从 MySQL 自动或同步到 SQL Server 数据库)。只需通过几个步骤即可轻松实现。

1 在 "同步管理"面板中点击 "新建" 按钮创建同步项目。

2 首先切换到 "来源数据库" 选项卡。填写同步的来源数据库信息。

数据库类型选择 SQL Server 2000 / 2005 /2008

3 切换到 "目标数据库" 选项卡。以相同的方式填写同步的目标数据库。

数据库类型选择 Mysql 41 50 51 54 55

当您从 MySQL 同步到 SQL Server 时,每张表至少需要一个主键(从 SQL Server 到 MySQL 不需要)

4 切换到 "同步内容设置" 选项卡。选择需要同步的数据库表。

5 切换到 "计划调度设置" 选项卡,新建一个运行计划。

如果需要自动同步(如24小时不间断)则选择自动。

如果需要定时同步,则点击对应的选项。

6 点击 "确定",设置成功!

注意:当您使用软件自动创建表结构,从MySQL同步到 SQL Server 可能出现的问题:

1 MYSQL 的 DateTime 类型,可能存在 '0001-1-10:0:0' 值,与SQL Server 的 DateTime取值范围不兼容,需要将 SQL Server 的

DateTime 类型修改为 DateTime2。

2 MySQL 的UTF-8 字符集数据库,同步到 SQL Server 时,可能需要将 SQL Server 的 varchar 类型需要修改为 nvarchar 类型。

提升数据库同步速度和性能

SyncNavigator 默认的同步项目配置仅适合中小型的数据库。当您需要对大型,超大型数据库进行同步时,进行以下设置可以明显的提高数据库同步速度。

1 在 "同步管理"面板中选择需要设置的项目,点击 "修改" 按钮开始设置。

2 切换到 "同步参数设置" 选项卡。

参数介绍:

自动优化网络传输吞吐量: 允许软件根据表结构动态调节同步时的传输数据量。建议勾选。

轮询检索缓存大小: 当您使用大型数据库时,建议设置为2048或以上。

数据接收缓存大小: 当您使用大型数据库时,建议设置为2048或以上。

BLOB类型缓存大小: 当您使用大型数据库时,建议设置为50或以上。

缓存数据库结构: 当您正式部署项目后,可以勾选此选项以提高同步速度。

对超大型数据库进行优化: 当您正式部署项目后,可以勾选此选项以提高同步速度。

SyncNavigator的功能这篇博客就介绍这么多,还有很多功能就不一一列出了,留给有需要的同志一些自己探索的机会。希望此博客能够对和我有同样需求的人一点点帮助,那么就不白写啦!

不同服务器数据库之间的数据 *** 作 --创建链接服务器 exec sp_addlinkedserver 'ITSV ', '', 'SQLOLEDB ', '远程服务器名或ip地址 'exec sp_addlinkedsrvlogin 'ITSV ', 'false ',null, '用户名 ', '密码'--查询示例 selectfrom ITSV数据库名dbo表名 --导入示例 selectinto 表from ITSV数据库名dbo表名 --以后不再使用时删除链接服务器 exec sp_dropserver 'ITSV ', 'droplogins '--连接远程/局域网数据(openrowset/openquery/opendatasource) --1、openrowset --查询示例 selectfromopenrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码',数据库名dbo表名) --生成本地表 selectinto 表fromopenrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码',数据库名dbo表名) --把本地表导入远程表 insertopenrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码',数据库名dbo表名) selectfrom 本地表 --更新本地表 update b set b列A=a列A fromopenrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码',数据库名dbo表名)as a innerjoin 本地表 b on acolumn1=bcolumn1 --openquery用法需要创建一个连接 --首先创建一个连接创建链接服务器 exec sp_addlinkedserver 'ITSV ', '', 'SQLOLEDB ', '远程服务器名或ip地址 '--查询selectFROMopenquery(ITSV, 'SELECT FROM 数据库dbo表名 ') --把本地表导入远程表 insertopenquery(ITSV, 'SELECT FROM 数据库dbo表名 ') selectfrom 本地表 --更新本地表 update b set b列B=a列B FROMopenquery(ITSV, 'SELECT FROM 数据库dbo表名 ') as a innerjoin 本地表 b on a列A=b列A --3、opendatasource/openrowset SELECTFROMopendatasource( 'SQLOLEDB ', 'Data Source=ip/ServerName;User ID=登陆名;Password=密码 ' )testdboroy_ta --把本地表导入远程表 insertopendatasource( 'SQLOLEDB ', 'Data Source=ip/ServerName;User ID=登陆名;Password=密码 ')数据库dbo表名 selectfromSQL code 用强制订阅实现数据库同步 *** 作 大量和批量的数据可以用数据库的同步机制处理: // 说明:为方便 *** 作,所有 *** 作均在发布服务器(分发服务器)上 *** 作,并使用推模式在客户机器使用强制订阅方式。 有疑问联系作者:zlp321001@hotmailcom 测试通过 //--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 是否插入了一条新的记录 测试完毕,通过。

sql同步使用dblink同步数据。

具体参考实例:

1、在win下创建linux的DBLINK

a查看linux下的tnsnamesora文件

[oracle@myrac1 admin]$ cat tnsnamesora

# tnsnamesora Network Configuration File: /s01/app/oracle/product/1120/dbhome_1/network/admin/tnsnamesora

# Generated by Oracle configuration tools

HJJ =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = myrac1oraclecom)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = hjj)

)

)

b创建dblink

SQL> create database link win_lin_link connect to hjj identified by xxxx

2 using '(DESCRIPTION =

3 (ADDRESS = (PROTOCOL = TCP)(HOST = 1921681171)(PORT = 1521))

4 (CONNECT_DATA =

5 (SERVER = DEDICATED)

6 (SERVICE_NAME = hjj)

7 )

8 )'

9 /

Database link created

2在win下创建trigger

SQL> create or replace trigger trig_win_emp

2 after insert on emp

3 for each row

4 begin

5 insert into emp@win_lin_link values(:newempno,:newempname,:newempsalary);

6 end;

7 /

Trigger created

3测试

4结果

win下插入数据

SQL> insert into emp values('E001','LYN',2300);

1 row created

SQL>COMMIT;

Commit complete

SQL> select from emp;

EMPNO EMPNAME EMPSALARY

---------------------------------------- ---------------------------------------- ----------

E001 LYN 2300

SQL> select from emp@win_lin_link;

EMPNO EMPNAME EMPSALARY

---------------------------------------- ---------------------------------------- ----------

E001 LYN 2300

linux下查看数据

SQL> select from emp;

EMPNO EMPNAME EMPSALARY

-------------------- -------------------- ----------

E001 LYN 2300

回答1:再次同步只会同步变化的数据。因此不必担心数据量大的问题

回答2:可以测试一次发布/订阅所需要的总体时间,建议同步时间比这个总时间略大

回答3:发布订阅无法做到实时同步。如需实时同步,可尝试做日志传送、镜像,这两种可以达到用户感官上的实时同步

浙一和浙二是指浙江省一号和浙江省二号两个卫星。这两个卫星的主要任务是进行地球观测和遥感测量,包括监测自然灾害、地表覆盖变化、城市建设等。虽然浙一和浙二都属于浙江省卫星应用工程中心,但它们并不直接进行数据同步。

浙一和浙二在数据采集和处理上有一定的区别。浙一主要对地表进行高分辨率的遥感监测,数据主要用于环境监测和资源调查。浙二则主要对全球气象、海洋、环境等进行探测,数据主要用于气象预报和环保研究。因此,浙一和浙二的数据处理和应用也存在一定的差别。

虽然浙一和浙二的数据不会直接同步,但它们都会将采集到的数据上传到卫星应用工程中心,经过处理后用于各种领域的应用。在数据处理和应用过程中,两个卫星的数据可能会进行交叉应用和协同处理,以实现更加精准的监测和预测。

以上就是关于mysql数据库同步问题全部的内容,包括:mysql数据库同步问题、怎样同步两个SQLSERVER的数据、oracle数据库同步等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10138603.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存