CentOS7安装MySQL并搭建一主二从架构
一. CentOS7安装MySQL
1. 安装wget
yum -y install wget
2. 下载MySQL官方的Yum Repository
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
3. 安装Yum Repository
yum -y install mysql57-community-release-el7-10.noarch.rpm
4. 安装MySQL服务器
yum -y install mysql-community-server
5. 启动MySQL
systemctl start mysqld.service
6. 查看是否启动成功
systemctl status mysqld.service
7. 查看MySQL(root账户)的临时密码
grep “password” /var/log/mysqld.log红色框框里面的内容即为临时密码(注意保存记下来,防止丢失)
8. 登录mysql
mysql -uroot -p
输入此命令之后回车,再输入上一步查找出来的临时密码,回车之后即可登录进MySQL
9. 修改临时密码
登录之后需要先修改临时密码才能进行其他操作
ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘123456’;
单引号的内容即为自己设置的密码,修改时会报错:ERROR 1819 (HY000): Your password does not satisfy the current policy requirements,需要设置密码策略
10. 修改密码策略
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
执行这两条命令后再执行修改密码的命令即可成功修改密码
11. 给远程登录授予权限
#任何主机
mysql>GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘123456’ WITH GRANT OPTION;
#指定主机
将%换成IP即可
12. 然后刷新权限
mysql>flush privileges;
13. 重启服务
service mysqld restart
二. 搭建MySQL一主二从架构
1. 准备三台安装好MySQL的虚拟机
2. 配置MySQL
各个节点都必须开启bin-log(本文以141为master节点,142和171位slave节点)
修改my.cnf进行相关配置
其余两个MySQL进行类似的配置,只需将server-id和log-bin设为不同的值即可
3. 在slave节点上配置master节点的信息
配置完成后Slave_IO_Running和Slave_SQL_Running两个线程默认没有开启,需要手动开启
4. 开启线程
执行此命令后两个线程就都开启了
5. 重启MySQL服务
service mysqld restart
此时配置已完成,进行测试
6. 测试
172.10.102.141为master,新建数据库tuling2,再建表,向表中添加几行数据,刷新142和171数据库,发现数据完全同步过来了。