update
This commit is contained in:
@@ -13,7 +13,6 @@ const authSource = 'admin'; // 认证数据库,通常是 admin
|
|||||||
const uri = `mongodb://${username}:${password}@${host}:${port}/?authSource=${authSource}`;
|
const uri = `mongodb://${username}:${password}@${host}:${port}/?authSource=${authSource}`;
|
||||||
|
|
||||||
const client = new MongoClient(uri, {
|
const client = new MongoClient(uri, {
|
||||||
dbName: dbName,
|
|
||||||
maxPoolSize: 10, // 连接池最大连接数
|
maxPoolSize: 10, // 连接池最大连接数
|
||||||
serverSelectionTimeoutMS: 5000, // 服务器选择超时时间
|
serverSelectionTimeoutMS: 5000, // 服务器选择超时时间
|
||||||
socketTimeoutMS: 45000, // Socket 超时时间
|
socketTimeoutMS: 45000, // Socket 超时时间
|
||||||
@@ -35,16 +34,16 @@ export async function testConnection() {
|
|||||||
try {
|
try {
|
||||||
console.log('正在测试 MongoDB 连接...');
|
console.log('正在测试 MongoDB 连接...');
|
||||||
await client.connect();
|
await client.connect();
|
||||||
|
|
||||||
// 测试数据库连接
|
// 测试数据库连接
|
||||||
const adminDb = client.db().admin();
|
const adminDb = client.db().admin();
|
||||||
const result = await adminDb.ping();
|
const result = await adminDb.ping();
|
||||||
console.log('MongoDB 连接测试成功!', result);
|
console.log('MongoDB 连接测试成功!', result);
|
||||||
|
|
||||||
// 列出可用的数据库
|
// 列出可用的数据库
|
||||||
const dbs = await adminDb.listDatabases();
|
const dbs = await adminDb.listDatabases();
|
||||||
console.log('可用的数据库:', dbs.databases.map(db => db.name));
|
console.log('可用的数据库:', dbs.databases.map(db => db.name));
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('MongoDB 连接测试失败:', error);
|
console.error('MongoDB 连接测试失败:', error);
|
||||||
@@ -78,13 +77,13 @@ if (import.meta.url === `file://${process.argv[1]}`) {
|
|||||||
export async function connectMongoose() {
|
export async function connectMongoose() {
|
||||||
try {
|
try {
|
||||||
const mongooseUri = `mongodb://${username}:${password}@${host}:${port}/${dbName}?authSource=${authSource}`;
|
const mongooseUri = `mongodb://${username}:${password}@${host}:${port}/${dbName}?authSource=${authSource}`;
|
||||||
|
|
||||||
await mongoose.connect(mongooseUri, {
|
await mongoose.connect(mongooseUri, {
|
||||||
maxPoolSize: 10,
|
maxPoolSize: 10,
|
||||||
serverSelectionTimeoutMS: 5000,
|
serverSelectionTimeoutMS: 5000,
|
||||||
socketTimeoutMS: 45000,
|
socketTimeoutMS: 45000,
|
||||||
} as any);
|
} as any);
|
||||||
|
|
||||||
console.log('Connected to MongoDB via Mongoose');
|
console.log('Connected to MongoDB via Mongoose');
|
||||||
return mongoose.connection;
|
return mongoose.connection;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
|||||||
Reference in New Issue
Block a user