2

我正在尝试将我的 Google Colaboratory Notebook 连接到我拥有的 Google Cloud SQL 实例,但我不能。我的实例只能通过 Cloud SQL 代理访问,并且我没有将任何 IP 列入白名单。连接到它的步骤是什么?我也试过下载cloud_proxy_sql,但问题是我不能给它文件的执行权限......

你对此有什么建议吗?

4

3 回答 3

4

这是一个示例: https ://colab.research.google.com/drive/1SQCvWqCUAkqVHjfaEuLTBMBzxVdl7Q9h

几个重要的点:

  1. chmod +x将使下载的代理可执行。
  2. 您需要使用google.colab.auth. GOOGLE_APPLICATION_CREDENTIALS这将设置代理所需的环境变量。

然后,根据您的代理和数据库设置调整命令行调用:

!./cloud_sql_proxy --instances=my-project:my-region:my-instance
于 2018-03-07T01:41:17.290 回答
0

在此处找到解决方案:如何将 datalab 与 Google Cloud SQL 连接?

由于 colab 笔记本似乎是单线程的,因此您必须在一个笔记本中运行代理,而在另一个笔记本中运行查询

于 2018-11-07T08:57:57.700 回答
0

Bob Smith 的回答部分正确。问题是正如其他用途所指出的那样,笔记本在代理运行时无法运行其他单元。

我们可以通过在分离的屏幕中运行 cloud_sql_proxy 来解决这个问题。

  1. 安装依赖

    # install screen
    !apt update && apt install -y screen
    
  2. 然后我们就可以启动代理了。

    # run a detached screen with the proxy command
    !screen -S test -d -m "./cloud_sql_proxy --instances=my-project:my-region:my-instance"
    

现在笔记本现在可以继续执行其他单元格。

完成后记得杀死代理

# kill proxy
!screen -X -S test quit
于 2018-12-18T19:26:17.890 回答