MYSQL5 新建从库的步骤

由于误操作等种种原因,MYSQL的主从库之间经常会发生不同步的问题。解决办法是停掉从库,删除所有数据。并按以下步骤重建从库。
1、mysql_install_db --datadir=/data1/slavevar
2、在/data1/slavevar下设置my.cnf
主库的my.cnf示例
[mysqld]
log-bin=mysql-bin
server-id=1
port = 3306
socket = /tmp/mysql.sock
从库的my.cnf示例
[mysqld]
log-bin=mysql-bin
server-id=2
port = 3307
socket = /tmp/mysql.3307.sock
relay-log = /data1/slavevar/localhost-relay-bin
3、chown -R mysql:mysql slavevar
4、/usr/local/etc/rc.d/mysql-server-slave start
5、登陆主库
FLUSH TABLES WITH READ LOCK;
然后运行
SHOW MASTER STATUS
并记录下状态
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000005 | 223 | | |
+------------------+----------+--------------+------------------+
6、从主库中dump出所有数据
mysqldump -hlocalhost -uroot -p --all-databases --master-data > dbdump.db
7、释放主库的锁
在mysql下运行
unlock tables;
8、启动从库
/usr/local/libexec/mysqld --defaults-file=/data1/slavevar/my.cnf --user=mysql
--datadir=/data1/slavevar --pid-file=/data1/slavevar/localhost.pid
9、导入主库的数据
在从库的机器shell上运行
mysql -hlocalhost --default-character-set=utf8 -uroot -p -S
/tmp/mysql.3307.sock \< dbdump.db
其中--default-character-set=utf8不是必须的。
10、给从库设置master info。
在从库的mysql下运行
CHANGE MASTER TO
MASTER_HOST='localhost',
MASTER_USER='root',
MASTER_PASSWORD='xxxxxxxxxx',
MASTER_LOG_FILE='mysql-bin.000005',
MASTER_LOG_POS=223 ;
11、启动 Replication
在从库的mysql下运行
START SLAVE;

此博客中的热门博文

少写代码,多读别人写的代码

在windows下使用llvm+clang

tensorflow distributed runtime初窥