Mysql解决方案
作者:myboy
时间:2020.03.10
一、centos7安装mysql5.7
1. 下载mysql的yum源
通过上方的链接进入下载页面,选择与自己操作系统对应的rpm包进行下载,可以通过下载到本地然后上传的linux中的方式,也可以获取下载链接后直接在linux中下载的方法,这里我们直接获取下载链接后再linux上下载
#新建/opt/software目录用于存放下载的rpm包,使用wget命令进行下载
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
2. 安装下载下来的rpm包
rpm -Uvh mysql80-community-release-el7-3.noarch.rpm
3. 查看所有mysql相关的包,并且查看哪些将会默认下载安装
yum repolist all | grep mysql
发现默认mysql8.0是默认安装的,然而我们要安装的是mysql5.7,因此我们需要修改配置文件使得默认安装的是mysql5.7
4. 修改安装的配置文件
进入配置文件
vim /etc/yum.repos.d/mysql-community.repo
修改mysql5.7的enable为1,mysql8.0的enable为0,修改后结果如下:
# Enable to use MySQL 5.7
[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
[mysql80-community]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/7/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
5. 验证我们的配置结果
yum repolist enabled | grep mysql
若显示有mysql5.7,没有mysql8.0即证明上述配置成功
6. 安装mysql
yum install mysql-community-server -y
7. 开启mysql服务
systemctl start mysqld.service
8. 查看mysql服务是否开启
systemctl status mysqld.service
9. 查询mysql默认初始密码
grep 'temporary password' /var/log/mysqld.log
10. 记录下密码,登录mysql
mysql -uroot -p
11. 修改mysql密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Blpblp123!';
Note
我们之前看到和mysql一起安装的还有两个组件,这就要求密码至少有一个大写字母,一个小写字母,一个数字和一个特殊字符,并且密码长度最少需要8位
二、mysql设置远程访问权限
我们刚装好的mysql默认只允许本地访问,然而我们实际环境中都是通过远程连接mysql的,这时候我们就需要设置mysql的登录权限了
1. 登录mysql
[root@myboy ~]# mysql -uroot -p
2. 选择mysql数据库
mysql> use mysql;
3. 查看user表
mysql> select Host,User from user;
+-----------+---------------+
| Host | User |
+-----------+---------------+
| localhost | mysql.session |
| localhost | mysql.sys |
| localhost | root |
+-----------+---------------+
3 rows in set (0.00 sec)
我们发现root用户只允许本地主机登录,下面我们来进行修改
4. 修改root用户的Host
mysql> update user set Host='%' where User='root';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
5. 刷新权限
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
ok,mysql设置远程访问权限到此完毕,接下来就可以测试连接了