mysql集群-主库从库配置--主从库分离

mysql集群

为什么要做主从库分离?

怎么进行分离?

设置2个数据库,为主库从库,主库存储,从库查询

怎么设置?

在你原本的配置yml文件中主库的ip是多少,从库是多少,都要和数据库的ip 一致

先编辑文件

#cp /usr/share/mysql/my-default.cnf /etc/my.cnf,就是说将my-default.cnf这个文件移动到/etc/my.cnf下面,要在根目录底下执行

#vim /etc/my.cnf--编写这个文件

进入后可以看到my.cnf文件内容,不好辨认,所以增加:set nu(增加行号)

把光标放在第4行,然后对文件进行修改-插入( :+ i)esc就能退出编辑模式

这里每个服务器都要设置唯一的id

主从同步是通过二进制的日志文件来进行,故须开启MySQL的日志功能记录增删改,每次服务启动就会产生新的日志文件

存储所有master-bin.0000xx文件名

配置端口号,这个端口号就是自定义的,一般不要改端口号

#需要同步的数据库名,若同步多个数据库数据用逗号分隔继续追加;若没有本行则表示同步所有的数据库数据,第9行可标注

#不同步的数据库名,多个用逗号分割;ignore=忽略

如果你时间超过1s就是慢查询

第一个就是打开慢查询,第二个就是设置阀值

以上几句诗设置文件的内容,退出编辑模式并保存;esc :wq,或者:wq!


启动服务让配置生效

systemctl start mysqld 重启 or systemctl restart mysqld 启动

未启动就用启动mysql,如果未启动过就用重启


创建主从同步的帐户

#mysql -uroot -p123456@Yc(密码按照自己设置的)

mysql> GRANT REPLICATION SLAVE ON *.* to rep@'%' IDENTIFIED BY '123456@Yc';

mysql> flush privileges;

mysql> select host,user from mysql.user;当看到user是有rep代表设置成功

配置从库

也是一样,需要一个配置文件,然后在项目里启动文件

配置时需要更改【服务器id】并取消log配置,因为是从库,不需要给别人同步数据,所以取消log配置

A.从库my.conf配置同master服务器配置一样,但server-id=2,取消#binlog-ignore-db配置,保存退出

B.重启mysql让其配置生效:

systemctl start mysqld or systemctl restart mysqld

如何知道是否已经启动mysql

执行losf -i :3306,看到有mysql就执行重启,未看到就执行启动


然后在主库,输入showstatus查看主库状态

然后在从库,登录从库后执行

绑定失败

停掉slave即可

再执行一边,看到ok即可

检查

需要看到这2个yes

相关推荐
酥心糖小可爱11 分钟前
多窗口切换——selenium
服务器·数据库·selenium
默默无闻的白夜12 分钟前
【MyBatis操作数据库】XML配置
xml·数据库·mybatis
Jasonakeke40 分钟前
【重学 MySQL】八十五、游标的使用
数据库·mysql
初叙43 分钟前
cooladmin 后端 查询记录
数据库·cooladmin
eaglelau1 小时前
CSV 文件
数据库·python
幽兰的天空2 小时前
深入解析 MySQL 数据库:负载均衡
数据库·mysql·负载均衡
黄名富2 小时前
SQL 处理数列
数据库·sql·mysql·oracle
kangkang-2 小时前
MySQL联合索引(abc)命中测试
数据库·mysql
王大傻09283 小时前
数据库的性能优化 -- SQL性能优化
数据库·sql·性能优化
_.Switch4 小时前
Django SQL 查询优化方案:性能与可读性分析
开发语言·数据库·python·sql·django·sqlite·自动化