【问题标题】:Execute queries on AWS RDS MySQL database instance via SSH通过 SSH 在 AWS RDS MySQL 数据库实例上执行查询
【发布时间】:2019-06-03 19:36:15
【问题描述】:

我有一个场景,即使我知道主机/端口/密码/用户(由于某些我无法更改的安全组),我也无法直接访问应用程序数据库。但是,我可以通过 ssh 连接到应用程序实例:

现在我想以某种方式在数据库实例上执行 mysql 命令。我似乎无法理解。

【问题讨论】:

  • 您在此处标记了 Django ...在这种情况下您是否有工作的 Django 应用程序?如果是这样 - 你可以运行 python manage.py dbshel​​l 并且 Django 将为你设置一个有效的 SQL 连接。
  • 是的,我愿意。我想我确实尝试了 dbshel​​l 命令,但出现了问题。让我再试一次。
  • @yrekkehs CommandError: You appear not to have the 'mysql' program installed or on your path. - 我犯了这个错误。

标签: mysql django amazon-web-services ssh


【解决方案1】:

使用实例在实例上安装 mysql-client

如果是Ubuntu实例试试

sudo apt-get install mysql-client

or 

yum install mysql-client

现在你可以连接到mysql了

为此你必须执行

mysql -h "HOSTNAME(RDS Endpoint)" -u "Username(Whatever you have set)" -p "Database Name"

HOLA you are done...!

连接成功后,如果没有任何数据库,则必须创建数据库,如果已经存在,则选择数据库

【讨论】:

  • 我正在这个实例上运行一个 django 应用程序。我应该在应用程序的虚拟环境中执行此命令吗?或者直接执行它。
  • 仅供参考:这对我有用:sudo apt-get install mysql-client 而不是 sudo apt-get install mysql
  • @saran3h 回答有什么问题吗?不接受,所以我刚刚更新了它
  • 我在手机浏览时不小心点击了。 蝴蝶结
【解决方案2】:

我认为“连接”到应用程序意味着您可以连接到运行应用程序的 AWS 中的节点。由于您的应用程序可以从该点访问数据库,因此您也可以这样做。

这是一个广泛的答案,但您可以做的是在该节点上安装 MySQL 客户端程序。然后,您只需要在命令行上登录 MySQL,理想情况下您应该能够从那里访问 MySQL。

Here is a link 回答另一个 Stack Overflow 问题,该问题讨论了如何仅在 Linux 机器上安装 MySQL 客户端。

【讨论】:

  • 希望有多个绿色复选标记。苛刻的回答更详细一些。另外,你已经有很多代表了:P
【解决方案3】:

要在 AWS 上从 yum 安装 Linux mysql client,请运行以下命令:

yum install mysql

然后您可以登录

mysql -h <db-address> -u <username> -p

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-06
    • 2013-08-21
    • 2020-08-16
    • 1970-01-01
    相关资源
    最近更新 更多