无法使用 SSH 从远程计算机访问 Centos 7 上的 mysql 服务器? [复制]

Posted

技术标签:

【中文标题】无法使用 SSH 从远程计算机访问 Centos 7 上的 mysql 服务器? [复制]【英文标题】:Can't access mysql server which is on a Centos 7, from remote computer, using SSH? [duplicate] 【发布时间】:2018-03-30 08:41:03 【问题描述】:

我可以通过 SSH 访问 linux 服务器,并且我安装了一个 Magento 版本,并且我知道 mysql 凭据,所以 magento 可以正常工作。但是,我需要从我的远程计算机访问此服务器上的数据库。我尝试在外部使用 SSH 访问,所以从 Sequel Pro 我收到此错误消息:MySQL said: Access denied for user 'vlado0'@'127.0.0.1' (using password: YES) 和 MySQLWorkbench 一样,我收到一条错误消息Incompatible ssh server (no acceptable macs)。因此,即使我有 SSH 访问权限,我也无法从外部访问数据库。我必须设置更多才能访问 linux 上的数据库?但是我不希望每个人都可以访问它,所以我不想向所有人开放 3306 端口。

【问题讨论】:

SSH访问与数据库访问不同。 ***.com/q/8348506 @OptimusCrime 当我使用 SSH 连接时,我还可以从终端命令行连接并查询数据库。不过我想要一个IDE(比如Mysqlworkbench)。这是我的问题,我不能使用 mysqlworkbench 或任何其他这种类型的 IDE。 【参考方案1】:
'vlado0'@'127.0.0.1

表示:用户“vlado0”从“127.0.0.1”连接。如果您与 SQL 服务器不在同一台机器上,那么您需要一个 user@your_ip 或 user@%(% 表示任何)帐户。

所以打开你的 SQL 服务器并创建一个与你要使用的路由匹配的帐户。

【讨论】:

我尝试不直接连接到 mysql,而是使用 SSH。 对于 ssh,答案是一样的,您需要检查允许使用该用户连接的 IP 当你在 ssh 中连接时,你正在做一个 ssh 隧道(如果它更容易理解的话,是某种 ***),所以你仍然不是“本地主机”。使用 SSH 连接并使用 mysql cli 命令创建一个帐户 user@% 以便您可以远程连接 在命令行中输入mysql -u -p会请求你的用户密码,然后使用CREATE USER 'username'@'%' IDENTIFIED BY 'your_password';最后一个是GRANT ALL PRIVILEGES ON * . * TO 'username'@'%';让用户访问所有的数据库并做任何它想做的事 以root身份登录而不是mysql -u root -p

以上是关于无法使用 SSH 从远程计算机访问 Centos 7 上的 mysql 服务器? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

centos 6.5下安装配置并启动SSH远程访问

Centos 7.4中的远程访问控制

CentOS 7的远程访问及控制

CentOS——SSH远程访问控制

尽管计算机的 ssh 工作正常,但 Django 服务器无法访问

centos 6.5下安装配置并启动SSH远程访问