问题:由于服务器机位改变,从数据库停机,mysql主从出现不同步,从数据库无法启动,重置从数据库,启动后,需要做以下操作
以下操作
主数据库IP:172.16.10.10
从数据库IP:172.16.10.12
我这边之前忘记从数据库授权的用户密码了,需要重置,记得密码的跳过这一步:

set Password for slavemysql@"%"=password("111111");

1、首先建立给从数据库定义的用户

[root@eqn78 ~]#mysql -uroot -p
mysql>grant replication slave on *.* to slavemysql@172.16.10.12 identified by  '111111';

授权完记得到从数据库试试能不能连到主数据库,养成良好习惯,这是我们linux自动化运维工程师需要的责任,啧啧。。。

mysql  -h @172.16.10.10 -u test -p

2、刷新表并且锁住表,弄成表只读,不然待会Position会一直变,从数据库无法同步。(PS:这个操作很慢,网上说不影响数据的读,其实不是的,我在实际应用中操作了一下,网站打不开了- -,哎,所以建议最好是晚上12点后,客户没访问的情况下操作,辛苦我们linux自动化运维的工程师们了。)

mysql> FLUSH TABLES WITH READ LOCK;

3、查看主库的信息(用“\G”不用加分号),记住File和Position的信息,此时终端切记不能断开,一旦断开默认是unlock tables;对表解锁。切记

mysql> show master status \G
*************************** 1. row ***************************
            File: mysql-bin.000093
        Position: 315644920
    Binlog_Do_DB:
Binlog_Ignore_DB:
1 row in set (0.00 sec)

4、重新开一个终端,打包主库。

tar    zcvf    /root/var.tar.gz   /usr/local/mysql /var

5、发送到从数据库

 scp /root/var.tar.gz   192.168.0.1:/usr/local/mysql/var.tar.gz

===========================华丽的分隔符===========================
从数据库操作要领:
1、解压主数据SCP过来的备份

tar -xvzf  /usr/local/mysql/var.tar.gz -C /usr/local/mysql
chown -R mysql:mysql  /usr/local/mysql/var

2、登陆mysql

mysql> slave stop;
mysql> change master to master_host='172.16.10.10',master_user='slavemysql',master_password='111111',master_log_file='mysql-bin.000093',master_log_pos=315644920;

3、启动SLAVE服务

mysql> slave start;
mysql> show slave status \G
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 172.16.10.10
                  Master_User: slavemysql
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000093
          Read_Master_Log_Pos: 315644920
               Relay_Log_File: eq135-relay-bin.000002
                Relay_Log_Pos: 469543
        Relay_Master_Log_File: mysql-bin.000093
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
              Replicate_Do_DB:
          Replicate_Ignore_DB:
           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: 315824967
              Relay_Log_Space: 469698
              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:
1 row in set (0.00 sec)

4、回到主数据库,解锁主库表

mysql> UNLOCK TABLES;