【问题标题】:How do I run the mysql command from the command line of an AWS RDS instance that is separate from the EC2 instance I am on?如何从与我所在的 EC2 实例不同的 AWS RDS 实例的命令行运行 mysql 命令?
【发布时间】:2018-11-20 20:29:55
【问题描述】:

我们有 AWS Amazon Linux EC2 实例,它们连接到运行 MySQL 的单独 AWS RDS 实例。

我们希望在 RDS 实例上运行mysql 命令来处理大量包含数千条 SQL 语句的大型 SQL 文件。但是,我们需要能够从安装在 EC2 实例上的 PHP 应用程序运行这些命令。

这可能吗?如何做到?
为进行测试,我们将 MySQL 与 PHP 应用程序安装在同一台机器上,并且能够成功运行 mysql 命令来查询本地 MySQL 实例以及 AWS RDS 实例上的远程 MySQL 实例。

但是,当未安装 MySQL 并且 mysql 命令在 EC2 实例上不可用时,我们不确定如何执行此操作。

我们已经探索过将ssh 命令与mysql 命令结合使用,但似乎还没有任何效果。
任何意见是极大的赞赏。谢谢。

【问题讨论】:

  • 我认为您应该包含与位于同一节点上的 MySQL 实例一起使用的 PHP 代码。您只需要将连接字符串更改为指向 RDS,其余的应该仍然可以工作(我认为)。

标签: mysql amazon-web-services amazon-ec2 ssh amazon-rds


【解决方案1】:

即使 RDS 托管 mysql 数据库,您仍然需要适当的包来与数据库通信,例如 php-mysql。此外,mysql 包只是客户端,mysql-server 将实际安装您在使用 RDS 时不需要的服务器服务。您可以安全地安装 mysqlphp-mysql 并可能实现您想要的。

【讨论】:

  • 布兰登·米勒,是的,成功了。谢谢你。我已经安装了php-mysqlnd 包,所以我所要做的就是安装带有yum install mysqlmysql 包,它为我提供了远程连接到RDS 实例并发出请求的必要客户端。非常感谢!没想到这么容易。
【解决方案2】:

为了进行测试,您可以在本地机器上(而不是在 EC2 实例上)安装 MySQL 工作台并将其配置为连接到 RDS。

https://aws.amazon.com/premiumsupport/knowledge-center/connect-rds-mysql-workbench/

或者,您也可以使用命令从命令行连接到 RDS

mysql -h mysql–instance1.123456789012.us-east-1.rds.amazonaws.com --ssl-ca=rds-ca-2015-root.pem -p

上述命令的详细解释请访问:-https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ConnectToInstance.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-10-12
    • 1970-01-01
    • 2021-03-14
    • 1970-01-01
    • 2016-03-08
    • 1970-01-01
    • 2020-02-25
    相关资源
    最近更新 更多