mysql从3.23.15版本以后提供数据库复制功能。利用该功能可以实现两个数据库同步,主从模式,互相备份模式的功能。数据库同步复制功能的设置都在mysql的设置文件中体现。
mysql的配置文件(一般是my.cnf) 在unix环境下在/etc/mysql/my.cnf 或者在mysql用户的home目录下面的my.cnf。
window环境中,如果c:根目录下有my.cnf文件则取该配置文件。当运行mysql的winmysqladmin.exe工具时候,该工具会把c:根目录下的my.cnf 命名为mycnf.bak。并在winnt目录下创建my.ini。mysql服务器启动时候会读该配置文件。所以可以把my.cnf中的内容拷贝到my.ini文件中,用my.ini文件作为mysql服务器的配置文件。
设置方法:
设置范例环境:
操作系统:window2000 professional
mysql:4.0.4-beta-max-nt-log
A ip:10.10.10.22
B ip:10.10.10.53
A:设置
1.增加一个用户最为同步的用户帐号:
< >
2.增加一个数据库作为同步数据库:
B:设置
1.增加一个用户最为同步的用户帐号:
GRANT FILE ON *.* TO backup@'10.10.10.22' IDENTIFIED BY ‘1234’
|
2.增加一个数据库作为同步数据库:
主从模式:A->B A为master 修改A mysql的my.ini文件。在mysqld配置项中加入下面配置:
server-id=1
log-bin
#设置需要记录log 可以设置log-bin=c:mysqlbakmysqllog 设置日志文件的目录,
#其中mysqllog是日志文件的名称,mysql将建立不同扩展名,文件名为mysqllog的几个日志文件。
binlog-do-db=backup #指定需要日志的数据库
|
重起数据库服务。 用show master status 命令看日志情况。 B为slave 修改B mysql的my.ini文件。在mysqld配置项中加入下面配置:
server-id=2
master-host=10.10.10.22
master-user=backup #同步用户帐号
master-password=1234
master-port=3306
master-connect-retry=60 预设重试间隔60秒
replicate-do-db=backup 告诉slave只做backup数据库的更新
|
重起数据库 用show slave status看同步配置情况。 注意:由于设置了slave的配置信息,mysql在数据库目录下生成master.info 所以如有要修改相关slave的配置要先删除该文件。否则修改的配置不能生效。 双机互备模式。 如果在A加入slave设置,在B加入master设置,则可以做B->A的同步。 在A的配置文件中 mysqld 配置项加入以下设置:
master-host=10.10.10.53
master-user=backup
master-password=1234
replicate-do-db=backup
master-connect-retry=10
|
在B的配置文件中 mysqld 配置项加入以下设置:
log-bin=c:mysqllogmysqllog
binlog-do-db=backup
|
注意:当有错误产生时*.err日志文件。同步的线程退出,当纠正错误后要让同步机制进行工作,运行slave start
重起AB机器,则可以实现双向的热备。
测试:
向B批量插入大数据量表AA(1872000)条
A数据库每秒钟可以更新2500条数据。
分享到:
相关推荐
在从节点上,`master-host`、`master-user`、`master-password`、`master-port`等配置用于指定连接主节点的参数,`replicate-do-db`则指定了从节点只同步特定数据库的更新。 2. 双机互备: 在双机互备模式下,两台...
【MySQL数据库同步】 在当前数字化时代,MySQL数据库的同步至关重要,因为它们承载着大量关键业务数据。MySQL是一个广泛应用的开源关系型数据库管理系统,尤其在中小型企业及网站中颇为流行,因其小巧、快速、成本...
mysql数据库同步canal框架分享PPT mysql数据库同步canal框架分享PPT
首先,**数据库同步**指的是将一个数据库中的数据更新复制到另一个数据库的过程。这通常用于备份、灾难恢复或者在分布式系统中保持数据一致性。数据库同步可以是异步的,也可以是同步的,取决于对延迟和数据一致性的...
双向同步意味着两个数据库都可以作为源和目标,数据更新可以在两个方向上流动;单向同步则是指数据只在一个方向上移动,比如从SQL Server到MySQL,或者反过来。 实现SQL Server与MySQL的同步,可以采用以下几种技术...
同步当前数据库和服务器数据库的数据,使得两个数据库的数据一致,这个属于sql的高级应用,相信对你们都很有用处,也可以对你们的数据库能用有所提示,是一篇比较好的资料,由于该资料是本人开发的,所以希望尊重...
在开发环境中,有时需要在两台MySQL数据库之间实现数据同步,以确保数据的一致性和冗余。本教程将详细介绍如何在两台运行相同系统(FreeBSD 5.4)和软件(Apache 2.0.55、PHP 4.4.0、MySQL 4.1.15)的服务器上配置...
2. **双向同步**:不仅支持从 `SQL Server` 到 `MySQL` 的数据迁移,也支持反向操作,确保双数据库系统的数据都能及时更新。 3. **冲突解决**:在同步过程中可能出现的冲突,工具会提供策略来自动或手动解决。 4. **...
h2 数据库导入 MySQL 数据库 h2 数据库导入 MySQL 数据库是指将 h2 数据库中的数据导入到 MySQL 数据库中,以便更好地存储和管理数据。下面将详细介绍 h2 数据库导入 MySQL 数据库的步骤。 首先,需要创建一个 ...
MYSQL数据库大进级,是非常全面的MYSQL数据库进阶学习资料!
SyncNavigator是一款功能强大的数据库同步软件,适用于SQL SERVER, MySQL,具有自动/定时同步数据、无人值守、故障自动恢复、同构/异构数据库同步、断点续传和增量同步等功能,支持Windows xp以上所有操作系统,适用...
两个MySQL数据库之间同步表结构及索引模式
传统的MySQL同步通常涉及主从复制,即一个主数据库负责写操作,多个从库进行读操作并接收主库的更新。然而,这个场景中提到的同步方法似乎更进一步,不仅支持单个数据库的同步,还能同时处理多个数据库,并且可以...
4. **数据同步和迁移**:工具提供了数据和结构同步功能,可以帮助用户比较并更新不同数据库之间的差异。同时,数据迁移功能可以将数据从一个数据库迁移到另一个数据库,如从测试环境迁移到生产环境。 5. **备份和...
"国家开放大学 MySQL数据库应用实验训练1 在MySQL中创建数据库和表" 本实验训练旨在让学生掌握 MySQL 中的数据库和表的创建过程。 MySQL 是一种关系型数据库管理系统,广泛应用于各种领域。为提高学生的实践能力,...
2. **创建同步数据库:** ```sql CREATE DATABASE backup; ``` 3. **修改配置文件my.ini(在A服务器上):** - 添加如下配置: ``` [mysqld] server-id = 1 log-bin # 或者更具体地指定日志路径和名称 # ...
在MySQL数据库间进行增量同步,我们关注的是捕获和应用自上次同步以来新插入或更新的记录。 下面是一个使用Kettle进行MySQL增量同步的详细步骤教程: 1. **创建数据库连接**: - 在Kettle的Spoon界面中,创建新的...