Trying to run a script for mysql

50 views
Skip to first unread message

shaurya...@woodstock.ac.in

unread,
Jan 16, 2015, 9:28:51 AM1/16/15
to node-...@googlegroups.com
I'm trying to run this:

#!/usr/bin/env node

var assert = require('assert');
var fs = require('fs');
var path = require('path');
var util = require('util');
var optimist = require('optimist');
var migrate = require('db-migrate');
var log = require('db-migrate/lib/log');
var mysql = require('mysql');
var migrations = require('../app/lib/migrations');
var db = require('../app/lib/db');

process
.on('uncaughtException', function(err) {
  log
.error(err.stack);
  process
.exit(1);
});

var argv = optimist
   
.default({
      verbose
: false
   
})
   
.usage('Usage: db-migrate [up|down|create] migrationName [options]')

   
.describe('count', 'Max number of migrations to run.')
   
.alias('c', 'count')
   
.string('c')

   
.describe('dry-run', "Prints the SQL but doesn't run it.")
   
.boolean('dry-run')

   
.describe('verbose', 'Verbose mode.')
   
.alias('v', 'verbose')
   
.boolean('v')

   
.alias('h', 'help')
   
.alias('h', '?')
   
.boolean('h')
   
.argv;

if (argv.help || argv._.length == 0) {
  optimist
.showHelp();
  process
.exit(1);
}

global.verbose = argv.verbose;
global.dryRun = argv['dry-run'];
if(global.dryRun) {
  log
.info('dry run');
}

function executeCreate() {
 
if(argv._.length == 0) {
    log
.error("'migrationName' is required.");
    optimist
.showHelp();
    process
.exit(1);
 
}

  argv
.title = argv._.shift();
  migrate
.createMigration(argv.title, migrations.dir, function(err, migration) {
   
assert.ifError(err);
    log
.info(util.format('Created migration at %s', migration.path));
    process
.exit(0);
 
});
}

function onComplete(err) {
 
assert.ifError(err);
  log
.info('Done');
  process
.exit(0)
}

function run() {
 
var action = argv._.shift();
 
switch(action) {
   
case 'create':
      executeCreate
();
     
break;
   
case 'up':
   
case 'down':
      argv
.config = db.getDbConfig();
     
if(argv.verbose) {
        log
.info("Using settings:", argv.config);
     
}
     
if(argv._.length > 0) {
        argv
.destination = argv._.shift().toString();
     
}
     
if(action == 'up') {
        migrations
.up(argv, onComplete);
     
} else {
        migrations
.down(argv, onComplete);
     
}
     
break;

   
default:
      log
.error('Invalid Action: Must be [up|down|create].');
      optimist
.showHelp();
      process
.exit(1);
     
break;
 
}
}

run
();


by running "db-migrate up" I get this error:

{ [Error: getaddrinfo ENOTFOUND]
  code
: 'ENOTFOUND',
  errno
: 'ENOTFOUND',
  syscall
: 'getaddrinfo',
  fatal
: true }
[ERROR] Error: getaddrinfo ENOTFOUND
    at errnoException
(dns.js:37:11)
    at
Object.onanswer [as oncomplete] (dns.js:124:16)
   
--------------------
    at
Protocol._enqueue (/root/badgekit-api/node_modules/mysql/lib/protocol/Protocol.js:110:26)
    at
Protocol.handshake (/root/badgekit-api/node_modules/mysql/lib/protocol/Protocol.js:42:41)
    at
Connection.connect (/root/badgekit-api/node_modules/mysql/lib/Connection.js:81:18)
    at
Connection._implyConnect (/root/badgekit-api/node_modules/mysql/lib/Connection.js:222:10)
    at
Connection.query (/root/badgekit-api/node_modules/mysql/lib/Connection.js:137:8)
    at
Class.Base.extend.runSql (/root/badgekit-api/node_modules/db-migrate/lib/driver/mysql.js:246:34)
    at
Class.Base.extend.createTable (/root/badgekit-api/node_modules/db-migrate/lib/driver/mysql.js:144:10)
    at
Class.module.exports.Class.extend.createMigrationsTable (/root/badgekit-api/node_modules/db-migrate/lib/driver/base.js:72:10)
    at
/root/badgekit-api/app/lib/migrations.js:16:23
    at
/root/badgekit-api/node_modules/db-migrate/index.js:10:5


What am I doing wrong?
Reply all
Reply to author
Forward
0 new messages