有没有一种方法只安装MySQL客户端(Linux)?

205

是否有任何Linux mysql命令行工具不需要安装整个mysql数据库包?

我的目标是在服务器 #1 (应用服务器) 上执行mysql命令,这些命令将在服务器 #2 (数据库服务器) 上执行。我不想在本地服务器上运行数据库或安装完整的mysql数据库。


15
这是一个完全合理的问题,下面的答案完全相关,并且它们完全解决了我所遇到的问题,即使它们只来自于一个特定的Linux发行版的角度(例如 yum = RedHat / CentOS 和 apt = Debian / Ubuntu)。因此,我在审阅队列中有一个编辑,希望有人能够批准,使问题更符合“问与答”的形式。 - TheDudeAbides
2
推荐问题明确是不被允许的话题。这个问题只会引发一系列软件包推荐。 - Quentin
1
这是一个十多年的问题,但仍未经过编辑且不够明确。一个问题需要更加具体。这个问题的首要问题是:使用哪个Linux发行版?任何询问“在Linux下我该怎么做…”的问题都应该进行编辑。你将得到的答案往往同样含糊不清、准确性参差不齐,并且会提到一些特定于发行版的东西,例如YUM、APT、DNF、PKG以及各种repo文件名。没有好问题就不可能得到好的、具体的答案。 - B. Shea
8个回答

263

如果您只想安装MySQL客户端,您应该执行以下命令:

yum install mysql
安装 MySQL 客户端和服务器:

要安装MySQL客户端和服务器:

yum install mysql mysql-server

10
在当前的 Fedora 系统中,您应该使用 yum install mariadbyum install mariadb-server。Fedora 已经用 MariaDB 替换了 MySQL。 - Christian Berendt
2
这个答案是不正确的。yum install mysql会安装服务器组件,因为它会尝试安装mariadbmariadb.x86_64:MySQL的社区开发分支 - berniey
5
请考虑使用 mariadb-client 替代。请参阅 mariadb.com/kb/en/mariadb/yum 了解详细说明。简而言之,您需要执行以下两个步骤:1)为 yum 添加 mariadb 存储库;2)运行 yum install MariaDB-client。就这样(假设您使用的是 RH 或 CentOS)。至于 Ubuntu,请参考 Jon Black 的答案。 - berniey
问题没有提到使用的发行版。那么,你为什么只列出YUM呢? - B. Shea

146

猜测:

sudo apt-get install default-mysql-client

26
如果你正在使用Ubuntu系统,可以使用这个。 - duality_
2
或基于 Debian 的发行版 - Cristian Todea
20
如果你遇到困难,可以尝试安装默认的MySQL客户端,命令为sudo apt-get install default-mysql-client。 - FredFury
问题并未提及使用的发行版,那么为什么你只列出了APT呢? - B. Shea
2
只有我遇到“E:软件包'mysql-client'没有可安装的候选项”吗?(我先运行了更新命令,但仍然遇到此问题) - Menas

10
如果没有安装 mysql-client,您可以使用 mariadb-client
sudo apt-get install mariadb-client

9
[root@localhost administrador]# yum search mysql | grep client
community-mysql.i686 : MySQL client programs and shared libraries
                            : client
community-mysql-libs.i686 : The shared libraries required for MySQL clients
root-sql-mysql.i686 : MySQL client plugin for ROOT
mariadb-libs.i686 : The shared libraries required for MariaDB/MySQL clients
[root@localhost administrador]# yum install  -y community-mysql

安装MySQL客户端:
  1. sudo yum install -y https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
  2. sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
  3. sudo yum install -y mysql-community-client
- Vinoth Ramamoorthy

8
也许尝试这个:
yum -y groupinstall "MYSQL Database Client"

6
sudo apt-get install mysql-client-core-5.5

4

在CentOS上安装MySQL客户端有两种方法。

1. 第一种方法(下载RPM包)

从MySQL网站https://downloads.mysql.com/archives/community/下载RPM包。 enter image description here

如果像图片那样下载了此RPM包,则文件名为mysql-community-client-8.0.21-1.el8.x86_64.rpm

然后执行sudo rpm -ivh --nodeps --force mysql-community-client-8.0.21-1.el8.x86_64.rpm即可安装RPM包,参数-ivh表示安装,打印输出,不进行验证和检查

如果出现错误,可能是版本冲突,您可以执行rpm -pa | grep mysql查找冲突的包,然后执行rpm -e --nodeps <package name>将其删除,然后再次安装。

最后,您可以执行which mysql,如果打印/usr/bin/mysql则表示安装成功。

2. 第二种方法(设置yum仓库)

请参考官方网站:

MySQL Yum Repository

使用MySQL Yum Repository的快速指南


问题并未提及使用的发行版,那么为什么你只列出了CentOS/YUM呢? - B. Shea
因为我只使用了RHEL作为服务器,并且这是一个通用的教程,其中包含选择其他Linux版本的步骤。 "授人以鱼不如授人以渔"。 - libin
1
这个答案不是一个“通用教程”。它是针对rpm安装程序(或)yum软件包管理器的特定分发。那么这怎么回答OP的问题呢?正如我已经提到的,OP没有澄清他使用的发行版。那么你怎么知道这些答案适用于他们呢?一个糟糕的问题只会引出不具体/糟糕的答案。在这种情况下,最好的答案是:“安装一个特定于发行版的mysql客户端,并在问题更具体时编辑您的问题以获得更具体的答案。” - B. Shea
这是一个很好的答案,尤其是在使用rpm的时候。唯一需要注意的是在rpm安装过程中可能会出现找不到依赖项的情况(也许)。 - undefined

1
当我现在只使用命令:mysql
我得到的结果是: 命令'mysql'未找到,但可以通过以下方式安装: sudo apt install mysql-client-core-8.0 #版本8.0.22-0ubuntu0.20.04.2或 sudo apt install mariadb-client-core-10.3 #版本1:10.3.25-0ubuntu0.20.04.1
非常有帮助。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接