呼び出される私はMEANプロジェクトを持っており、これは、スニペットで私のserver.jsからのMongoDBマングース接続オープンコールバックのdoesntが
var db = require('./config/db');
// url : 'mongodb://localhost/cdnserver'
// results are same for 127.0.0.1 or the machines ip
console.log(mongoose.connect(db.url));
mongoose.set('debug', true);
mongoose.connection.on('connected', function() {
console.log('Mongoose default connection open to ' + db.url);
});
// If the connection throws an error
mongoose.connection.on('error',function (err) {
console.log('Mongoose default connection error: ' + err);
});
// When the connection is disconnected
mongoose.connection.on('disconnected', function() {
console.log('Mongoose default connection disconnected');
});
これは現在、3ヶ月以上のためによく働いている設定です。今私はMEANスタック全体をデータベースと一緒に他のマシンに複製しています。私はモンドームをとり、mongorestoreをしました。復元されたデータベースの設定は、ターミナルからmongoを通して正常に見えます。
ただし、サーバーを起動すると、接続オープンコールバックが呼び出されません。 mongodbサービスを停止すると切断され、エラーコールバックが呼び出されます。これをさらにどのようにデバッグするのですか?
両方の設定からコンソール出力を添付しています。
セットアップ1:
Mongoose {
connections:
[ NativeConnection {
base: [Circular],
collections: {},
models: {},
replica: false,
hosts: null,
host: 'localhost',
port: 27017,
user: undefined,
pass: undefined,
name: 'cdnserver',
options: [Object],
otherDbs: [],
_readyState: 2,
_closeCalled: false,
_hasOpened: false,
_listening: false,
db: [Object] } ],
plugins: [],
models: {},
modelSchemas: {},
options: { pluralization: true } }
Server up on 80
Mongoose default connection open to mongodb://localhost/cdnserver
1
Mongoose: videos.find({}) { skip: 0, limit: 5, fields: undefined }
セットアップ2:
Mongoose {
connections:
[ NativeConnection {
base: [Circular],
collections: {},
models: {},
replica: false,
hosts: null,
host: 'localhost',
port: 27017,
user: undefined,
pass: undefined,
name: 'cdnserver',
options: [Object],
otherDbs: [],
_readyState: 2,
_closeCalled: false,
_hasOpened: false,
_listening: false,
db: [Object] } ],
plugins: [],
models: {},
modelSchemas: {},
options: { pluralization: true } }
Server up on 80
1
1
Mongoose default connection disconnected
Mongoose default connection error: Error: connection closed
猫/var/log/mongodb/mongodb.logは、両方のマシンでまったく同じ出力を示しています。
更新1:セットアップが正常に動作し始め、再び停止しました。私は何が起こっているのか理解できません。
端末からmongoに接続できますか?おそらくあなたは新しいDBの認証を有効にしましたか? – GilZ
@GilZ接続できますが、認証が設定されていません。また、システムが断続的に動作したときに、私は認証設定を変更しませんでした。 – 55597
mongodbサーバのログは、通常、 '/ var/log/mongodb/mongodb.log'でチェックしましたか? –