У меня возникают проблемы с подключением к экземпляру Cloud SQL, размещенному в движке приложения (Java Runtime). Подключающийся клиент - это веб-приложение PHP, размещенное в другом экземпляре движка приложений Google. Может ли экземпляр движка приложений подключиться к Cloud SQL в другом экземпляре?
По сути, моя установка выглядит следующим образом:
- Google App Engine 1 (Java Runtime)
- installed with Cloud SQL instance
- размещает конечные точки Google и подключается к Cloud SQL на этом экземпляре
- Google App Engine 2 (PHP Runtime)
- PHP script connecting to Cloud SQL Instance of Google App Engine 1
Проблема в том, что я всегда получаю сообщение об ошибке ниже:
Warning: mysqli_connect(): MySQL server has gone away in /base/data/home/apps/s~some-php-web-app-v1/v1.376456666740733344/includes/database.php on line 29 Warning: mysqli_connect(): Error while reading greeting packet. PID=-1
Я считаю, что у меня правильный код подключения
public function connect($server = DBHOST, $username = DBUSER, $password = DBPASS, $database = DBNAME, $socket = DBSOCKET, $port = DBPORT)
{
$this->link = mysqli_connect($server, $username, $password, $database, $port, $socket) or die(mysqli_error());
}
Константы:
define('DBHOST', null);
define('DBSOCKET','/cloudsql/some-app-v1-test:some-db');
define('DBNAME', 'database_name');
define('DBUSER', 'root');
define('DBPORT', null);
define('DBPASS', null);
define('PROJECT_PATH', "http:someserver.com//");
Это возможно? Если да, то какую конфигурацию мне нужно установить, чтобы это работало?
Спасибо Стивен