Mysql搭建主从库
准备两台服务器,一台主数据库服务器,一台从数据库服务器,配置如下:
- 主数据库服务器:192.168.0.102
- 从数据库服务器:192.168.0.103
安装主从机器的数据库服务:
下载命令:
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
然后进行repo的安装:
rpm -ivh mysql57-community-release-el7-9.noarch.rpm
注意:必须进入到 /etc/yum.repos.d/目录后再执行以下脚本
安装命令:yum install mysql-server 启动msyql:systemctl start mysqld
获取安装时的临时密码:
grep 'temporary password' /var/log/mysqld.log
修改密码:
修改Mysql密码策略:
set global validate_password_policy=0; set global validate_password_length=1;
修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
主从配置步骤:
Master配置:
配置文件修改
vim /etc/my.cnf
添加配置:
log-bin=mysql-bin server-id=102
查看主节点状态:(查看的值在配置从节点时有用)
show master status;
创建用于主从同步的账户(注意:ip地址是从库的地址)
CREATE USER 'slave'@'192.168.0.103' IDENTIFIED BY 'slave';#创建用户 GRANT REPLICATION SLAVE ON *.* TO 'slave'@'192.168.0.103';#分配权限 flush privileges; #刷新权限
Slave配置:
修改配置文件
vim /etc/my.cnf
添加配置:
server-id=103
重启mysql,打开mysql会话,执行同步SQL语句
注意:(MASTER_LOG_POS与MASTER_LOG_FILE在Master中查看得到)
CHANGE MASTER TO MASTER_HOST='192.168.0.102', MASTER_USER='slave', MASTER_PASSWORD='slave', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=773;
启动slave同步进程
start slave;
查看slave状态:
show slave status\G;
如果出现两个Yes便成功,否则需要重新检查配置:
Slave_IO_Running: Yes Slave_SQL_Running: Yes