Mysql master from inconsistent solution _ MySQL

Source: Internet
Author: User
Tags mysql backup
Mysql master from inconsistent solution bitsCN.com

Solution to inconsistent mysql master

Method 1: ignore errors and synchronize

This method is applicable when the data in the master/slave database is not much different or the data requirements are not strict.

Solution:

Stop slave; # indicates skipping a step. the following number can be set global SQL _slave_skip_counter = 1; start slave; then use mysql> show slave status/G to view: Slave_IO_Running: Yes

OK. Now the master-slave synchronization status is normal...

Method 2: Re-master the slave, full synchronization

This method is applicable when the data in the master/slave database is significantly different or the data must be completely unified.

1. first enter the master database and lock the table to prevent data writing.

Run the following command:

mysql> flush tables with read lock;

Note: the lock is read-only and the statements are case insensitive.

2. back up data

[root@server01 mysql]#mysqldump -uroot -p -hlocalhost > mysql.bak.sql

Note: database backup must be performed on a regular basis. you can use shell scripts or python scripts to make sure that the data is safe.

3. View master status

mysql> show master status;+-------------------+----------+--------------+-------------------------------+| File              | Position | Binlog_Do_DB | Binlog_Ignore_DB              |+-------------------+----------+--------------+-------------------------------+| mysqld-bin.000003 |     4563 |              | mysql,test,information_schema |+-------------------+----------+--------------+-------------------------------+1 row in set (0.00 sec)

4. Upload The mysql backup file to the slave database machine for data recovery.

[root@server01 mysql]# scp mysql.bak.sql rep@192.168.1.2:/tmp/

5. stop slave database status

mysql> stop slave;

6. run the mysql command in the slave database to import the data backup.

mysql> source /tmp/mysql.bak.sql

7. set slave database synchronization. Note that the synchronization point here is | File | Position in the show master status information of the master database.

change master to master_host = '192.168.1.1', master_user = 'repl', master_port=3306, master_password='repldaba', master_log_file = 'mysqld-bin.000003',master_log_pos=4563;

8. enable synchronization again

mysql> start slave;

9. View synchronization status

Mysql> show slave status/G View: Slave_IO_Running: YesSlave_ SQL _Running: Yes

Now, synchronization is complete.

BitsCN.com

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.