在Rocky Linux 9系统中使用二进制包安装MySQL5.7           

在Rocky Linux 9系统中使用二进制包安装MySQL5.7

作者 hxwsq_华 于 2024-12-13 12:39:00.0 发表于 浙江    最近修改于 2025-02-11 14:40:35.0     本文浏览量:134人次

一、说明

1.1 操作系统版本

本文使用的操作系统版本:Rocky Linux 9

cat /etc/rocky-release

1.2 准备工作

MySQL5.7免编译二进制安装包官方下载

二、步骤

2.1 获取MySQL二进制安装包,解压至安装目录并重命名为mysql

wget https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz
tar -zxf mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
mv /usr/local/mysql-5.7.44-linux-glibc2.12-x86_64 /usr/local/mysql

2.2 安装所需的依赖包

dnf -y install ncurses-compat-libs

2.3 创建系统用户mysql

groupadd mysql
useradd -r -g mysql -s /sbin/nologin mysql

2.4 创建MySQL存放数据、日志和配置文件的目录,并创建配置文件my.cnf

mkdir /usr/local/mysql/{data,log,conf}
---配置文件仅供参考
cat << 'EOF' > /usr/local/mysql/conf/my.cnf
[mysqld]
user=mysql
port=3306
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
log-error=/usr/local/mysql/log/mysqld.log
pid-file=/usr/local/mysql/mysqld.pid
character-set-server=utf8mb4
symbolic-links=0
lower_case_table_names=1
max_allowed_packet=1024M
socket=/tmp/mysql.sock
[mysql]
socket=/tmp/mysql.sock
[client]
socket=/tmp/mysql.sock
EOF

2.5 初始化MySQL数据库

chown -R mysql:mysql /usr/local/mysql/
cd /usr/local/mysql/bin/ && ./mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize-insecure
-----initialize-insecure表示不生成临时密码,首次登录MySQL数据库时无需密码

2.6 配置MySQL服务为系统服务

cat << 'EOF' > /usr/lib/systemd/system/mysqld.service
[Unit]
Description=MySQL
ServerDocumentation=man:mysqld(8)
Documentation=http://dev/mysql.com/doc/refman/en/using-systemd.html
After=network.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/conf/my.cnf
LimitNOFILE=65536
LimitNPROC=65536
[Install]
WantedBy=multi-user.target
EOF

2.7 启动MySQL数据库并配置开机自启动

echo "export PATH=/usr/local/mysql/bin:\$PATH" >> /etc/profile
source /etc/profile
systemctl daemon-reload
systemctl enable --now mysqld.service

2.8 配置MySQL数据库的管理员密码

mysql> alter user 'root'@'localhost' identified by '123456';
---密码123456可自定义

2.9 开启MySQL数据库允许远程访问的权限

---如果MySQL数据库只供本机服务访问,可不开启远程访问
mysql> use mysql
mysql> update user set host='%' where user='root';
mysql> flush privileges;

本站声明

本站所有文章均由作者(hxwsq_华)个人整理和发布,仅供学习和参考,严禁任何形式的复制和转载!
如有疑问,请点击此处给作者发邮件,谢谢!