amazon-web-services - 使用 MySQL Workbench 连接到 Amazon Aurora 时出错
问题描述
我正在尝试在 Amazon Aurora 中创建一个表。为此,我使用 MySQL Workbench。AWS RDS 不公开,我在 Internet 上读到它不能公开。一种方法是使用堡垒主机连接到 RDS。我尝试了使用连接方法的 MySQL Workbench-“标准(TCP/IP)通过 SSH”,但是在输入所有信息后,另一个窗口弹出询问 ec2 的密码但是我还没有设置 EC2 的 root 密码。任何人都可以帮助我如何做到这一点。当我使用标准(TCP/IP)连接到 RDS 时 出现错误 -错误
解决方案
可以将 Amazon RDS 实例配置为可公开访问:
- 启动实例时:
Publicly accessible = Yes
在附加连接配置部分中选择- 在公共子网中启动数据库
- 配置安全组以允许来自您的 IP 地址的适当端口上的传入连接
如果您不希望实例可公开访问,您可以通过 Bastion server 使用端口重定向。您似乎使用的是 Windows,因此您将配置以下内容:
- 假设:
- Bastion 服务器是一个 Linux 实例
- 您已经可以使用 PuTTY 登录堡垒服务器
- 在 PuTTY 中,转到 Connection/SSH/Tunnels,然后配置:
- 源端口:(
3306
实际上可以是任何东西) - 目的地:(
RDS-DNS-NAME:3306
替换您的 RDS DNS 名称) - 点击添加
- 正常打开 SSH 会话
- 源端口:(
此配置会将本地端口 3306转发到堡垒,堡垒会将其转发到 RDS 实例上的端口 3306。确保数据库上的安全组允许来自堡垒(或来自整个 VPC 的 CIDR 范围)的此连接。
一旦 PuTTY 连接到此配置,请将您的 SQL 客户端指向localhost:3306
. 然后它应该连接到 Amazon RDS 数据库实例。
推荐阅读
- c# - 如何将 4 个参数从后面的代码传递给客户端
- java - 为什么这个赋值在 Java 泛型中是非法的?
- node.js - 为什么 AWS EBS 的日志流无法正常工作?
- html - SASS 基于侧边栏改变 flex 布局
- geode - 对于使用集群配置为 true 的 apache geode 3 服务器集群,复制区域仅出现在 1 台服务器上,而不是全部 3
- java - Discord bot 每 30 秒更改一次状态活动 jda
- javascript - 将表格顶部行(标题)单元格标签从 td 更改为的 javascript 命令是什么
- python-3.x - 用基类的实例实例化派生类?
- reactjs - 来自多个 API 调用的嵌套数据项在 React 组件中返回未定义
- python - 每次在python中更改其大小时如何获取画布大小?