数据库主从复制——在centos下实现wordpress的同步发布文章
新买了一个腾讯云服务器,想把这个服务器整成备用站点,于是折腾了一晚上的数据库,在这里记录一下过程。
1.安装好(无脑wget,yum)php,mariadb(创建用户,新建一个wordpress库) ,wordpress,启动各项服务,这步我重复过很多次了,而且网上教程也很多,所以略过
(原本的想法是从站链接主站的数据库,但是会重定向到主站(这是因为数据库中的url仍是主站导致的))
2.主站:
vim /etc/my.cnf
在vim中:
log-bin=mariadblog
server-id=1 #主次的id需不同
binlog-do-db=test0#需要复制的数据库
binlog-do-db=wordpress
以上三行要放到symbolic-links=0下面,否则会不生效:

wq保存,回到终端
firewall-cmd --zone=public --add-port=3306/tcp --permanent
#开启3306端口为链接数据库做准备
以下在mysql中(mysql -u root -p)
CREATE USER 用户名@从站ip IDENTIFIED BY '密码';
#创建复制所需的用户(默认读者已经创建好主从两个网站的数据库用户)
GRANT ALL PRIVILEGES ON . TO '用户名'@'ip' IDENTIFIED BY '密码';
#开放权限
show master status;
#获取当前归档日志的位置,需要记录下File 和Postion 对应的值
+-------------------+----------+-----------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+-------------------+----------+-----------------+------------------+
| mariadblog.000005 | 282430 | test0,wordpress | |
+-------------------+----------+-----------------+------------------+
3.从站:
vim /etc/my.cnf
在文件中:
server-id = 2 #:wq保存
进入数据库后:
CHANGE MASTER TO
MASTER_HOST='主站ip',
MASTER_PORT=3306,
MASTER_USER='用户',
MASTER_PASSWORD='密码',
MASTER_LOG_FILE='mariadblog.000005',
MASTER_LOG_POS=786971;
其中 MASTER_LOG_POS = 每次更新数据库都会改变,有的教程设置成0让它自动识别
slave start;#开始复制
show slave status\G;#查看从数据库状态
#Slave_IO_Running: Yes
#Slave_SQL_Running: Yes
#出现这两个yes就ok了,如果底下有报error,应该没什么影响,可以在主站mysql中 unlock tables;
slave stop;#结束
往主站wordpress写一篇文章并发布,从站也会跟着更新,如下图

踩坑:
a.ERROR 1200 (HY000): The server is not configured as slave; fix in config file or with CHANGE MASTER TO
从站的server_id没有生效,可以在mysql中
SET GLOBAL server_id=2;
b.Slave_SQL_Running:No
slave stop;
再次运行:
CHANGE MASTER TO MASTER_HOST='主站ip', MASTER_PORT=3306, MASTER_USER='用户名', MASTER_PASSWORD='密码', MASTER_LOG_FILE='mariadblog.000005', MASTER_LOG_POS=282430;
slave start;
若遇到退出数据库后无法同步,先停止slave
set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
再开启
c.各种数据错误问题:
重启服务,刷新一下即可
终端中:
systemctl restart mariadb
mysql指令:
flush privileges;
d.不要将主站wordpress数据库直接导入到从站,从站会重定向到主站,原因未知
e.
x.好像还踩了几个不过忘记了,有空补上
2022年 March 6日|9:14 
目录: 网站, 计算机 标签:,mariadb, wordpress, 主从复制, 数据库
欢迎留下你的评论~~