共计 2053 个字符,预计需要花费 6 分钟才能阅读完成。
今天就跟大家聊聊有关 mysql 中 replication 的作用是什么,可能很多人都不太了解,为了让大家更加了解,丸趣 TV 小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
1. master mysql 中修改 /etc/my.cnf 在 mysqld 下添加如下两行:
log-bin=/var/lib/mysql/mysql-bin.log
server-id=1
#binlog-do-db=DB1
#binlog-do-db=DB2 #如果备份多个,重复设置这个选项即可
2. 重启, 添加 slave replication 用户
GRANT REPLICATION SLAVE ON *.* TO IDENTIFIED BY slave_password;
FLUSH PRIVILEGES;
FLUSH TABLES WITH READ LOCK;
SHOW MASTER STATUS;
+——————+———-+————–+——————+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+——————+———-+————–+——————+
| mysql-bin.000001 | 890 | | |
+——————+———-+————–+——————+
1 row in set (0.00 sec)
unlock tables;
记下 file 名和 binlog 的位置.
4. 在 slave mysql 上操作.
编辑从服务器的配置文件:/etc/my.cnf
[mysqld]
#sync data
server-id=2 #注意不能重复
master-host=192.168.100.10
master-user=slave
master-password=slave_password
master-port=3306
master-connect-retry=60
#replicate-do-db=DB1
#replicate-do-db=
5. 重启 slave mysql .
stop slave;
CHANGE MASTER TO MASTER_HOST=192.168.100.13, MASTER_USER=slave, MASTER_PASSWORD=slave_password, MASTER_LOG_FILE=mysql-bin.000001, MASTER_LOG_POS=890;
start slave;
5. 在 master mysql 上创建数据库测试, 从库是否同步. 或者 show slave statusG 查看
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
两个 yes 为同步.
补充:
在从服务器上使用 show slave statusG
Slave_IO_Running, 为 No,
则说明 IO_THREAD 没有启动,请执行 start slave io_thread
Slave_SQL_Running 为 No
则复制出错, 查看 Last_error 字段排除错误后执行 start slave sql_thread
查看 Slave_IO_State 字段空 // 复制没有启动
Connecting to master// 没有连接上 master
Waiting for master to send event// 已经连上
主服务器上的相关命令:
show master status
show slave hosts
show logs
show binlog events
purge logs to log_name
purge logs before date
reset master(老版本 flush master)
set sql_log_bin=
从服务器上的相关命令:
slave start
slave stop
SLAVE STOP IO_THREAD // 此线程把 master 段的日志写到本地
SLAVE start IO_THREAD
SLAVE STOP SQL_THREAD // 此线程把写到本地的日志应用于数据库
SLAVE start SQL_THREAD
reset slave
SET GLOBAL SQL_SLAVE_SKIP_COUNTER
load data from master
show slave status(SUPER,REPLICATION CLIENT)
CHANGE MASTER TO MASTER_HOST=, MASTER_PORT=,MASTER_USER=, MASTER_PASSWORD= // 动态改变 master 信息
PURGE MASTER [before date] 删除 master 端已同步过的日志
看完上述内容,你们对 mysql 中 replication 的作用是什么有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注丸趣 TV 行业资讯频道,感谢大家的支持。