zoukankan      html  css  js  c++  java
  • MySQL主从切换

    1、查看从库数据库状态:
    mysql> show processlist;
    +----+-------------+-----------------+--------+---------+-------+-----------------------------------------------------------------------------+------------------+
    | Id | User        | Host            | db     | Command | Time  | State                                                                       | Info             |
    +----+-------------+-----------------+--------+---------+-------+-----------------------------------------------------------------------------+------------------+
    |  2 | root        | 127.0.0.1:59012 | sakila | Query   |     0 | NULL                                                                        | show processlist |
    |  3 | system user |                 | NULL   | Connect | 17618 | Waiting for master to send event                                            | NULL             |
    |  4 | system user |                 | NULL   | Connect | 17305 | Slave has read all relay log; waiting for the slave I/O thread to update it | NULL             |
    +----+-------------+-----------------+--------+---------+-------+-----------------------------------------------------------------------------+------------------+
    3 rows in set (0.00 sec)


    mysql> show slave statusG
    *************************** 1. row ***************************
                   Slave_IO_State: Waiting for master to send event
                      Master_Host: 172.16.33.143
                      Master_User: master
                      Master_Port: 3306
                    Connect_Retry: 60
                  Master_Log_File: mysql.000003
              Read_Master_Log_Pos: 3296928
                   Relay_Log_File: slave-relay-bin.000002
                    Relay_Log_Pos: 3296845
            Relay_Master_Log_File: mysql.000003
                 Slave_IO_Running: Yes
                Slave_SQL_Running: Yes
                  Replicate_Do_DB: 
              Replicate_Ignore_DB: test
               Replicate_Do_Table: 
           Replicate_Ignore_Table: 
          Replicate_Wild_Do_Table: 
      Replicate_Wild_Ignore_Table: 
                       Last_Errno: 0
                       Last_Error: 
                     Skip_Counter: 0
              Exec_Master_Log_Pos: 3296928
                  Relay_Log_Space: 3297001
                  Until_Condition: None
                   Until_Log_File: 
                    Until_Log_Pos: 0
               Master_SSL_Allowed: No
               Master_SSL_CA_File: 
               Master_SSL_CA_Path: 
                  Master_SSL_Cert: 
                Master_SSL_Cipher: 
                   Master_SSL_Key: 
            Seconds_Behind_Master: 0
    Master_SSL_Verify_Server_Cert: No
                    Last_IO_Errno: 0
                    Last_IO_Error: 
                   Last_SQL_Errno: 0
                   Last_SQL_Error: 
      Replicate_Ignore_Server_Ids: 
                 Master_Server_Id: 1
    1 row in set (0.00 sec)


    mysql> show processlist;
    +----+--------+---------------------+--------+-------------+-------+-----------------------------------------------------------------------+------------------+
    | Id | User   | Host                | db     | Command     | Time  | State                                                                 | Info             |
    +----+--------+---------------------+--------+-------------+-------+-----------------------------------------------------------------------+------------------+
    |  1 | root   | 127.0.0.1:33623     | sakila | Query       |     0 | NULL                                                                  | show processlist |
    |  2 | master | 172.16.33.144:48988 | NULL   | Binlog Dump | 17455 | Master has sent all binlog to slave; waiting for binlog to be updated | NULL             |
    +----+--------+---------------------+--------+-------------+-------+-----------------------------------------------------------------------+------------------+
    2 rows in set (0.00 sec)


    mysql> show master status;
    +--------------+----------+--------------+------------------+
    | File         | Position | Binlog_Do_DB | Binlog_Ignore_DB |
    +--------------+----------+--------------+------------------+
    | mysql.000003 |  3296928 |              |                  |
    +--------------+----------+--------------+------------------+
    1 row in set (0.00 sec)


    2、修改配置文件:
    主库:read_only = 1
    从库:#read_only = 1


    3、操作从库:
    mysql> show processlist;
    +----+-------------+-----------------+--------+---------+-------+-----------------------------------------------------------------------------+------------------+
    | Id | User        | Host            | db     | Command | Time  | State                                                                       | Info             |
    +----+-------------+-----------------+--------+---------+-------+-----------------------------------------------------------------------------+------------------+
    |  2 | root        | 127.0.0.1:59012 | sakila | Query   |     0 | NULL                                                                        | show processlist |
    |  3 | system user |                 | NULL   | Connect | 17770 | Waiting for master to send event                                            | NULL             |
    |  4 | system user |                 | NULL   | Connect | 17457 | Slave has read all relay log; waiting for the slave I/O thread to update it | NULL             |
    +----+-------------+-----------------+--------+---------+-------+-----------------------------------------------------------------------------+------------------+
    3 rows in set (0.00 sec)


    mysql> stop slave io_thread;
    Query OK, 0 rows affected (0.00 sec)


    mysql> show processlist;    
    +----+-------------+-----------------+--------+---------+-------+-----------------------------------------------------------------------------+------------------+
    | Id | User        | Host            | db     | Command | Time  | State                                                                       | Info             |
    +----+-------------+-----------------+--------+---------+-------+-----------------------------------------------------------------------------+------------------+
    |  2 | root        | 127.0.0.1:59012 | sakila | Query   |     0 | NULL                                                                        | show processlist |
    |  4 | system user |                 | NULL   | Connect | 17526 | Slave has read all relay log; waiting for the slave I/O thread to update it | NULL             |
    +----+-------------+-----------------+--------+---------+-------+-----------------------------------------------------------------------------+------------------+
    2 rows in set (0.00 sec)


    确认从库的状态为:Slave has read all relay log


    mysql> show slave statusG
    *************************** 1. row ***************************
                   Slave_IO_State: 
                      Master_Host: 172.16.33.143
                      Master_User: master
                      Master_Port: 3306
                    Connect_Retry: 60
                  Master_Log_File: mysql.000003
              Read_Master_Log_Pos: 3296928
                   Relay_Log_File: slave-relay-bin.000002
                    Relay_Log_Pos: 3296845
            Relay_Master_Log_File: mysql.000003
                 Slave_IO_Running: No
                Slave_SQL_Running: Yes
                  Replicate_Do_DB: 
              Replicate_Ignore_DB: test
               Replicate_Do_Table: 
           Replicate_Ignore_Table: 
          Replicate_Wild_Do_Table: 
      Replicate_Wild_Ignore_Table: 
                       Last_Errno: 0
                       Last_Error: 
                     Skip_Counter: 0
              Exec_Master_Log_Pos: 3296928
                  Relay_Log_Space: 3297001
                  Until_Condition: None
                   Until_Log_File: 
                    Until_Log_Pos: 0
               Master_SSL_Allowed: No
               Master_SSL_CA_File: 
               Master_SSL_CA_Path: 
                  Master_SSL_Cert: 
                Master_SSL_Cipher: 
                   Master_SSL_Key: 
            Seconds_Behind_Master: NULL
    Master_SSL_Verify_Server_Cert: No
                    Last_IO_Errno: 0
                    Last_IO_Error: 
                   Last_SQL_Errno: 0
                   Last_SQL_Error: 
      Replicate_Ignore_Server_Ids: 
                 Master_Server_Id: 1
    1 row in set (0.00 sec)


    4、查看主库状态:
    mysql> show master status;
    +--------------+----------+--------------+------------------+
    | File         | Position | Binlog_Do_DB | Binlog_Ignore_DB |
    +--------------+----------+--------------+------------------+
    | mysql.000003 |  3296928 |              |                  |
    +--------------+----------+--------------+------------------+
    1 row in set (0.00 sec)


    5、主从切换,从库变主库:
    mysql> slave stop;
    Query OK, 0 rows affected, 1 warning (0.00 sec)


    mysql> reset master;
    Query OK, 0 rows affected (0.02 sec)


    mysql> reset slave;
    Query OK, 0 rows affected (0.00 sec)


    mysql> show master status;
    +--------------+----------+--------------+------------------+
    | File         | Position | Binlog_Do_DB | Binlog_Ignore_DB |
    +--------------+----------+--------------+------------------+
    | mysql.000001 |      107 |              |                  |
    +--------------+----------+--------------+------------------+
    1 row in set (0.00 sec)


    6、主从切换,主库变从库:
    mysql> reset master;
    Query OK, 0 rows affected (0.02 sec)


    mysql> reset slave;
    Query OK, 0 rows affected (0.00 sec)


    mysql> change master to master_host='172.16.33.144',master_port=3306,master_user='master',master_password='123456',master_log_file=' mysql-bin.000001',master_log_pos=107;
    Query OK, 0 rows affected (0.04 sec)


    7、重启主从:
    [root@yoon ~]# service mysqld restart
    Shutting down MySQL. SUCCESS! 
    Starting MySQL.. SUCCESS! 


    8、查看主从是否正常:
    主库:
    show processlist;
    show master status;


    从库:
    show processlist;
    start slave;
    show slave statusG

     

  • 相关阅读:
    QOMO Linux 4.0 正式版发布
    LinkChecker 8.1 发布,网页链接检查
    pgBadger 2.1 发布,PG 日志分析
    Aletheia 0.1.1 发布,HTTP 调试工具
    Teiid 8.2 Beta1 发布,数据虚拟化系统
    zLogFabric 2.2 发布,集中式日志存储系统
    开源电子工作套件 Arduino Start Kit 登场
    Piwik 1.9 发布,网站访问统计系统
    Ruby 1.9.3p286 发布,安全修复版本
    toBraille 1.1.2 发布,Java 盲文库
  • 原文地址:https://www.cnblogs.com/hankyoon/p/5169677.html
Copyright © 2011-2022 走看看