Hola amigos necesito hacer una apliación hosteada en google cloud platform , está misma la estoy haciendo en NodeJs, y pues para hacer el cuento MUY corto, google te permite manejar sql a partir de instancias que creas en sus servicios de gcloud , ellos te dan una ip y puedes accecar a ella mediante ssh o un terminal que ellos te proveen. Mi pregunta es? alguiens sabe como puedo conectarme con SQL y Express a un de estas dbs, ya tengo todo, pero no consigo conectarme, seguí los pasos de la documentación. Pero tambien he encontrado fuentes en donde parecen montar un simple conexión y solo usan la ip que les proporciona google. Alguien podría orientarme un poco? ,
Este es mi código de conexión:
const mysql = require('mysql');const { promisify } = require('util');const {db} = require('./keys');/*prueba2*/ let connection = mysql.createConnection({ host: process.env.DB_HOST, user: process.env.DB_USER, database: process.env.DB_DATABASE, password: process.env.DB_PASS }); connection.connect(function(err) { if (err) { console.error('Error connecting: '+ err.stack); return; } console.log('Connected as thread id: '+ connection.threadId); }); module.exports = connection;/*prueba 1const pool = mysql.createPool(db);pool.getConnection(function(err, connection) { if (err) throw err; // not connected! // Use the connection connection.query('SELECT * FROM users', function (error, results, fields) { // When done with the connection, release it. connection.release(); // Handle error after the release. if (error) throw error; if(connection) console.log('connect timeout: '+connection.config.connectTimeout+' / idthread : '+connection.threadId) // Don't use the connection here, it has been returned to the pool. }); }); //promisify pool query añade promesaspool.query = promisify(pool.query);module.exports = pool;*/
la prueba 1 y los keys son las mismas variables de entorno, pero ninguna conecta, ambas me mandan un:
Error: connect ETIMEDOUT
literal me he basado en la documentación y en el siguiente ejemplo.fuentes:
https://cloud.google.com/appengine/docs/flexible/nodejs/using-cloud-sqlhttps://medium.com/@austinhale/building-a-node-api-with-express-and-google-cloud-sql-9bda260b040f
!NOTA: este problema surgió porque no activaba el proxy , que bien està referido en la documentaciòn y por eso me mandaba.
Error: connect ETIMEDOUT como si no tuviese internet, pero era porque google me negaba el acceso, por no seguir sus practicas.