MeWrite Docs

MongoDB: MongoNetworkError: failed to connect

MongoDB接続エラーの解決方法

概要

MongoDBサーバーへの接続に失敗した場合に発生するエラーです。

エラーメッセージ

MongoNetworkError: failed to connect to server [localhost:27017] on first connect

原因

  1. MongoDBが起動していない: サービスが停止
  2. 接続文字列の誤り: ホスト名やポートが間違い
  3. 認証エラー: ユーザー名・パスワードが不正
  4. ネットワーク設定: bindIpの制限

解決策

1. サービス確認

1
2
sudo systemctl status mongod
sudo systemctl start mongod

2. 接続文字列の修正

1
2
3
4
5
6
7
8
// ローカル
const uri = 'mongodb://localhost:27017/mydb';

// 認証付き
const uri = 'mongodb://user:password@localhost:27017/mydb?authSource=admin';

// Atlas
const uri = 'mongodb+srv://user:password@cluster.mongodb.net/mydb';

3. Mongoose接続オプション

1
2
3
4
5
6
7
8
mongoose.connect(uri, {
  serverSelectionTimeoutMS: 5000,
  socketTimeoutMS: 45000,
});

mongoose.connection.on('error', (err) => {
  console.error('MongoDB error:', err);
});

よくある間違い

  • Atlas接続でIPホワイトリスト未設定
  • 認証データベースの指定忘れ

MongoDB の他のエラー

最終更新: 2025-12-09