1 下载包mysql-5.7.27-linux-glibc2.12-x86_64.tar.gz(可官网下载) 至/usr/local目录
官网下载:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
Linux命令下载:wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.27-linux-glibc2.12-x86_64.tar.gz
tar -zxvf mysql-5.7.27-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.27-linux-glibc2.12-x86_64 mysql
看系统自带的Mariadb并卸载
rpm -qa|grep mariadb
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
2 添加系统mysql组和mysql用户
groupadd mysql
useradd -r -g mysql mysql
安装数据库
cd mysql
mkdir data
#将/usr/local/mysql的所有者及所属组改为mysql
chown -R mysql.mysql /usr/local/mysql
#mysqld.log 、mysqld.pid 如果无则创建,如有请忽略
[root@j5lZ data]# touch mysqld.log
[root@j5lZ data]# touch mysqld.pid
[root@j5lZ support-files]# touch my_default.cnf
[root@j5lZ support-files]# vim my_default.cnf
编辑my_default.cnf
[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
socket = /tmp/mysql.sock
character-set-server=utf8
log-error = /usr/local/mysql/data/mysqld.log
pid-file = /usr/local/mysql/data/mysqld.pid
把 support-files/my_default.cnf 复制到 /etc/my.cnf
cp my_default.cnf /etc/my.cnf
初始化 mysqld
[root@j5lZ mysql]# ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
#初始化完成之后,查看日志,日志中root@localhost:后面信息就是root初始化临时密码
[root@j5lZ mysql]#cat /usr/local/mysql/data/mysqld.log
#2025-05-08T06:26:51.746346Z 1 [Note] A temporary password is generated for root@localhost: sD:1epoSd9mx
#把启动脚本放到开机初始化目录
cp support-files/mysql.server /etc/init.d/mysql
#设置开机自启
chmod +x /etc/init.d/mysql
chkconfig --add mysql
chkconfig --list
#看到3、4、5状态为开或者为 on 则表示成功。 如果是 关或者 off 则执行一下:
chkconfig --level 345 mysqld on
#启动mysql服务
[root@j5lZ mysql]# service mysql start
Starting MySQL. SUCCESS!
输入初始密码(1epoSd9mx),此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库
#登录mysql,密码为初始密码
[root@j5lZ mysql]# ./bin/mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 18
Server version: 5.7.27
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
#修改密码
mysql> set password=password('root');
mysql> grant all privileges on *.* to root@'%' identified by 'root';
mysql> flush privileges;
3 开启mysql的远程访问
执行以下命令开启远程访问限制 (注意开启所有的)
mysql> grant all on *.* to 'root'@'%'IDENTIFIED BY 'root'; #使用root替换dms,可设置为允许root账号远程登录。
mysql> flush privileges;
#添加远程访问权限 方式2
mysql> use mysql;
mysql> update user set host='%' where user = 'root';
mysql> flush privileges
``````powershell
mysql> exit
#重启mysql生效
service mysql stop
service mysql start
或
service mysql restart
4 为firewalld添加开放端口
添加mysql端口3306和Tomcat端口8080
[root@localhost ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
[root@localhost ~]# firewall-cmd --zone=public --add-port=8080/tcp --permanent
然后再重新载入
[root@localhost ~]# firewall-cmd --reload