一、下载MySQL5.7
官网下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
选择64位的压缩包,先下载到本地,再上传到服务器上比较快
二、上传到服务器并解压
# 安装文件传输助手
yum install -y lrzsz
# 上传本地的MySQL压缩包
cd /usr/src/
rz
# 选择本地MySQL包
# 解压缩
tar -zxvf mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz
# 移动并重命名
mv mysql-5.7.33-linux-glibc2.12-x86_64 /usr/local/mysql
三、创建MySQL用户组
方便后续进行数据库管理
# 创建MySQL用户组和用户
groupadd mysql
# -f 表示为系统用户 -g纳入组
useradd -r -g mysql mysql
# 创建mysql数据目录并修改所有人/组
mkdir -p /data/mysql
chown -R mysql:mysql /data/mysql
四、配置MySQL
# 备份系统自带的默认mysql配置
cp /etc/my.cnf /etc/my-backup.cnf
vim /etc/my.cnf
# 输入如下内容
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
五、启动MySQL
# 直接使用 mysql 会报command not found错误
# 方案一、配置软连接
#ln -s /usr/local/mysql/bin/mysql /usr/bin
# 方案二、配置环境变量
vim /etc/profile
# 追加底部一行 export PATH=$PATH:/usr/local/mysql/bin
# 如果已有,用英文冒号:追加在后面即可
# 刷新配置
source /etc/profile
#先安装一下这个东东,要不然初始化有可能会报错
yum install libaio
# 初始化MySQL:指定配置文件、运行/数据目录、用户
mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize
# 读取初始化时分配的随机密码
cat /data/mysql/mysql.err
# 添加开启启动项
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
# 启动MySQL
service mysql start
ps -ef|grep mysql
六、修改密码并支持远程连接
(1)修改密码,支持指定账号任意host连接
# 登陆MySQL
mysql -u root -p
[前面的随机密码]
# 修改密码
SET PASSWORD = PASSWORD('root');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;
# 允许任意Host远程连接
use mysql #访问mysql库
update user set host = '%' where user = 'root'; #使root能再任何host访问
FLUSH PRIVILEGES;
(二)防火墙开放3306端口
firewall-cmd --list-all
firewall-cmd --add-port=3306/tcp --permanent
firewall-cmd --reload
# 暂时关闭/开启防火墙
#systemctl stop firewalld.service
#systemctl start firewalld.service
# 永久关闭防火墙
#systemctl disable firewalld.service