marko-36
marko-36

Reputation: 1496

What is the connection string for Google Cloud mySQL, in node.js?

The scenario is as follows: I am writing an node.js app locally and want it (the mySQL modul, rather) to connect to a mySQL db running on Google Cloud Platform.

I can not get the connection string right and keep getting errors. GCP holds two names for the database - one i picked, one generated, more complex. Problably I should supply one of these into the connection string as "database", the host is likely the IP address with port (or not(?)), I am not sure what the "user" should be, or if it is necessary. Not enough info on the GCP help pages or elsewhere.

tl;dr: I need the following to connect a node.js app with a mySQL module remotely to a GCP database:

var con = mysql.createConnection({
  host:"11.222.333.444:3306",
  user: "me"
  password:"passwo3d",
  database:"projectname-1528892969949:europe-west5:dbname"
});

Thank you!

Upvotes: 5

Views: 12468

Answers (2)

Prashant
Prashant

Reputation: 1064

The raw connection string should look something like: mysql://user:password@localhost:port/db

So I think your code should look something like:

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
});

You can also try connecting to the instance using the cloud proxy setup. You host would just be localhost.

Finally you can always go the GCP console -> go to your instance and open up a shell. I think they print out the gcloud cmd in there and you can copy values from the console as well.

Depending on how you are pushing your code, you may have to change a few connections strings in your manifests as well. If you can share those I can help further.

Upvotes: 4

Sookie Singh
Sookie Singh

Reputation: 1623

For that to happen, you have to first enable remote access for your mysql on your GCP. A step by step guide is over here, you can leave the first few steps for installing mysql.

Upvotes: -1

Related Questions