迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 数据库 > MySQL >

使用 Ubuntu 连接远程 MySQL 服务器的不同方法

作者:迹忆客 最近更新:2023/05/07 浏览次数:

在本文中我们将学习如何使用 Ubuntu 连接远程 MySQL 服务器来操作数据以及启动和停止 MySQL 服务器。


使用 Ubuntu 连接远程 MySQL 服务器的不同方法

  1. 从 Ubuntu 20.04 客户端机器到 Ubuntu 20.04 服务器机器进行数据操作
  2. 从 Ubuntu 20.04 客户端计算机到 Ubuntu 20.04 服务器计算机以停止/启动 MySQL 服务器

从 Ubuntu 20.04 客户端计算机连接到 Ubuntu 20.04 服务器计算机以进行数据操作

用自定义用户连接

在这里,我们将学习如何连接驻留在远程 MySQL 服务器中的自定义用户。 我们在远程 MySQL 服务器中创建了一个名为 mehvish 的用户,并授予了所有权限。

mysql> CREATE USER "mehvish"@"%" IDENTIFIED BY "PASSWORD";
#here % sign shows that this user can be connected remotely

要连接到远程 MySQL 服务器,我们必须在我们的机器上安装 mysql-client。 在 Microsoft Windows 10 中,mysql-client 在安装 MySQL 服务器时会自动安装。

您可以按照本文在客户端机器上安装 MySQL。

要建立远程连接,我们需要托管 MySQL 服务器的主机的 IP 地址、用户名和该特定用户帐户的密码。 要检索该 IP 地址,我们在 MySQL 服务器所在的 Ubuntu 上使用 ip a 或 ifconfig 命令。

一旦我们知道了 IP 地址、用户名和密码,我们就可以使用以下命令连接到远程 MySQL 服务器。

# Syntax
# mysql -h hostIP -u username -p password
$ mysql -h 192.168.56.102 -u mehvish -p ******

如果您第一次尝试建立远程连接,您很可能会遇到以下错误。

ERROR 2003 (HY000): Can't connect to MySQL server on '10.0.2.15:3306' (10060)

为了摆脱这个错误,我们需要修改MySQL服务器上的配置文件。 我们使用 vim 文本编辑器来编辑配置文件,但您可以使用您的任何选择。

$ sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

打开文件后,找到 [mysqld] 部分下的绑定地址,并按照以下屏幕截图对其进行评论。 我们为什么要评论绑定地址选项?

由于其默认行为,MySQL 服务器不允许远程连接; 它只允许本地主机连接到 MySQL 服务器。 这就是注释绑定地址并允许远程客户端计算机与 MySQL 服务器建立连接的原因。

或者,我们可以执行以下操作而不是对 bind_address 进行注释。

  1. 我们可以将 bind-address 的值从 127.0.0.1 更改为 0.0.0.0。
  2. 如果没有bind-address选项,我们可以写skip-networking和skip-bind-address。

使用 ubuntu 连接远程 mysql 服务器的不同方法- ubuntu 上的注释绑定地址

我们可以使用以下选项使用 vim 文本编辑器编辑和保存配置文件。

  1. 按 I 编辑文件。
  2. 按 Esc 退出编辑模式。
  3. 按 Esc,键入 :w,然后按 Enter 键保存文件。
  4. 按 Esc,键入 :q,然后按 Enter 退出文件。
  5. 按 Esc,键入 :wq,然后按 Enter 一步保存并退出文件。
  6. 按 Esc,键入 :q!,然后按 Enter 以放弃所有更改退出文件。

我们必须在托管 MySQL 服务器的机器上按如下方式重新启动服务。

$ sudo systemctl restart mysql

现在,再次使用以下命令成功连接远程 MySQL 服务器中的 mehvish 用户帐户。 请记住,我们在本地计算机上使用以下查询。

$ mysql -h 192.168.56.102 -u mehvish -p ******

与 root 用户连接

在深入细节之前,让我们检查一下 root 用户是否接受远程连接。 我们可以在托管 MySQL 服务器的 Ubuntu 上使用以下命令。

mysql> SELECT USER, HOST from mysql.user;

输出:

使用 ubuntu 连接远程 mysql 服务器的不同方法 - ubuntu 上的用户主机

您是否看到 root 用户只能从 localhost 连接? 我们必须通过使用以下命令远程连接它来授予远程访问权限。

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost';
mysql> UPDATE mysql.user SET host='%' WHERE user='root';

此外,使用以下命令重新启动 MySQL 服务器。

$ sudo systemctl restart mysql

现在,检查 root 用户是否接受远程连接。 看到,服务器机器上root用户的host是%,说明我们可以远程连接root账号了。

使用 ubuntu 连接远程 mysql 服务器的不同方法 - 在 ubuntu 上具有远程访问权限的 root

现在,我们可以使用以下查询从本地计算机连接 root 用户来读取/写入数据。

$ mysql -h 192.168.56.102 -u root -p ******

如果我们想要启动、停止和重启 MySQL 服务器怎么办? 为此,我们必须在 MySQL 服务器的 shell 上,这意味着我们必须以在我们的机器上打开服务器 shell 的方式进行连接。


从 Ubuntu 20.04 客户端计算机连接到 Ubuntu 20.04 服务器计算机以启动、停止和重新启动服务器

我们必须按照给定的步骤使用安全外壳(也称为安全套接字外壳)连接远程服务器。

  1. 安装 ssh 以获得 shell 访问托管在 Ubuntu 机器上的 MySQL 服务器的权限。
  2. 现在,配置 ssh。 然后,打开主机(本地机器)上的终端,并写入正确的凭据以连接到远程服务器。

    您可以根据自己的情况使用以下任何一种。

    1. 使用 ssh remote_host 命令。 当我们在远程和本地机器上拥有相同的用户名时,它是最直接和最常用的。
    2. 如果远程机器上的用户名与本地机器上的用户名不同,请使用 ssh remote_username@remote_host。 这将使您能够访问服务器计算机的 shell。
  3. 我们可以使用以下命令来按要求运行。

启动 MySQL 服务器:

$ sudo systemctl start mysql

停止 MySQL 服务器:

$ sudo systemctl stop mysql

重启 MySQL 服务器:

$ sudo systemctl restart mysql

检查MySQL服务器状态:

$ sudo systemctl status mysql

请记住,MySQL 服务器在您的端名为 mysqld,那么您可能必须使用如下命令。

$ sudo /etc/init.d/mysql restart

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

如何在 MySQL 中声明和使用变量

发布时间:2024/03/26 浏览次数:115 分类:MySQL

当你需要在 MySQL 中的脚本中存储单个值时,最好的方法是使用变量。变量有不同的种类,有必要知道何时以及如何使用每种类型。

在 MySQL 中实现刷新权限

发布时间:2024/03/26 浏览次数:211 分类:MySQL

本教程介绍了 MySQL 中的刷新权限命令,用于刷新授权表并影响允许的更改。

在 MySQL 中设置时区

发布时间:2024/03/26 浏览次数:93 分类:MySQL

在本教程中,我们将学习如何在 MySQL 服务器中更改时区。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便