• 设置MySQL主从同步


    1. 配置主服务器

    1.1 编辑my.cnf文件,配置主服务器ID。

    [mysqld]
    log-bin=mysql-bin
    server-id=1
    relay-log = relay-bin
    relay-log-index = relay-bin.index

    1.2 重启主服务器。

    2. 配置从服务器

    2.1 编辑my.cnf文件,配置从服务器ID。

    [mysqld]
    server-id=2

    2.2 重启从服务器。

    3. 创建同步帐号

    3.1 创建复制用户。用户名和密码将会明文存储在同步信息文件master.info中。

    mysql> CREATE USER 'repl'@'%.mydomain.com' IDENTIFIED BY 'slavepass';

    3.2 授权复制用户

    mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%.mydomain.com';

     

    4. 获取binlog同步点信息

    4.1 暂停主服务器的写入。在对主服务器加锁后,当前会话不能退出,否则会自动释放锁。

    mysql> FLUSH TABLES WITH READ LOCK;

    4.2 获取binlog文件名和偏移量。

    mysql > SHOW MASTER STATUS;
    +------------------+----------+--------------+------------------+
    | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
    +------------------+----------+--------------+------------------+
    | mysql-bin.000003 | 73       | test         | manual,mysql     |
    +------------------+----------+--------------+------------------+
    

    5. 创建主服务器快照

    5.1 快照需要排除的文件列表。

    • mysql库相关的文件
    • master.info信息文件
    • 主服务器产生的binlog文件
    • 其他中转日志文件

    5.2 确保获取了同步点信息。

    5.3 关闭主服务器。

    shell> mysqladmin shutdown

    5.4 同步主服务器数据

    shell> rsync -av mysql/ work@lab08:/home/work/local/mysql/ --exclude=var/mysql-bin.* --exclude=var/slow.log 

    5.5 启动主服务器。

    6. 在从服务器设置同步信息

    6.1 命令行设置

    mysql> CHANGE MASTER TO
        ->     MASTER_HOST='master_host_name',
        ->     MASTER_PORT=1127,
        ->     MASTER_USER='replication_user_name',
        ->     MASTER_PASSWORD='replication_password',
        ->     MASTER_LOG_FILE='recorded_log_file_name',
        ->     MASTER_LOG_POS=recorded_log_position;

    6.2 启动slave同步

    mysql> SLAVE STARTG;

    6.3 查看slave同步状态

    mysql> SHOW SLAVE STAUTSG;

    如果观察到以下都为Yes,表明开始正常同步了。

    Slave_IO_Running: Yes
    Slave_SQL_Running: Yes

     

     7 设置从库只读

    有两种方式设置从库只读,修改配置或设置全局变量。

    7.1 修改my.cnf文件

      #从库是否只读,0表示可读写,1表示只读  

      read-only=1  

    7.2 动态设置参数

      set global read_only=true;

    参考手册

    http://dev.mysql.com/doc/refman/5.0/en/replication-howto.html



  • 相关阅读:
    PAT 1020 月饼 (25)(精简版代码+思路+推荐测试用例)
    PAT 1010 一元多项式求导 (25)(STL-map+思路)
    通过无线连接的方式来做 Appium 自动化
    Eclipse shift + ctrl + F 不好用
    Appium 出现 > error: com.test/.activity1 never started. Current: com.test/.activity2
    Appium 出现 > error: com.test/.activity1 never started. Current: com.test/.activity2
    从CSDN 来到博客园入驻——2015/1/28
    敏捷自动化测试(1)—— 我们的测试为什么不够敏捷?
    敏捷自动化测试(2)——像用户使用软件一样享受自动化测试
    Android自动化测试之Monkey工具
  • 原文地址:https://www.cnblogs.com/osroot/p/3230241.html
Copyright © 2020-2023  润新知