2013-04-16 1 views
0

Я боролся с этим в течение нескольких дней и не могу понять, что не так.ENOENT с nodejs mysql и sequelize

Я использую:

-node.js 0.10.4 
-mysql 5.5.29 
-node mysql 2.0.0.alpha7 
-node sequelize 1.6.0 

Когда я пытаюсь выполнить какие-либо вопросы, я получаю сообщение об ошибке с ENOENT где-то в нем. Из моего исследования похоже, что это сообщение об ошибке общего узла для проблемы с файловой системой, например, файл не существует или недостаточно разрешений. Я проверил, и мои учетные данные верны. Итак, мои создания заявления не в состоянии, а затем, когда мое приложение переходит на запрос к базе данных, таблицы не существуют, и я получаю что-то вроде:

Error: connect ENOENT 
at errnoException (net.js:883:11) 
at Object.afterConnect [as oncomplete] (net.js:874:19) 
-------------------- 
at Handshake.Sequence (/home/greg/snipit/node_modules/mysql/lib/protocol/sequences/Sequence.js:15:21) 
at new Handshake (/home/greg/snipit/node_modules/mysql/lib/protocol/sequences/Handshake.js:9:12) 
at Protocol.handshake (/home/greg/snipit/node_modules/mysql/lib/protocol/Protocol.js:41:50) 
at Connection.connect (/home/greg/snipit/node_modules/mysql/lib/Connection.js:63:18) 
at Connection._implyConnect (/home/greg/snipit/node_modules/mysql/lib/Connection.js:162:10) 
at Connection.query (/home/greg/snipit/node_modules/mysql/lib/Connection.js:88:8) 
at module.exports.connect (/home/greg/snipit/node_modules/sequelize/lib/dialects/mysql/connector-manager.js:247:16) 
at Object.pool.Pooling.Pool.create (/home/greg/snipit/node_modules/sequelize/lib/dialects/mysql/connector-manager.js:111:19) 
at dispense (/home/greg/snipit/node_modules/sequelize/node_modules/generic-pool/lib/generic-pool.js:216:17) 
at Object.me.acquire (/home/greg/snipit/node_modules/sequelize/node_modules/generic-pool/lib/generic-pool.js:260:5) 

Какого типа вещи обычно вызывает это? Спасибо.

+0

Должен спросить - работает MySQL? Он прослушивает порт по умолчанию, 3306, или вы указываете порт в параметрах ['createConnection'] (https://github.com/felixge/node-mysql#connection-options)? Если используется linux/unix, вместо этого используется MySQL [с использованием сокета домена] (https://github.com/felixge/node-mysql/issues/262#issuecom-7750986)? –

+0

@JonathanLonowski Привет, Джонатан благодарит вас за ответ. Я проверил, как я делаю свои связи, и, оказывается, у меня была опечатка. Мое приложение читает учетные данные из json-файла, но я случайно передал пароль mysql, который я прочитал, в мое соединение, как порт для подключения! Поэтому я пытался подключиться к localhost: «password». ха-ха. Это объясняет, почему половина моих работников не испытывала никаких проблем ... у них нет пароля mysql, поэтому порт подключения не работает. В любом случае. Это не имеет значения ни для кого, кроме меня - я должен удалить этот вопрос? Еще раз спасибо. –

+1

Нет, вам не нужно его удалять. Я бы сказал, чтобы продолжить и опубликовать описание того, что вы нашли в качестве ответа, вместо комментария - http://blog.stackoverflow.com/2011/07/its-ok-to-ask-and-answer -Ваш-собственность- вопросы /. Это может оказаться полезным для кого-то другого, кто находит его позже. –

ответ

1

Я проверил, как я делал свои связи, и, оказывается, у меня была опечатка. Мое приложение читает учетные данные из json-файла, но я случайно передал пароль mysql, который я прочитал, в мое соединение, как порт для подключения! Поэтому я пытался подключиться к localhost: «password». ха-ха. Это объясняет, почему половина моих работников не испытывала никаких проблем ... у них нет пароля mysql, и поэтому порт подключения не работал.