使用 Google Cloud SQL
1. 创建数据库
从侧边栏进入 SQL 界面

点击创建实例,并选择一个数据库。这里以 PostgreSQL 为例:

接着按照内存需求(主要受价格影响),选择 Edition preset、数据库版本、实例 ID、密码,区域等。
需要注意的是价格比较昂贵,需要时刻关注自己的配置每小时的价格是多少。

确认自己能接受的配置后,点击创建实例,等待几分钟后实例创建成功:

创建成功后,会有一个公共 IP 地址,后续我们将通过此 IP 连接到数据库。
为了安全起见,我们最好再配上 SSH ,用 SSH 的方式连接数据库。
2. 创建虚拟机
使用 SSH 的方式连接数据库需要用到一个虚拟机作为 SSH 的跳板。
首先通过侧边栏进入 Compute-Engine 来创建虚拟机。
点击创建实例:
- 选择区域,虚拟机区域不可更改,最好与数据库区域一致。
- 服务账号,可以默认,也可以设置为你想要能够访问到虚拟机的服务账号。
- 防火墙选择允许 HTTPS 和 允许 HTTP 流量。
确认价格后,点击创建实例,然后等待成功。
3.连接虚拟机
我们可以通过点击实例旁边的 SSH 按钮用浏览器的方式连接到虚拟机。

打开后是这样的:

如果我想要从本地连接虚拟机,可以做到吗?当然可以!
拷贝自己的 publish key
shell1cat ~/.ssh/id_rsa.pub | pbcopy
进入 Compute Engine 的元数据,将拷贝后的 publish key 粘贴到 SSH 密钥中。

保存后,你可以得到自己的用户名

接着用以下命令连接
shell1ssh -i ./.ssh/id_rsa <YOUR_USER_NAME>@<YOUR_VM_IP_ADDRESS>
例如我的:
shell1ssh -i ./.ssh/id_rsa 2903358870@35.221.69.117
其中 -i 用来指定你的 private key 的 path。

现在已经成功进入到虚拟机了。
如果你使用 VPN,那么有可能会在这一步失败。请注意修改 VPN 的站点配置或者其他网络设置。
4. 通过虚拟机连接数据库
现在我们已经能够在本地连接虚拟机了,下一步就是利用虚拟机当跳板,连接到 Google VPC 网络中的数据库实例。
再次进入 Cloud SQL,进入实例,点击连接,并将虚拟机的 IP 添加到授权网络中。

点击完成并且保存。
最后使用 TablePlus 连接实例:

SQL 实例的 IP 地址可以通过实例详情拿到。
用户名和数据库名查看位置:

用户密码则是在创建实例时用户自己设置的,如果忘记了,也可以在这里修改密码:

5. 通过授权 IP 直连数据库
有些同学可能会问了,使用 SSH 直接连接数据库,还需要配置虚拟机,实在太麻烦,有没有方便的方法直接连接数据库呢?
答案是肯定的,我们可以直接将自己的 IP 填入到授权网络中,这样就可以让本机连接数据库。
通过这个网站获取自己的 IP 地址:https://api.ipify.org/
再通过这个网站得到自己 IP 的 CIDR 范围:https://www.vultr.com/resources/subnet-calculator/
将 CIDR 范围填入到授权网络中。

保存后等待实例修改完成,就可以通过 TablePlus 连入了。