Тайм-аут CodeIgniter в App Engine при подключении к MySQL - PullRequest
0 голосов
/ 05 октября 2018

Я размещаю API CodeIgniter на GCP App Engine и не могу подключиться к GCP Cloud SQL.Я создаю экземпляр и базу данных, но когда я пытаюсь подключиться через CI, у меня появляется сообщение об ошибке сообщения тайм-аута time out erro

Моя конфигурация базы данных на CI:

$db['default'] = array(
  'dsn' => 'mysql:unix_socket=/instance_name/instancia;dbname=project_name',
  'hostname' => 'http://00.000.00.00',//here i put the public ip from the sql instance
  'username' => 'user',
  'password' => 'passwd',
  'database' => 'projeto',
  'dbdriver' => 'mysqli',
  'dbprefix' => '',
  'pconnect' => FALSE,
  'db_debug' => (ENVIRONMENT !== 'production'),
  'cache_on' => FALSE,
  'cachedir' => '',
  'char_set' => 'utf8',
  'dbcollat' => 'utf8_general_ci',
  'swap_pre' => '',
  'encrypt' => yes,
  'compress' => FALSE,
  'stricton' => FALSE,
  'failover' => array(),
  'save_queries' => TRUE
);

1 Ответ

0 голосов
/ 06 ноября 2018

Я бился головой об этом некоторое время, сам, и, наконец, взломал это!Вот как выглядит моя конфигурация базы данных:

$db['default'] = array(
  'dsn' => '',
  'hostname' => '/cloudsql/PROJECT-NAME:REGION:DATABASE',
  'username' => 'USERNAME',
  'password' => 'PASSWORD',
  'database' => 'DATABASE_NAME',
  'dbdriver' => 'mysqli',
  'dbprefix' => '',
  'pconnect' => FALSE,
  'db_debug' => (ENVIRONMENT !== 'production'),
  // 'db_debug' => TRUE,
  'cache_on' => FALSE,
  'cachedir' => '',
  'char_set' => 'utf8',
  'dbcollat' => 'utf8_general_ci',
  'swap_pre' => '',
  'encrypt' => FALSE,
  'compress' => FALSE,
  'stricton' => FALSE,
  'failover' => array(),
  'save_queries' => TRUE
);

Важными моментами являются то, что dsn пуст, а имя хоста - это полный путь к сокету unix.Остальное должно быть примерно таким же.

Надеюсь, вам это тоже поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...