linux

位置:IT落伍者 >> linux >> 浏览文章

UNIX设置MySql数据同步 实现复制功能


发布日期:2020年03月26日
 
UNIX设置MySql数据同步 实现复制功能

mysql从版本以后提供数据库复制功能利用该功能可以实现两个数据库同步主从模式互相备份模式的功能

数据库同步复制功能的设置都在mysql的设置文件中体现mysql的配置文件(一般是f)

在unix环境下在/etc/mysql/f 或者在mysql用户的home目录下面的f

window环境中如果c:根目录下有f文件则取该配置文件当运行mysql的winmysqladminexe工具时候该工具会把 c:根目录下的f 命名为mycnfbak并在winnt目录下创建myinimysql服务器启动时候会读该配置文件所以可以把f中的内容拷贝到 myini文件中用myini文件作为mysql服务器的配置文件

设置方法

设置范例环境

操作系统window professional

mysqlbetamaxntlog

A ip:

B ip:

A:设置

增加一个用户最为同步的用户帐号

GRANT FILE ON ** TO backup@ IDENTIFIED BY

增加一个数据库作为同步数据库

create database backup

B:设置

增加一个用户最为同步的用户帐号

GRANT FILE ON ** TO backup@ IDENTIFIED BY

增加一个数据库作为同步数据库

create database backup

主从模式A>B

A为master

修改A mysql的myini文件在mysqld配置项中加入下面配置

serverid=

logbin

#设置需要记录log 可以设置logbin=c:mysqlbakmysqllog 设置日志文件的目录

#其中mysqllog是日志文件的名称mysql将建立不同扩展名文件名为mysqllog的几个日志文件

binlogdodb=backup #指定需要日志的数据库

重起数据库服务

用show master status 命令看日志情况

B为slave

修改B mysql的myini文件在mysqld配置项中加入下面配置

serverid=

masterhost=

masteruser=backup #同步用户帐号

masterpassword=

masterport=

masterconnectretry= 预设重试间隔

replicatedodb=backup 告诉slave只做backup数据库的更新

重起数据库

用show slave status看同步配置情况

注意由于设置了slave的配置信息mysql在数据库目录下生成

所以如有要修改相关slave的配置要先删除该文件否则修改的配置不能生效

双机互备模式

如果在A加入slave设置在B加入master设置则可以做B>A的同步

在A的配置文件中 mysqld 配置项加入以下设置

masterhost=

masteruser=backup

masterpassword=

replicatedodb=backup

masterconnectretry=

在B的配置文件中 mysqld 配置项加入以下设置

logbin=c:mysqllogmysqllog

binlogdodb=backup

注意当有错误产生时*err日志文件同步的线程退出当纠正错误后要让同步机制进行工作运行slave start

重起AB机器则可以实现双向的热备

测试

向B批量插入大数据量表AA()条

A数据库每秒钟可以更新条数据

上一篇:Eclipse用户中使用Linux的数量赶超Windows

下一篇:linux Shell学习笔记最后一节,温故与知新