【2025年8月5日】mysql-8.0.38-linux-glibc2.12-x86_64.tar.xz 安装MySQL操作指引

你提到的 mysql-8.0.38-linux-glibc2.12-x86_64.tar.xz 是 MySQL 8.0.38 版本的 Linux 二进制发行包(适用于 glibc 2.12 及以上版本的 64 位系统)。以下是使用该包在 Linux 系统中安装 MySQL 的步骤:

安装前准备

  1. 检查系统依赖

    确保系统已安装 libaio 库(MySQL 运行依赖):

    bash 复制代码
    # CentOS/RHEL 系统
    sudo yum install libaio -y
    
    # Ubuntu/Debian 系统
    sudo apt-get install libaio1 -y
  2. 创建 MySQL 用户和组

    为了安全,建议使用专用用户运行 MySQL:

    bash 复制代码
    sudo groupadd mysql
    sudo useradd -r -g mysql -s /bin/false mysql  # -r 表示系统用户,无登录权限
  3. 解压安装包

    假设安装包放在 /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 数据库

  1. 初始化数据目录

    使用 mysqld 初始化数据库(生成默认数据文件和临时密码):

    bash 复制代码
    cd /usr/local/mysql
    sudo bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

    执行后会输出一段日志,记录临时密码 (形如 root@localhost: xxxxxxxx),后续登录需要使用。

  2. 配置 SSL 加密(可选)

    生成 SSL 证书(增强连接安全性):

    bash 复制代码
    sudo bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data

配置 MySQL 服务

  1. 创建系统服务文件

    方便通过 systemd 管理 MySQL 服务:

    bash 复制代码
    sudo 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
  2. 创建配置文件

    在 MySQL 安装目录创建 my.cnf 配置文件:

    bash 复制代码
    sudo 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 并设置密码

  1. 启动服务并设置开机自启

    bash 复制代码
    # 重载系统服务
    sudo systemctl daemon-reload
    
    # 启动 MySQL
    sudo systemctl start mysqld
    
    # 查看状态
    sudo systemctl status mysqld
    
    # 设置开机自启
    sudo systemctl enable mysqld
  2. 登录 MySQL 并修改密码

    使用初始化时的临时密码登录:

    bash 复制代码
    /usr/local/mysql/bin/mysql -u root -p

    输入临时密码后,执行以下命令修改密码(MySQL 8.0 要求强密码):

    sql 复制代码
    ALTER 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 端口。

相关推荐
小此方9 小时前
Re:Mysql数据库基础篇(十二):什么是事务、事务解决了什么问题、事务的四大属性、事务的操作方式
数据库·mysql
csdn_aspnet10 小时前
macOS 10 、Docker 玩轉 MySQL
运维·mysql·macos·docker·容器·mac
flash俊杰11 小时前
v0.5-01 让桌面 AI 助手记得住:预算组装、递归摘要、长期记忆与评估基线
数据库·安全·架构
王中阳Go11 小时前
100 件货卖出 116 件,库存停在 -16
后端·mysql·go
2501_9339232511 小时前
redis:string类型常见命令
数据库·redis·缓存
爱和冰阔落11 小时前
【Linux网络】TCP 半包粘包怎么解决?从长度报头、JSON 拆包到网络计算器完整实战
linux·运维·网络·tcp/ip
byte轻骑兵12 小时前
时序数据库选型指南:Apache IoTDB 社区版实践与踩坑
数据库·人工智能·apache·时序数据库·iotdb
黄连木笛13 小时前
Redis Insight 汉化教程:Windows / macOS / Linux 设置中文界面(附繁體、教程汉化、关闭自动更新)
数据库·redis·缓存
nice_lcj52013 小时前
MySQL 存储引擎入门:InnoDB 和 MyISAM 到底怎么选
java·数据库·mysql·面试·innodb·存储引擎·myisam
say_fall13 小时前
【Linux网络编程】UDP套接字编程:系统编程组件、基础回显服务、InetAddr与地址转换、翻译服务与线程池聊天室
linux·服务器·网络·udp·vr