一、查看MySQL5.7的yum源
进入MySQL官网,或者直接点开这个地址:https://dev.mysql.com/downloads/repo/yum/ 。
之所以选择7这个版本,是因为这个版本里面包含有MySQL5.5,5.6,5.7,8.0版本,最新的8版本里面只有8了。在下载页复制下载链接https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm。
二、删除老版本yum源
查看MySQL安装情况
1
rpm -qa | grep -i mysql
停止MySQL服务
1
service mysql stop
删除已安装的rpm包
1
rpm -e --nodeps 文件名
检查MySQL安装情况
1
rpm -qa | grep -i mysql
三、下载安装yum源
下载yum源
1
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
安装命令
继续输入安装命令:
1
rpm -ivh mysql57-community-release-el7-11.noarch.rpm
修改yum默认安装版本
若是直接下载的5.7的yum源可以不用修改此步骤。
运行查看可安装的mysql的命令
1
yum repolist all| grep mysql
修改安装版本
若上面查看要安装的版本是禁用状态,则修改安装版本:
1
vim /etc/yum.repos.d/mysql-community.repo
将5.7版本enabled设置为1,其他设置为0。
通过yum安装MySQL
1
yum install -y mysql-community-server
然后等待安装完成。
四、启动MySQL服务
开启数据库
1
systemctl start mysqld
开启开机自启数据库
1
systemctl enable mysqld
五、修改MySQL的初始密码
查看MySQL初始密码
1
grep 'password' /var/log/mysqld.log
也可以自己查看:
1
vi /var/log/mysqld.log
修改初始密码
1
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Root123@';
或者:
1
set password for 'root'@'localhost'=password('Root123@');
注意:mysql5.7默认密码策略要求密码必须是大小写字母数字特殊字母的组合,至少8位。
六、设置远程访问
设置防火墙开放3306端口
打开防火墙配置文件
1
vi /etc/sysconfig/iptables
在icmp-host-prohibited前增加一行
1
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
重启防火墙
1
service iptables restart
重启MySQL
1
systemctl restart mysqld
MySQL授权
1
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Root123@' WITH GRANT OPTION;
这句话解决了一个问题,就是那个“%”。它允许XXX用户远程连接Mysql服务,而如果@后边的那个值是 localhost 的话,那XXX用户就只能在服务器上连接Mysql服务了。如果用户不是你建的,那就得去mysql的user表中将该用户的host改为%就行了。
本地Navicat工具连接测试
七、修改MySQL默认编码
修改默认编码为utf-8
修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置:
1
2character_set_server=utf8
init_connect='SET NAMES utf8'重启MySQL
1
systemctl restart mysqld
登录root用户查看编码
1
show variables like '%character%';