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

相关推荐
abcnull7 分钟前
更改mysql用户密码
数据库·mysql
etsuyou20 分钟前
MySQL中localhost和127.0.0.1的区别
数据库·mysql·adb
一只小小汤圆1 小时前
c# sring \\W1.235; 先判断是否包含\\W 如果包含 获取\\W和;之间的数
java·数据库·c#
陈俊杰11 小时前
MySQL中的数字数据类型的一个概述
数据库·mysql
yingchenwy2 小时前
Mongodb学习记录
数据库·学习·mongodb
聪明的墨菲特i2 小时前
Django中如何实现用户认证和会话管理
开发语言·数据库·python·pycharm·django·会话管理
一叶知秋灬龍2 小时前
.NET Sqlite加密
数据库·sqlite
chusheng18403 小时前
Python 如何处理大规模数据库表的迁移与数据迁移的高效执行
数据库·python·oracle
栀夏6133 小时前
MongoDB oplog 详解
数据库
德迅云安全-初启3 小时前
如何做好SQL 数据库安全
数据库·sql