• 一个mysql主从复制的配置案例


    环境说明

    主库是111.111.111.110 从库为111.111.111.111

    1.  主库创建数据库复制专用用户

    --在主库上执行,创建用户repl

     1 [mysqld]
     2 
     3 datadir=/var/lib/mysql
     4 
     5 socket=/var/lib/mysql/mysql.sock
     6 
     7 user=mysql
     8 
     9 log-bin=mysql-bin
    10 
    11 old_passwords=1
    12 
    13 server_id = 110
    14 
    15 sync_binlog = 1
    16 
    17 relay_log = /var/lib/mysql/mysql-relay-bin
    18 
    19 # enable log_slave_updates
    20 
    21 log_slave_updates = 1
    22 
    23 skip_slave_start
    24 
    25 [mysqld_safe]
    26 
    27 log-error=/var/log/mysqld.log
    28 
    29 pid-file=/var/run/mysqld/mysqld.pid

    修改主库参数如下

    vi /etc/my.cnf

     1 [mysqld]
     2 
     3 datadir=/var/lib/mysql
     4 
     5 socket=/var/lib/mysql/mysql.sock
     6 
     7 user=mysql
     8 
     9 log-bin=mysql-bin
    10 
    11 old_passwords=1
    12 
    13 server_id = 110
    14 
    15 sync_binlog = 1
    16 
    17 relay_log = /var/lib/mysql/mysql-relay-bin
    18 
    19 # enable log_slave_updates
    20 
    21 log_slave_updates = 1
    22 
    23 skip_slave_start
    24 
    25 [mysqld_safe]
    26 
    27 log-error=/var/log/mysqld.log
    28 
    29 pid-file=/var/run/mysqld/mysqld.pid

    2.关闭数据库

    --在主库上执行

     1 service mysqld stop 

     3.备份主库

    --在主库上执行

     1 tar zcvf /tmp/mysql.tar.gz /var/lib/mysql 

    4.将主库的备份传送到从库

    --在主库上执行

    rsync -auzvP --bwlimit=10240 /tmp/mysql.tar.gz 111.111.111.111: /tmp/mysql.tar.gz
    
    rsync –auzvP --bwlimit=1024 /etc/my.cnf 111.111.111.111:/etc/my.cnf

    5.在备库恢复主库的备份

    --在备库执行

    1 mv /var/lib/mysql /var/lib/mysqlbak
    2 
    3 mv /tmp/mysql.tar.gz /var/lib/
    4 
    5 tax xvf /var/lib/mysql.tar.gz

    6.在备库修改配置文件/etc/my.cnf

    --在备库执行

    --修改配置文件/etc/my.cnf

    vi /etc/my.cnf

    修改参数如下

    1 [mysqld]
    2 
    3 server_id = 111

    7.在备库启动数据库

    --在备库执行

    service mysqld start

    8.在主库上启动数据库

    1 service mysqld start
    2 
    3 mysql –uroot –p
    4 
    5 show master status;

    9.根据上一步获取到的bin log文件名和position,在备库启用复制

    --在备库执行(将命令master_log_file='mysql-bin.0000099',master_log_pos=5中的值mysql-bin.0000099和0 修改为上一步获取到的值)

    1 change master to master_host='111.111.111.110',
    2 
    3 master_user='repl',
    4 
    5 master_password='repl',
    6 
    7 master_log_file='mysql-bin.00000xx',
    8 
    9 master_log_pos=0;

     --启动复制进程

    1 start slave;
    2 
    3 show slave statusG
    4 
    5 show processlistG
  • 相关阅读:
    WebForms和MVC之间的抉择
    RPM install Error: Failed dependencies
    存储NAS和SAN
    python基础31[visualstudio2010来编写python程序]
    Linux系统性能检测
    perl的引用和>
    Linux内存高级 [swap/buffer]
    python类库26[web2py的URL映射]
    python类库31[python的libpath]
    VShpere中创建新Linux(ubuntu)的virtual machine
  • 原文地址:https://www.cnblogs.com/wangxingc/p/5181096.html
Copyright © 2020-2023  润新知