当前位置:Gxlcms > mysql > [备忘]mysqlMasterSlave主从同步(复制)配置及常见问题

[备忘]mysqlMasterSlave主从同步(复制)配置及常见问题

时间:2021-07-01 10:21:17 帮助过:10人阅读

今天用到的了这块儿的内容,服务器之间做数据同步,准备两台服务器,一台做Master,一台slave。 服务器环境:Ubuntu 10.04 64位 Server; 确保两台服务器的MYSQL版本一致,需要同步的库等一致; 一、设置Master服务器: 1,编辑Mysql配置文件 vi /etc/mysql/

今天用到的了这块儿的内容,服务器之间做数据同步,准备两台服务器,一台做Master,一台slave。
服务器环境:Ubuntu 10.04 64位 Server;
确保两台服务器的MYSQL版本一致,需要同步的库等一致;

一、设置Master服务器:
1,编辑Mysql配置文件

vi /etc/mysql/my.cnf

2,打开后,在 [mysqld]加入以下信息:

[mysqld]
log-bin=mysql-bin   //启用二进制日志
server-id=71        //服务器唯一ID

3,重启Mysql:

/etc/init.d/mysql restart

4,登录Mysql,创建slave同步账户:

GRANT REPLICATION SLAVE ON *.* to 'backuser'@'192.168.1.190' identified by 'backuserpwd'; 
flush privileges;

@后面的IP为指定的备份服务器IP,安全起见只允许该IP连接。
5,查看主服务器Master状态

show master status;

记住查询到的值:

二、配置slave从服务器
前三步配置跟Master的一样:
1,编辑Mysql配置文件

vi /etc/mysql/my.cnf

2,打开后,在 [mysqld]加入以下信息:

[mysqld]
log-bin=mysql-bin   //启用二进制日志
server-id=72       //服务器唯一ID,这里的ID跟Master的不能相同,

3,重启Mysql:

/etc/init.d/mysql restart

4,更改slave信息:

change master to master_host='192.168.1.193',master_user='backuser',master_password='backuserpwd',master_log_file='mysql-bin.000006',master_log_pos=20555,Master_Port=3301;

上面语句中master_log_file=’mysql-bin.000006′,master_log_pos=20555为上一步记住的值,Master_Port的值默认是3306,一般可以不用跟上,修改过的就写上吧~
5,启动slave:

slave start;     //停止则为stop;

6,查看slave状态:

show slave status\G;

结果中以下两条为Yes则说明成功:

Slave_IO_Running: Yes
Slave_SQL_Running: Yes

接着在主服务器数据库中添加数据测试下吧~
本身挺简单的,我写得比较详细,一步一步列出来。

若无法连接数据库,切记检查配置文件中以下内容是否被注释掉,前加#:

bind-address        = 127.0.0.1

人气教程排行