如何使用apt安装mysql_mysql官方安装方式

10次阅读

apt install mysql-server 在 ubuntu/debian 中默认安装 mariadb 而非 oracle 官方 MySQL,因系统维护者自 Ubuntu 22.04、Debian 11+ 起将 mysql-server 包指向兼容分支 MariaDB;需通过官方 APT 仓库或手动安装 .deb 包获取 Oracle MySQL。

如何使用apt安装mysql_mysql官方安装方式

Ubuntu/Debian 系统中用 apt 安装 MySQL,实际安装的是 MySQL 社区版的兼容分支——MariaDB(自 Ubuntu 22.04、Debian 11+ 起默认替换),而非 Oracle 官方 MySQL。若明确需要 Oracle 官方 MySQL(含 MySQL Server、MySQL Shell、Connector 等完整生态),必须绕过 apt 仓库,改用官方 APT 仓库或 tarball 方式安装。

为什么 apt install mysql-server 不等于官方 MySQL?

Debian/Ubuntu 维护者出于许可与维护策略考虑,将系统默认的 mysql-server 包指向了 MariaDB(一个高度兼容但独立开发的分支)。运行以下命令可验证:

mysql --versionmysqld --version

输出通常显示 mysqld Ver 10.x.x-MariaDB,而非 8.0.x MySQL Community Server

使用官方 MySQL APT 仓库安装(推荐)

Oracle 提供了适配 Debian/Ubuntu 的官方 .deb 包和签名 APT 源,支持自动更新,最接近“标准官方流程”:

  • 下载并安装 MySQL APT 配置包(以 Ubuntu 22.04 / Debian 11 为例):
    wget https://dev.mysql.com/get/mysql-apt-config_0.8.24-1_all.deb
    sudo dpkg -i mysql-apt-config_0.8.24-1_all.deb

    安装时会弹出交互界面,用方向键选中 MySQL Server & Cluster,按 Tab 切换到 OK 确认;如需 MySQL Shell 或 router,可一并勾选。
  • 更新源并安装:
    sudo apt update
    sudo apt install mysql-server

    安装过程会提示设置 root 密码(选择 Use Legacy Authentication Method 更兼容旧客户端)。
  • 验证:
    mysql --version → 应显示类似 mysql Ver 8.0.33 for linux on x86_64 (MySQL Community Server - GPL)

手动下载 .deb 包安装(离线/定制场景)

适合无外网更新需求、或需指定版本(如 8.0.32)的环境:

  • 前往 MySQL 官网下载页,选择 Linux – Generic 下的 DebianUbuntu 对应架构.deb-bundle(含 server、client、common 等多个 .deb)。
  • 解压后依次安装(顺序重要):
    sudo dpkg -i mysql-common_*.deb
    sudo dpkg -i mysql-community-client-plugins_*.deb
    sudo dpkg -i mysql-community-client-core_*.deb
    sudo dpkg -i mysql-community-client_*.deb
    sudo dpkg -i mysql-community-server-core_*.deb
    sudo dpkg -i mysql-community-server_*.deb

    若提示依赖错误,运行 sudo apt --fix-broken install 自动补全。

注意事项与常见问题

  • 端口冲突:若之前装过 MariaDB,请先卸载(sudo apt remove --purge mariadb-server)并删除数据目录(sudo rm -rf /var/lib/mysql),否则 MySQL 启动失败。
  • 服务管理:官方 MySQL 使用 mysqld 服务名,启动命令为 sudo systemctl start mysqld(不是 mysql)。
  • 安全初始化:首次启动后建议运行 sudo mysql_secure_installation 设置密码策略、移除匿名用户等。
  • 配置文件位置:主配置文件/etc/mysql/mysql.conf.d/mysqld.cnf,非 MariaDB 的 /etc/mysql/mariadb.conf.d/
text=ZqhQzanResources