Linux 主从数据库

主从数据库

主数据库的内容同步传输到附属数据库
客户访问附属数据库
这样做保证了数据库的稳定性
需要两台虚拟机

两边个虚拟机都要操作
配置hosts文件
进入/etc/hosts追加输入
192.168.200.30 mysql1
192.168.200.40 mysql2
可以通过ping主机名来访问ip地址

yum install -y mariadb mariadb-server

systemctl start mariadb

初始化数据库

mysql_secure_installation

Disallow root login remotely 为no其他为yes

mysql1的配置文件

[mysqld]
log_bin=mysql-bin 这条语句确定主数据库
server_id=30 根据ip地址最后一位

mysql2从数据库

[mysqld]
server_id=40

配置文件最好在末行输入

两边个虚拟机都要操作
systemctl restart mariadb
mysql -uroot -p000000

mysql

在mysql1节点,授权在任何客户端机器上可以以root用户登录数据库,然后在主节点上创建一个user用户连接节点mysql2,并赋予从节点同步主接点数据的权限 #授权
创建用户接应

grant all privileges on *.* to root@'%' identified by '0000000';
Grant replication slave on *.* to 'user'@'mysql2' identified by'000000';

mysql2

change master to master_host='mysql1',master_user='user',master_password='000000';

start slave;
show slave status\G

报错点

Error 'Can't create database 'mqy_never_surrender'; database exists' on query. Default database: 'mqy_never_surrender'. Query: 'create database mqy_never_surrender'
解决方式
stop slave
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
start slave

跳过密码

在[mysqld]下使用
skip-grant-tables

posted @ 2021-12-14 18:35  supermao12  阅读(92)  评论(0编辑  收藏  举报