这是松哥之前一个零散的笔记,整理出来分享给大伙!
MySQL 读写分离在互联网项目中应该算是一个非常常见的需求了。受困于 Linux 和 MySQL 版本问题,很多人经常会搭建失败,今天松哥就给大伙举一个成功的例子,后面有时间再和大家分享下使用 Docker 搭建环境,那样就 100% 成功了。
CentOS 安装 MySQL
自己玩 Linux 松哥一般首选 Ubuntu,不过公司里边使用一般还是 CentOS 为主,因此这里松哥就以 CentOS 为例来向大家演示整个过程,今天这篇文章主要来看看 MySQL 的安装。
环境:
- CentOS7
- MySQL5.7
具体的安装步骤如下:
- 检查是否安装了 mariadb,如果已经安装了则卸载:
1 | yum list installed | grep mariadb |
如果执行结果如下,表示已经安装了 mariadb,将之卸载:
1 | mariadb-libs.x86_64 1:5.5.52-1.el7 @anaconda |
卸载命令如下:
1 | yum -y remove mariadb* |
- 接下来下载官方提供的 rpm 包
如果 CentOS 上没有 wget 命令,首先通过如下命令安装 wget:
1 | yum install wget |
然后执行如下操作下载 rpm 包:
1 | wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm |
- 下载完成后,安装rpm包:
1 | rpm -ivh mysql57-community-release-el7-11.noarch.rpm |
- 检查 MySQL 的 yum 源是否安装成功:
1 | yum repolist enabled | grep "mysql.*-community.*" |
执行结果如下表示安装成功:
- 安装 MySQL
1 | yum install mysql-server |
- 安装完成后,启动MySQL:
1 | systemctl start mysqld.service |
- 停止MySQL:
1 | systemctl stop mysqld.service |
- 登录 MySQL:
1 | mysql -u root -p |
默认无密码。有的版本有默认密码,查看默认密码,首先去 /etc/my.cnf 目录下查看 MySQL 的日志位置,然后打开日志文件,可以看到日志中有一个提示,生成了一个临时的默认密码,使用这个密码登录,登录成功后修改密码即可。
- 改密码
首先修改密码策略(这一步不是必须的,如果不修改密码策略,需要取一个比较复杂的密码,松哥这里简单起见,就修改下密码策略):
1 | set global validate_password_policy=0; |
然后重置密码:
1 | set password=password("123"); |
- 授权远程登录同方式一:
1 | grant all privileges on *.* to 'root'@'%' identified by '123' with grant option; |
- 授权远程登录同方式二:
修改 mysql 库中的 user 表,将 root 用户的 Host 字段的值改为 %
,然后重启 MySQL 即可。
- 关闭防火墙
MySQL 要能远程访问,还需要关闭防火墙:
1 | systemctl stop firewalld.service |
禁止firewall开机启动:
1 | systemctl disable firewalld.service |
总结
装了这么多 MySQL ,还是 Ubuntu 下 MySQL 最好弄,其他系统多多少少总有点麻烦,本文主要和大家分享了 CentOS7 中 MySQL 的安装步骤,大伙有问题欢迎留言讨论。下篇文章和大伙分享 MySQL 读写分离环境搭建。