1.下载安装包:https://dev.mysql.com/downloads/mysql/
2.上传至Linux服务器(我保存位置是:/opt)
3.检查系统是否安装过MySQL用户组,没有就创建
#检查用户组
cat /etc/group | grep mysql
cat /etc/passwd |grep mysql
#创建用户组
groupadd mysql
useradd -r -g mysql mysql
4.删除系统自带的Mariadb
#查看mariadb名称
rpm -qa|grep mariadb
#根据实际名称进行删除
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
5.删除/etc/my.cnf,后面在新建
6.解压文件,并改名为mysql5.7,方便后续操作
#解压
tar -zxvf mysql-5.7.39-linux-glibc2.12-x86_64.tar.gz
#改名
mv mysql-5.7.39-linux-glibc2.12-x86_64 mysql5.7
7.更改mysql5.7 目录下所有文件夹所属的用户组、用户以及权限
chown -R mysql:mysql /opt/mysql5.7/
chmod -R 755 /opt/mysql5.7/
#若出现无效模式错误,在命令前添加sudo,如
sudo chown -R mysql:mysql /opt/mysql5.7
sudo chmod -R 755 /opt/mysql5.7
8.进入/opt/mysql5.7/bin,执行命令安装mysql,务必记住临时密码,在最后一行
#安装命令
./mysqld --initialize --user=mysql --datadir=/opt/mysql5.7/data --basedir=/opt/mysql5.7
#临时密码在alhost:后面 例如:
alhost: Kym9bujXos:a
9.在/etc/下面新建my.cnf文件,并修改文件权限(启动时候出现:Starting MySQL... ERROR! The server quit without updating PID file 的错误,在不需要自定义配置时将my.cnf删除即可。或者参考https://www.cnblogs.com/apolloren/p/9979339.html)
vi /etc/my.cnf
#文件内容如下,datadir路径根据实际配置
[mysqld]
datadir=/opt/mysql5.7/data
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
max_connections=400
innodb_file_per_table=1
#修改文件权限
chmod -R 775 /etc/my.cnf
10.修改/opt/mysql5.7/support-files下的mysql.server文件,将/usr/local/mysql全部替换为/opt/mysql5.7(因为没有安装在默认路劲,所以修改为实际安装路径)
10.启动mysql,在support-files下执行 ./mysql.server start
./mysql.server start
11.添加软连接
ln -s /opt/mysql5.7/support-files/mysql.server /etc/init.d/mysql
ln -s /opt/mysql5.7/bin/mysql /usr/bin/mysql
#重启服务
service mysql restart
12.登录MySQL修改密码和远程连接
#登录MySQL,密码是之前生成的临时密码
mysql -u root -p
#修改密码
set password for root@localhost = password('123456');
#开启远程连接
use mysql
update user set user.Host='%' where user.User='root';
flush privileges;
13.关闭防火墙或者开放3306端口
#打开3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
#配置立即生效
firewall-cmd --reload
#关闭防火墙
systemctl stop firewalld
14.使用Navicat远程连接验证连接。
15.设置开机启动,也可不设置
cp /opt/mysql5.7/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig --list