1.删除mariadb
rpm -qa | grep mariadb
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
2.解压
tar -zxvf mysql-5.7.29-linux-glibc2.12-x86_64
3.重命名
mv mysql-5.7.29-linux-glibc2.12-x86_64 mysql-5.7.31
4.创建数据目录
mkdir -p /snt/data/mysql/data
5.创建用户组与用户权限
groupadd mysql
useradd -g mysql mysql
passwd mysql
chown -R mysql:mysql /snt/soft/mysql/mysql-5.7.29
chown -R mysql:mysql /snt/data/mysql/data
6.创建配置表
vim /etc/my.cnf
[mysqld]
basedir=/snt/soft/mysql/mysql-5.7.29
datadir=/snt/data/mysql/data
socket=/snt/soft/mysql/mysql-5.7.29/mysql.sock
character_set_server=utf8
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
#validate_password_policy=0
#validate_password = off
log-error=/snt/soft/mysql/mysql-5.7.29/log/mysqld.log
pid-file=/snt/soft/mysql/mysql-5.7.29/log/mysqld.pid
wait_timeout=300
interactive_timeout=300
max_connections=2000
[client]
port=3306
socket=/u01/mysql-5.7.6/mysql.sock
7.数据库初始化
cd /snt/soft/mysql/mysql-5.7.29/bin
./mysqld --initialize --user=mysql --basedir=/snt/soft/mysql/mysql-5.7.29 --datadir=/snt/data/mysql/data
报错:error while loading shared libraries: libaio.so.1
解决:yum install libaio-devel.x86_64
报错:error while loading shared libraries: libnuma.so.1
解决:yum install numactl-libs.x86_64
报错:[ERROR] Could not open file '/snt/soft/mysql/mysql-5.7.31/log/mysqld.log' for error logging: Permission denied
解决:chown -R mysql:mysql ../log
8.获取初始化密码
cat log/mysqld.log
## 9.修改mysql.server
vim /snt/soft/mysql/mysql-5.7.29/support-files/mysql.server
basedir=/snt/soft/mysql/mysql-5.7.29
datadir=/snt/data/mysql/data
10.设置开机自启动mysql服务
cp /snt/soft/mysql/mysql-5.7.29/support-files/mysql.server /etc/rc.d/init.d/mysqld
chmod +x /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
11.切换用户启动
su mysql
service mysqld start
出现以下报错,是因为系统自带的mariadb未卸载
删除后正常启动
12.拷贝mysql命令
su root
cp /snt/soft/mysql/mysql-5.7.29/bin/mysql /usr/local/bin/
13.登录mysql
mysql -uroot -p
输入初始化时候生成的密码
mysql命令报错:yum install libncurses*
14.修改本机登录密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'javasnt2021';
flush privileges;
15.开启远程登录
grant all privileges on *.* to root@'%' identified by 'javasnt2021';
flush privileges;
16.使用navicat连接进行测试
这种情况首先检查网络,是否可以ping通,网络正常,检查防火墙和selinux。
systemctl status firewalld.service
systemctl stop firewalld.service && systemctl disable firewalld.service
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
cat /etc/selinux/config
- 测试
附录
下载地址:https://downloads.mysql.com/archives/community/ (按需要选择版本)
下载链接:https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz