首页 > 解决方案 > 在哪里启动 Google Cloud SQL 代理?

问题描述

我遇到问题是因为代理死了,也许是因为我从控制台启动它,我是 Cloud SQl 的新手。

Google Cloud Storage 将其安装在自定义元数据部分的实例配置页面上,键为“启动脚本”。那也是启动 Cloud SQL 代理的好地方吗?

我还看到它通过控制台启动:

./cloud_sql_proxy -instances=xxx:us-central1:my-instance=tcp:3306 &
and
nohup ./cloud_sql_proxy -instances=xxx:us-central1:my-instance=tcp:3306 &

想想它在重新启动时自动启动,有什么好方法?

我使用 Debian 9 的实例

标签: proxyconfigurationgoogle-cloud-sqllaunch

解决方案


安装 Cloud SQL 代理/usr/local/bin directory

cd /usr/local/bin
sudo wget https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64 -O cloud_sql_proxy
sudo chmod +x cloud_sql_proxy

初始化 Cloud SQL 代理的最佳方法是使用 systemd 服务

Linux 服务是在后台运行等待使用的应用程序(或一组应用程序)

1.- 创建这个文件/etc/systemd/system/cloud-sql-proxy.service

请将此字符串替换<INSTANCE_CONNECTION_NAME>为您的实例连接名称,例如: myproject:myregion:myinstance

[Unit]
Description=Connecting MySQL Client from Compute Engine using the Cloud SQL Proxy
Documentation=https://cloud.google.com/sql/docs/mysql/connect-compute-engine
Requires=networking.service
After=networking.service

[Service]
WorkingDirectory=/usr/local/bin
ExecStart=/usr/local/bin/cloud_sql_proxy -dir=/var/run/cloud-sql-proxy -instances=<INSTANCE_CONNECTION_NAME>=tcp:3306
Restart=always
StandardOutput=journal
User=root

[Install]
WantedBy=multi-user.target

2.-运行sudo systemctl daemon-reload

3.-运行sudo systemctl enable cloud-sql-proxy

4.-运行sudo systemctl start cloud-sql-proxy

有关更多信息,请查看本指南


推荐阅读