直接安装 mysql-client 或 mysql-community-client 即可,无需服务端;Ubuntu/Debian 用 apt 安装 mysql-client-8.0 获得完整工具,CentOS/RHEL 8+ 需先启用 MySQL 官方源再用 dnf 安装 mysql-community-client,离线安装须按 common→libs→client 顺序安装 RPM 包,且客户端与服务端认证插件需匹配。

直接装 mysql-client 或 mysql-community-client 就够用了,不需要装完整服务端。但具体命令取决于你用的是什么发行版、是否已启用 MySQL 官方源,以及是否只需要命令行工具还是连带 mysqldumpmysqladmin 等配套工具。
Ubuntu/Debian 上用 apt 装 mysql-client
默认仓库里的 mysql-client 包通常只含基础命令行客户端(mysql),不含 mysqldump 或 mysqlimport。如果你后续要导出数据或做备份,得装更全的包:
- 只装命令行客户端:
sudo apt install mysql-client - 装带常用管理工具的完整客户端套件:
sudo apt install mysql-client-8.0(版本号按实际调整,如mysql-client-5.7) - 验证是否装全:
mysql --version和mysqldump --version都应正常返回
注意:Ubuntu 22.04+ 默认仓库中 mysql-client 是指向 default-mysql-client 的软链接,实际安装的是 MariaDB 客户端(mariadb-client),它能连 MySQL 服务,但部分高级选项(如 --set-gtid-purged)不识别。真要对接 MySQL 8.0+ GTID 或认证插件,建议用官方包。
CentOS/RHEL 8+ 上用 dnf 装 mysql-community-client
系统自带的 mysql 包是 MariaDB 客户端,和 MySQL 服务兼容性一般。生产环境推荐用 MySQL 官方客户端:
- 先装官方 YUM 源:
sudo dnf install https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm - 再装客户端:
sudo dnf install mysql-community-client - 这个包自带
mysqlmysqldumpmysqladminmysqlpump等全部工具
别跳过第一步——没启用官方源的话,dnf install mysql-community-client 会报 “No match for argument”,因为默认 repo 里没有这个包名。
离线 RPM 包安装(无网络或需固定版本)
适用于内网服务器或对版本有强要求的场景。必须按依赖顺序安装,否则 mysql 命令启动就报错 error while loading shared libraries: libmysqlclient.so.21:
- 先装公共组件:
rpm -ivh mysql-community-common-8.0.33-1.el8.x86_64.rpm - 再装运行时库:
rpm -ivh mysql-community-libs-8.0.33-1.el8.x86_64.rpm - 最后装客户端:
rpm -ivh mysql-community-client-8.0.33-1.el8.x86_64.rpm
顺序错了、缺任意一个包,mysql 都会因找不到 so 文件而失败。下载地址统一在 https://dev.mysql.com/downloads/mysql/ → “Select Operating System” → “Red Hat Enterprise Linux / Oracle Linux” → 拉到底选 “Download” 对应 RPM Bundle。
常见错误:装完 mysql 却连不上远程 MySQL 8.0+
不是客户端没装对,而是服务端默认启用了 caching_sha2_password 认证插件,老客户端不支持。现象是:
ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded
解决方法有两个,选其一即可:
- 服务端降级认证方式(推荐临时调试用):
ALTER USER 'your_user'@'%' IDENTIFIED WITH mysql_native_password BY 'password'; FLUSH PRIVILEGES; - 客户端升级到 MySQL 8.0.4+ 版本(官方客户端默认支持)
这点容易被忽略:装了最新客户端,但连的是旧服务端;或者装了旧客户端,却去连新服务端——两边认证协议不匹配,报错就卡在这儿,跟网络、防火墙、权限都没关系。


















