在 Bash 中连接 MySQL(未安装 MySQL)

在 Bash 中连接 MySQL(未安装 MySQL)

我正在尝试在 Bash 中连接到远程 MySQL 数据库。在托管数据库的服务器上,我可以输入:

mysql -u _username_ -p

连接。

我希望能够输入:

mysql -h _host_ -u _username_ -p

从另一台服务器连接。我没有在客户端上安装 MySQL,因此找不到该命令。除了整个 MySQL 服务器之外,我还可以安装其他东西(最好是 apt-get),以便可以在 bash 中使用 mysql 命令吗?

答案1

要安装命令行 MySQL 客户端,您应该执行以下操作:

sudo apt-get install mysql-client

然后你可以做

mysql -h HOST -P PORT_NUMBER -u USERNAME -p

但是您可能需要更改 MySQL 服务器的设置。默认情况下,在 ubuntu 上,MySQL 服务器将仅接受来自本地服务器的连接。该设置称为 ,bind-address并在 中设置/etc/mysql/my.cnf。默认情况下是127.0.0.1- 您应该将其更改为服务器的 IP 地址。如果服务器有多个 IP 地址,您可以只选择一个 IP 地址(例如用于内部网络),或者让 MySQL 监听所有 IP 地址,方法是将值设置为0.0.0.0

您还需要确保 MySQL 用户可以访问数据库。按照互联网上的说明,您可能已创建用户'myname'@'localhost'- 该用户将无法远程连接。要创建可以从您的客户端 IP 地址连接的新用户,您需要执行以下操作:

GRANT ALL PRIVILEGES ON database_name TO 'username'@'192.168.0.51' IDENTIFIED BY 'password';

阅读更多有关 MySQL 使用的地址规范的信息

最后,不要忘记确保服务器防火墙允许访问 MySQL 端口 - 默认值为 3306。

相关内容