【发布时间】:2020-01-26 06:30:11
【问题描述】:
我正在尝试创建一个 SSH 隧道来访问 VPC(Aurora 无服务器变体)中的 MySQL 数据库,并且或多或少地遵循了类似于 here 描述的方法。我已经设置了一个 jumpbox(一个 EC2 实例),我可以通过 ssh 进入它。但是,我正在努力让本地端口转发工作,因为我似乎无法弄清楚我的命令使用的本地端口。我使用的 SSH 命令与此类似:
ssh -N -L ssh_localPort:rdsHost:rds_remotePort user@remoteHost -i ~/path/to/key
我使用typeORM 创建和运行数据库迁移脚本,命令格式如下:
ts-node -r tsconfig-paths/register ./node_modules/typeorm/cli.js migration:run -c database_name
该数据库的配置如下所示:
{
"name": "database_name",
"type": "mysql",
"host": "host_name",
"port": 3306,
"username": "user",
"password": "password",
"database": "database_name",
"entities": ["models/database_name/*.*"],
"migrationsTableName": "migration",
"migrations": ["migration/database_name/*.ts"],
"cli": {
"migrationsDir": "migration/database_name"
}
}
我觉得除了本地港口外,我拥有所有的东西。 TypeOrm 设置用于与数据库通信的端口,因此我假设可以通过 ts-node 显式设置端口,但找不到允许这样做的选项。
是否有人对如何检索本地端口或明确设置有任何建议?
【问题讨论】:
标签: amazon-web-services typeorm ssh-tunnel