zoukankan      html  css  js  c++  java
  • MySQL主从复制

    这里写图片描述

    主库

    • 开启主库binlog和server_id
    vim /etc/my.cnf
    [mysqld]
    log-bin=/var/lib/mysql/mysql-bin
    server_id=1
    systemctl restart mysql
    • 添加同步账号
    mysql> grant replication slave on *.* to "rep"@"172.16.100.%" identified by "000000";
    mysql> show master status;   
    +------------------+----------+--------------+------------------+
    | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
    +------------------+----------+--------------+------------------+
    | mysql-bin.000007 |     1077 |              |                  |
    +------------------+----------+--------------+------------------+
    
    • 数据库完整打包备份拷贝至丛库
    mysqldump -uroot -p -ABREx --master-data=2| gzip > master.sql.gz
    scp master.sql.gz 172.16.100.20:/root
    

    丛库

    • 设置server_id
    vim /etc/my.cnf
    server_id=2
    
    • 导入主库数据库
    gzip -d master.sql.gz
    mysql -uroot -p < master.sql
    • 生成master.info文件
    mysql> CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000007', MASTER_LOG_POS=1077, MASTER_HOST='172.16.100.10', MASTER_PORT=3306, MASTER_USER='rep', MASTER_PASSWORD='000000';
    • 开启slave并检查
    mysql> start slave;
    mysql> show slave statusG;
    
    Slave_IO_Running: Yes
    Slave_SQL_Running: Yes
    
    mysql> show processlist;
    +----+-------------+-----------+------+---------+------+-----------------------------------------------------------------------------+------------------+
    | Id | User        | Host      | db   | Command | Time | State                                                                       | Info             |
    +----+-------------+-----------+------+---------+------+-----------------------------------------------------------------------------+------------------+
    |  8 | root        | localhost | NULL | Query   |    0 | NULL                                                                        | show processlist |
    | 12 | system user |           | NULL | Connect |  363 | Waiting for master to send event                                            | NULL             |
    | 13 | system user |           | NULL | Connect |  363 | Slave has read all relay log; waiting for the slave I/O thread to update it | NULL             |
    +----+-------------+-----------+------+---------+------+-----------------------------------------------------------------------------+------------------+
    

    这里可以写一个监控slave脚本

    RES=mysql -uzabbix -pzabbix00 -e 'SHOW SLAVE STATUSG' | egrep '(Slave_IO_Running|Slave_SQL_Running):' | awk -F: '{print $2}' | tr '
    ' ','`
    if [ "$RES" = " Yes, Yes," ]; then
    echo 1
    else
    echo 0
    fi
    exit
    
  • 相关阅读:
    170619、springboot编程之HelloWorld
    170616、解决 java.lang.IllegalArgumentException: No converter found for return value of type: class java.util.ArrayList
    170615、spring不同数据库数据源动态切换
    pytest文档10-命令行传参
    pytest文档9-参数化parametrize
    pytest文档8-html报告报错截图+失败重跑
    pytest文档7-pytest-html生成html报告
    定位对应关系
    ADB 无线连接
    command failed shell "ps 'uiautomator'"的解决方式
  • 原文地址:https://www.cnblogs.com/testder/p/9397949.html
Copyright © 2011-2022 走看看