Предоставьте прокси SQL доступ к Google Colab Laboratory

Я пытаюсь подключить свой Блокнот Google Colab Laboratory к имеющемуся у меня экземпляру Google Cloud SQL, но не могу. Мой экземпляр доступен только через Cloud SQL Proxy, и у меня нет ни одного ip в белом списке. Каковы были бы шаги, чтобы подключиться к нему? Я также пытался загрузить cloud_proxy_sql, но проблема в том, что я не могу дать ему разрешения на выполнение файла...

Есть ли у вас какие-либо предложения по этому поводу?

2 ответа

Вот пример: 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

Ответ Боба Смита частично верен. Проблема в том, что другие пользователи указали, что ноутбук не может запускать другие ячейки во время работы прокси.

Мы можем обойти это, запустив 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

Нашел решение здесь: Как связать даталаб с Google Cloud SQL?

Поскольку записные книжки Colab кажутся монопоточными, вы должны запустить прокси в одной записной книжке, а запросы - в другой.

Другие вопросы по тегам