你提到的 mysql-8.0.38-linux-glibc2.12-x86_64.tar.xz
是 MySQL 8.0.38 版本的 Linux 二进制发行包(适用于 glibc 2.12 及以上版本的 64 位系统)。以下是使用该包在 Linux 系统中安装 MySQL 的步骤:
安装前准备
-
检查系统依赖
确保系统已安装
libaio
库(MySQL 运行依赖):bash# CentOS/RHEL 系统 sudo yum install libaio -y # Ubuntu/Debian 系统 sudo apt-get install libaio1 -y
-
创建 MySQL 用户和组
为了安全,建议使用专用用户运行 MySQL:
bashsudo groupadd mysql sudo useradd -r -g mysql -s /bin/false mysql # -r 表示系统用户,无登录权限
-
解压安装包
假设安装包放在
/opt
目录,解压到/usr/local
并创建软链接:bash# 解压 sudo tar -Jxvf /opt/mysql-8.0.38-linux-glibc2.12-x86_64.tar.xz -C /usr/local # 进入安装目录,创建软链接(方便后续升级) cd /usr/local sudo ln -s mysql-8.0.38-linux-glibc2.12-x86_64 mysql # 设置目录权限 sudo chown -R mysql:mysql /usr/local/mysql
初始化 MySQL 数据库
-
初始化数据目录
使用
mysqld
初始化数据库(生成默认数据文件和临时密码):bashcd /usr/local/mysql sudo bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
执行后会输出一段日志,记录临时密码 (形如
root@localhost: xxxxxxxx
),后续登录需要使用。 -
配置 SSL 加密(可选)
生成 SSL 证书(增强连接安全性):
bashsudo bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
配置 MySQL 服务
-
创建系统服务文件
方便通过
systemd
管理 MySQL 服务:bashsudo vim /usr/lib/systemd/system/mysqld.service
写入以下内容:
ini[Unit] Description=MySQL Server Documentation=man:mysqld(8) Documentation=https://dev.mysql.com/doc/refman/en/using-systemd.html After=network.target After=syslog.target [Install] WantedBy=multi-user.target [Service] User=mysql Group=mysql ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/my.cnf --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql LimitNOFILE=5000
-
创建配置文件
在 MySQL 安装目录创建
my.cnf
配置文件:bashsudo vim /usr/local/mysql/my.cnf
基础配置示例:
ini[mysqld] basedir = /usr/local/mysql datadir = /usr/local/mysql/data socket = /tmp/mysql.sock port = 3306 character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci log-error = /usr/local/mysql/data/error.log pid-file = /usr/local/mysql/data/mysqld.pid
启动 MySQL 并设置密码
-
启动服务并设置开机自启
bash# 重载系统服务 sudo systemctl daemon-reload # 启动 MySQL sudo systemctl start mysqld # 查看状态 sudo systemctl status mysqld # 设置开机自启 sudo systemctl enable mysqld
-
登录 MySQL 并修改密码
使用初始化时的临时密码登录:
bash/usr/local/mysql/bin/mysql -u root -p
输入临时密码后,执行以下命令修改密码(MySQL 8.0 要求强密码):
sqlALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword@123';
添加环境变量(可选)
为了方便在任意目录使用 mysql
命令,可添加环境变量:
bash
echo 'export PATH=$PATH:/usr/local/mysql/bin' >> ~/.bashrc
source ~/.bashrc
通过以上步骤,即可完成 MySQL 8.0.38 的二进制包安装。如果需要远程访问,还需在 MySQL 中授权并开放防火墙 3306 端口。