mariadb主从同步
主:
1.通过 vi /etc/my.cnf 命令修改主服务器数据库的主要配置文件:
在第一个模块下加上开启binog
log-bin=mysql-bin
添加标识符: server-id=1 声明是唯一的
2.重启数据库:
通过 systemctl restart mariadb 命令重启数据库:
3.进入mysql:
mysql -uroot -p'123'
4.进入数据库的内部进行授权
GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY '123'; 命令进行授权:
grant 授权
replication slave 数据库自带的同步权限
on代表同步哪个库
*.*是所有东西
to 后表示允许谁
‘用户名’@‘从库的IP地址’
identified by ‘密码’
5.进行进行完操作后进行刷新
flush privileges; 刷新
6.获取二进制日志的信息
show master status;
打印出日志记录则表示成功,如果没有检查你的配置信息。或者重启服务再试
7.从
首先安装MariaDB
通过安装命令:yum -y install mariadb mariadb-server 安装
8.启动MariaDB
systemctl start mariadb
通过 vi /etc/my.cnf 修改server-id=2不能与主库一致
mysqladmin -uroot password '123'
mysql -uroot -p'123'
mysql>\e
CHANGE MASTER TO
MASTER_HOST='192.168.1.107',
MASTER_USER='root',
MASTER_PASSWORD='root',
MASTER_LOG_FILE='上图file的值',
MASTER_LOG_POS=上图position的值
mysql>;
启动主从同步进程
通过 start slave; 命令启动:
show slave status \G; 检查状态
Slave_IO_Running|Slave_SQL_Running都为yes则表示成功。
开启远程访问权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
进行进行完操作后进行刷新
flush privileges;
制作互为主从则反过来进行相同操作
mysql互为主从
vim /etc/my.cnf #编辑配置文件开启gtid
log-bin=m1.log
server-id=1
gtid_mode = ON #开启gtid
enforce_gtid_consistency=1 #强制gtid移植性
# systemctl restart mysqld
# mysql -uroot -p'123' #登录数据库
mysql> GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY '123'; #创建远程登录用户
mysql> flush privileges;
mysql> grant replication slave,reload,super on *.* to 'slave'@'%' identified by '123'; ---创建主从授权用户
mysql> flush privileges; #刷新授权
mysql> \e #指定主服务器信息
CHANGE MASTER TO
MASTER_HOST='192.168.58.136', #指定主服务器的ip或者主机名
MASTER_USER='slave', #授权用户
MASTER_PASSWORD='123', #授权用户密码
master_auto_position=1
-> ;
启动slave
mysql> start slave;
第二台机器
# vim /etc/my.cnf
log-bin=m2.log
server-id=2
gtid_mode = ON
enforce_gtid_consistency=1
# systemctl restart mysqld
# mysql -uroot -p'123'
mysql> GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY '123';
mysql> flush privileges;
mysql> grant replication slave,reload,super on *.* to 'slave'@'%' identified by '123';
mysql> flush privileges;
指定主服务器信息
mysql> \e
CHANGE MASTER TO
MASTER_HOST='192.168.58.135',
MASTER_USER='slave',
MASTER_PASSWORD='123',
master_auto_position=1
-> ;
启动slave
mysql> start slave;
注意:修改完配置文件要重启,修改的内容要加在中间不可加在最后。若只制作一主一从则主机进行创建用户进行授权;从机使用\e命令配置,在从机上启动START SLAVE; 如果出现IO进程显示connecting则需要change master to的时候加上
MASTER_LOG_FILE='上图file的值',
MASTER_LOG_POS=上图position的值 然后重新启动slave