安卓系统

如何通过SSH隧道连接到MySQL

리눅스(Linux) ssh-server, putty - 원격 접속

리눅스(Linux) ssh-server, putty - 원격 접속

目录:

Anonim

默认情况下,MySQL服务器仅在localhost上侦听,这意味着它只能由在同一主机上运行的应用程序访问。

但是,在某些情况下,您可能希望从远程位置连接到服务器。 一种选择是将MySQL服务器配置为允许远程连接,但这需要管理权限,并且可能会带来安全风险。

一种更安全的替代方法是创建从本地系统到服务器的SSH隧道。 SSH隧道是一种在客户端和服务器计算机之间创建加密SSH连接的方法,通过该连接可以中继服务端口。

在本指南中,我们将说明如何创建SSH隧道并从远程客户端连接到MySQL服务器。 相同的说明适用于MariaDB。

先决条件

  • SSH Client.SSH访问运行MySQL服务器的系统。

在Linux和macOS上创建SSH隧道

ssh 客户端已预安装在大多数基于Linux和Unix的系统上。

ssh -N -L 3336:127.0.0.1:3306 @

使用的选项如下:

  • -N 告诉SSH不要执行远程命令。 -L 3336:127.0.0.1:3306 创建本地端口转发。 本地端口( 3306 ),目标IP( 127.0.0.1 )和远程端口( 3306 )用冒号( 3306 分隔。 @ -远程SSH用户和服务器IP地址。要在后台运行该命令,请使用 -f 选项。如果SSH服务器正在侦听22以外的端口(默认),请使用 -p 选项指定该端口。

运行命令后,系统将提示您输入SSH用户密码。 输入后,您将登录到服务器,并建立SSH隧道。 最好设置一个基于SSH密钥的身份验证并连接到服务器而无需输入密码。

现在,您可以将本地计算机MySQL客户端指向 127.0.0.1:3336 输入远程数据库登录凭据并访问MySQL服务器。

例如,要使用命令行 mysql 客户端连接到MySQL服务器,您将发出:

mysql -u MYSQL_USER -p -h 127.0.0.1

其中, MYSQL_USER 是具有访问数据库权限的远程MySQL用户。

出现提示时,输入MySQL用户密码。

要终止SSH隧道,请在运行ssh客户端的控制台中键入 CTRL+C

在Windows上创建SSH隧道

Windows用户首先需要下载并安装SSH客户端程序。 最受欢迎的Windows SSH客户端是PuTTY。 您可以在此处下载PuTTY。

执行以下步骤以使用PuTTY创建到MySQL服务器的SSH隧道:

  1. 启动Putty,然后在 Host name (or IP address) 字段中输入服务器的 Host name (or IP address)

    结论

    MySQL是最流行的开源数据库服务器,仅在localhost上侦听传入的连接。 创建SSH隧道可以使您从本地客户端安全地连接到远程MySQL服务器。

    MySQL的MariaDB的SSH