加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

初识mysql主从复制

发布时间:2020-12-12 03:05:30 所属栏目:MySql教程 来源:网络整理
导读:《初识mysql主从复制》要点: 本文介绍了初识mysql主从复制,希望对您有用。如果有疑问,可以联系我们。 一直想见识一下主从复制,前几天自己试了一下,分享一下! 为了尝试比较麻烦的情况,我这里master是centos系统,slave是windows系统. 1、首先配置主数据库ma

《初识mysql主从复制》要点:
本文介绍了初识mysql主从复制,希望对您有用。如果有疑问,可以联系我们。

初识mysql主从复制

一直想见识一下主从复制,前几天自己试了一下,分享一下!

为了尝试比较麻烦的情况,我这里master是centos系统,slave是windows系统.

1、首先配置主数据库master

修改centos下的 /etc/my.cnf 命令:vim /etc/my.cnf

初识mysql主从复制

看这里

在配置文件里[mysqld]下添加(注意是在[mysqld]模块下添加,别写错地方)

server-id = x (本机数据库id,唯一标识,只要保证别和slave重复就行)

log-bin = mysql-bin (开启binlog功能,参数是log存放的地址,默认/var/lib/mysql )

(PS:binlog-do-db = xx 指定可以被从数据库复制的库,binlog-ignore-db = xx 指定不可以被复制的库,如果设置了binlog-do-db = xx可以不设置binlog-ignore-db = xx)

配置好重启mysqld服务 systemctl restart mysqld

查看master状态,show master status,并记下参数

初识mysql主从复制

长这样

建立用于从库复制的帐号 grant replication slave on *.* to "user"@"%" identified by "password";

刷新权限 flush privileges;

把主库的数据迁移到从库保证主从库同步

2、从数据库配置,在windows上找到my.ini

在[mysqld]下添加

log-bin=mysql-bin

server-id=xx

replicate-do-db=work (前两个解释过,那么replicate-do-db是指slave可以复制的库)

重启服务

进入mysql 设置他的master

change master to master_host='master的ip地址',master_port=3306,master_user='前面设置的user',master_password='前面设置的暗码',master_log_file='mysql-bin.000002',master_log_pos=665;(最后俩参数是之前查看master状态几下的参数)

开启复制

start slave

此时主库修改表数据可以在从库中看到了

PS:遇到个小问题,修改/etc/my.cnf时由于操作原因在打开时出现提示

swap file "*.swp" already exists!

[O]pen Read-Only,(E)dit anyway,(R)ecover,(D)elete it,(Q)uit,(A)bort:

原因:

使用vim编辑文件实际是先copy一份临时文件并映射到内存给你编辑,编辑的是临时文件,当执行 :w后才保存临时文件到原文件,执行:q后才删除临时文件.每次启动编辑时都会检索这个文件是否已经存在临时文件,有则询问如何处理,就会出现如上情景.

解决办法(进入目录删除这个临时文件即可): rm *.swp

欢迎参与《初识mysql主从复制》讨论,分享您的想法,编程之家PHP学院为您提供专业教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读