Acces database from appfog's node.js server (Database settings)

I'm trying to connect to a database using a node.js server both hosted on appfog.com using these settings:

var client = mysql.createConnection({
   host: 'mysql-node01.eu-west-1.aws.af.cm',
   user: '****@gmail.com',
   password: '*******',
   database: 'd2dc10d6a450048b587114fa9b11756ed',
   port: 3306
});

I'm pretty sure the host, database and maybe port are incorrect but I don't know which values to use, i.e. should I use localhost?

Use the db credentials from the VCAP_SERVICES environment var and do not hard code them. The credentials are provided when the app is started on AppFog. See the Appfog Node Docs

var env = JSON.parse(process.env.VCAP_SERVICES);
var creds = env['mysql-5.1'][0]['credentials']; # grabs the creds for the first mysql database

var client = mysql.createConnection({
   host: creds.hostname || 'localhost',
   user: creds.username,
   password: creds.password,
   database: creds.name,
   port: creds.port || 3306
});

I created a npm package to help facilitate getting production and development credentials. See AppFog Env

How to use it:

First set a local env var with your local dev database credentials:

export DEV_DB_CREDS='{ "username": "root", "name": "dev-db-name" }'

Then get the creds in the app:

var service = appfog.getService('mysql-db-name', process.env.DEV_DB_CREDS)
var creds = service.credentials

This method allows the same code to work locally and in production.