MySQL主从同步部署总结


操作环境

主:192.168.1.124

从:192.168.1.125

mysql-5.0.56.tar.gz CentOS5.2

数据库1/data/3306/  数据库2/data/3307/

1、修改主库my.cnf

============================

# vi /etc/my.cnf

server-id = 1

log-bin

============================

2、重启主库生效

=======================

#/data/3306/mysql stop

#/data/3306/mysql start

=======================

3、登陆主库

================================

#mysql -uroot -p -S /data/3306/mysql.sock

================================

4、赋予从库权限账号,允许用户在主库上LOAD TABLELOAD DATA

====================================================================

mysql> GRANT FILE,SELECT,REPLICATION SLAVE ON *.* TO repl@192.168.1.125 IDENTIFIED BY '123456';

====================================================================

5、检查创建是否成功

====================================================================

select user,host from mysql.user;

================================================

6、锁主库表

===========================

mysql> FLUSH TABLES WITH READ LOCK;

===========================

7、显示主库信息

记录FilePosition,从库设置将会用到

=====================

mysql> SHOW MASTER STATUS;

=====================

+---------------+----------+--------------+------------------+

| File          | Position | Binlog_do_db | Binlog_ignore_db |

+---------------+----------+--------------+------------------+

| mysql-bin.030 | 870279   |              |                  |

+---------------+----------+--------------+------------------+

 

8、另开一个终端登陆124,打包主库迁移数据

============================

# cd /data/3306

# tar zcvf data124.tar.gz  ./data

============================

 

 

二、设置从库

1、传输拿到主库包、解包

==============================

登陆从库

#cd /..

#rz //a.tar.gz上传

#tar zxvf a.tar.gz //解压 

==============================

2、解锁主库表

=================

mysql> UNLOCK TABLES;

=================

3、修改从库my.cnf

====================

# vi my.cnf

# slave

server-id=2

====================

4、重启从库生效

=====================

#/data/3306/mysql stop

#/data/3306/mysql start

=====================

5、验证连接主库

============================

# mysql -h192.168.1.124 -urepl -p123456

mysql> show grants for repl@192.168.1.125;

============================

6、在从库上设置同步

设置连接MASTER MASTER_LOG_FILE为主库的FileMASTER_LOG_POS为主库的Position

=============================

change master to master_host='192.168.1.124', master_user='repl', master_password='123456', master_log_file='mysql-bin.030', master_log_pos=870279;

=============================

7、启动从库服务

===========================

mysql> slave start;

===========================

8、检查从库状态

===========================

show slave status \G

=========================

若是两个yes则启动成功!

 

 

 

判断从数据库同步状态。

mysql -uroot –p123456 -e "show slave status\G" | sed -n '/Yes/'p | wc -l

mysql -uroot -p'123456' -S /data/3307/mysql.sock -e "show slave status\G" | sed -n '/Yes/'p | wc -l

=2为正常。

 

生产例子:

mysql slave记录binlog方法

Vi my.cnf

log-slave-updates

log-bin = /data/3307/mysql33-bin

expire_logs_days = 7

相关内容