Arhn - архитектура программирования

подключение к гугл клаудскл

я пытаюсь подключиться к google cloudsql из appengine, но столкнулся с этой ошибкой:

No connection could be made because the target machine actively refused it

мой файл php, который я загрузил в appengine:

$sql = new mysqli(null,
'myuser', // username
'mypass'
'mydb',
null,
'/cloudsql/**:**'
);
if ($mysqli->connect_error) {
echo 'no';
die('Connect Error (' . $mysqli->connect_errno . ') '
        . $mysqli->connect_error);
}
else {
echo 'yes\n';
}

appengine разрешен из облака sql. что я должен делать ?


  • Что такое реальный сокет, который вы используете, является ли имя проекта и имя экземпляра определенно правильным и в формате /cloudsql/project_id:cloud_sql_instance_name ? 04.04.2014
  • И вы получаете эту ошибку при запуске в реальном времени на App Engine? Поскольку вы не можете подключиться таким образом с сервера разработки (dev_appserver.py) 04.04.2014
  • 1.- Работает ли код на AppEngine (серверы Google) или на вашем локальном сервере разработки? 2.- Если он работает в App Engine, разрешили ли вы приложению App Engine доступ к вашему экземпляру Cloud SQL? 04.04.2014
  • - я думаю, имя проекта и экземпляр в порядке. я взял их из консоли разработчика -> имя моего проекта -> облачный sql -> идентификатор экземпляра столбца (содержит имя проекта и имя экземпляра). - да, получаю эту ошибку от запуска через AE. - двигатель приложения, и да, я сделал. 05.04.2014

Ответы:


1

Я пытался воспроизвести ошибку, которую вы получаете, но не смог воспроизвести ее при использовании предоставленного вами примера кода.

Также в вашем примере кода есть несколько ошибок, вы создаете соединение как $sql, но затем проверяете $mysqli на наличие ошибок соединения, вы должны проверять $sql. Итак, я изменил все вхождения $mysqli на $sql, и более привычный способ проверить наличие ошибки подключения — это проверить connect_errno и затем прочитайте сообщение от connect_error

$sql = new mysqli(null,
    'your-username', // username
    'your_password_or_blank_if_using_root',
    'database_name',
    null,
    '/cloudsql/project_id:instance_name'
);

if ($sql->connect_errno) {
    echo 'no';
    die('Connect Error (' . $sql->connect_errno . ') '. $sql->connect_error);
} else {
    echo 'yes\n';
}
07.04.2014

2
  1. Файл сокета на самом деле /cloudsql/project_id:region:instance_id (т.е. myproject-prod:us-central1:instance-1)
  2. Если вы используете гибкую виртуальную машину, вы можете включить отладку на одном из ваших экземпляров, а затем подключиться к нему по SSH, затем вы можете убедиться, что файл сокета действительно существует, и попытаться подключиться к нему:

    sudo apt-get update sudo apt-get install mysql-client mysql -u ваше имя пользователя -S /cloud/sql/ваш-сокет-файл -p

12.08.2016
Новые материалы

Коллекции публикаций по глубокому обучению
Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

Представляем: Pepita
Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

Советы по коду Laravel #2
1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

3 способа решить квадратное уравнение (3-й мой любимый) -
1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

Создание VR-миров с A-Frame
Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

Демистификация рекурсии
КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..