Сценарий выглядит следующим образом: я пишу приложение node.js локально и хочу, чтобы он (mySQL modul, скорее) подключался к db mySQL, работающему на Google Cloud Platform.
Я не могу правильно получить строку подключения и продолжать получать ошибки. GCP содержит два имени для базы данных - один я выбрал, один сгенерированный, более сложный. Проще всего я должен поставить один из них в строку подключения как "базу данных", хост, скорее всего, IP-адрес с портом (или нет (?)), Я не уверен, что должен быть "пользователь", или если это необходимо, Недостаточно информации на страницах справки GCP или в другом месте.
tl; dr: Мне нужно следующее подключение приложения node.js с модулем mySQL удаленно к базе данных GCP:
var con = mysql.createConnection({
host:"11.222.333.444:3306",
user: "me"
password:"passwo3d",
database:"projectname-1528892969949:europe-west5:dbname"
});
Спасибо!
Строка необработанного соединения должна выглядеть примерно так: mysql://user:password@localhost:port/db
Поэтому я думаю, что ваш код должен выглядеть примерно так:
var con = mysql.createConnection({
host:"11.222.333.444", <-- remove the port from your string
user: "me"
password:"passwo3d",
database:"dbname" <-- you have it as the instance name .. its just suppose to be the DB name
});
Вы также можете попробовать подключиться к экземпляру с помощью настройки прокси-сервера. Вы принимаете только localhost.
Наконец, вы всегда можете пойти в консоль GCP → перейти к вашему экземпляру и открыть оболочку. Я думаю, что они распечатывают gcloud
cmd там, и вы также можете копировать значения с консоли.
В зависимости от того, как вы нажимаете свой код, вам может потребоваться изменить несколько строк соединений в ваших манифестах. Если вы можете поделиться тем, что я могу помочь дальше.
Для этого вам нужно сначала включить удаленный доступ для вашего mysql на вашей GCP. Пошаговое руководство здесь, вы можете оставить первые несколько шагов для установки mysql.