搭建mysql master-slave replication

[MYSQL] 搭建mysql master-slave replication
本篇文章记录了如何搭建一个master-

slave 架构的mysql数据库服务器,一般用于读写分离的场景下:master for INSERT/UPDATE/DELETE,slave for SELECT。
根据实战结果,在master-connect-retry=5的情况下,基本可以做到读写同步(可 以打开slave的log文件来观察同步结果:tail -f /var/run/mysql/mysql.log)

基本信息

    主库:192.168.1.1
    从库:192.168.1.2
    数据文件存放位置:/data/mysql
    待同步数据库:除了mysql、test库以外的所有数据库

一、设置 MASTER

1、修改my.cnf

    #vi /etc/my.cnf
    server-id=1
    log-bin
    binlog-ignore-db=mysql
    binlog-ignore-db=test

2、赋予SLAVE 权限帐号,允许用户在MASTER上LOAD TABLE和LOAD DATA

    mysql> GRANT FILE,SELECT,REPLICATION SLAVE ON *.* TO slave@192.168.1.2 IDENTIFIED BY ‘password’;

3、锁主库表

    mysql> FLUSH TABLES WITH READ LOCK;

4、显示 主库信息

记录File和Position,从库设置将会用到

    mysql> SHOW MASTER STATUS;
    +—————+———-+————–+——————+
    | File          | Position | Binlog_do_db | Binlog_ignore_db |
    +—————+———-+————–+——————+
    | hathor-bin.001 | 79   |              | mysql,test         |
    +—————+———-+————–+——————+

5、 打包主库

    # cd /data
    # tar cvfz db.tar.gz db/

二、设置 SLAVE

1、把数据库文件部署到slave服务器

    # cd /data
    # scp 192.168.1.1:/data/db.tar.gz
    # tar xvfz db.tar.gz

2、解锁主库表

    mysql> UNLOCK TABLES;

3、查看修改数据库文件夹权限

    # chown mysql:mysql syncdb -R

4、修改my.cnf

    # vi /etc/my.cnf
    server-id=2
    master-host=192.168.1.1
    master-user=slave
    master-password=password
    master-port=3306
    #Controls the retry interval. The default is 60 seconds.
    master-connect-retry=5

Trouble Shoot

Mysql 5到这一步一般就ok了,如果遇到问题再看下面的

如果报错跟Position相关的错误,再手动设置一下 File/Position信息
设置连接MASTER MASTER_LOG_FILE为主库的File,MASTER_LOG_POS 为主库的Position

    mysql> CHANGE MASTER TO MASTER_HOST=’192.168.1.1′,
    MASTER_USER=’slave’,
    MASTER_PASSWORD=’password’,
    MASTER_LOG_FILE=’mysql-bin.001′,
    MASTER_LOG_POS=79;

启 动SLAVE服务

    mysql> slave start;

查看SLAVE状态

    mysql> SHOW SLAVE STATUS;

Q:为何找不到binlog文件?
A:mysql会把binlog、log、errorlog放在与–pid-file相同的 目录
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值