目录
1. firewall-cmd --add-port=3306/tcp --permanent
2. firewall-cmd --add-source=slave的ip地址 --permanent (不需要做)
1.安装
yum localinstall https://repo.mysql.com//mysql80-community-release-el7-11.noarch.rpm
yum install mysql-community-server
2. 启服务并设置开机自启,并修改密码
初始密码在/var/log/mysqld.log
可以cat /var/log/mysqld.log
3.修改master配置文件
在主服务器上编辑MariaDB配置文件/etc/my.cnf添加以下配置:
[mysqld]
server-id=1
log-bin=mysql-bin
binlog-format=row
重启数据库服务
4.创建用户
在主服务器上创建用于复制的用户,并授予复制权限:
mysql> Mysql -u root -p
mysql> GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'slave_ip' IDENTIFIED BY 'password';
mysql> FLUSH PRIVILEGES;
mysql> ALTER USER 'slave'@'192.168.2.212' IDENTIFIED WITH 'mysql_native_password' BY '123456.Com';
(指定用户验证的方式,修改名为'slave'、从IP地址192.168.2.212连接的MySQL用户,将其身份验证方式设置为使用mysql_native_password插件,并将密码设置为'123456.Com')
需要注意的是,mysql_native_password插件已经过时,新版本的MySQL已经不再支持这个插件。因此,如果你正在使用新版本的MySQL,可能需要考虑使用其他身份验证插件,如caching_sha2_password或mysql_native_password的替代品。
5.修改slave配置文件
在从服务器上编辑MariaDB配置文件/etc/my.cnf,添加以下配置:
[mysqld]
server-id=2
relay-log=mysql-relay-bin
log-slave-updates=1
重启数据库服务
5.指定master服务器
在从服务器上执行以下命令设置主服务器信息并开始复制:
mysql -u root -p
mysql> CHANGE MASTER TO MASTER_HOST='master_ip', MASTER_USER='replication_user', MASTER_PASSWORD='password', MASTER_LOG_FILE='binlog_file', MASTER_LOG_POS=log_position;
mysql> START SLAVE;
6.检查从的状态
在从服务器上执行以下命令检查复制状态:
mysql -u root -p
mysql> SHOW SLAVE STATUS\G
确保Slave_IO_Running和Slave_SQL_Running都显示为Yes,表示复制已经成功启动
7.防火墙的配置
1. firewall-cmd --add-port=3306/tcp --permanent
firewall-cmd –-reload
2. firewall-cmd --add-source=slave的ip地址 --permanent (不需要做)
firewall-cmd --reload