Files
jiebanke/test-mysql-connection.js

86 lines
2.6 KiB
JavaScript
Raw Normal View History

2025-08-30 14:33:49 +08:00
const mysql = require('mysql2');
// 生产环境数据库配置(先不指定数据库)
const prodConfig = {
host: '129.211.213.226',
port: 9527,
user: 'root',
password: 'aiotAiot123!'
};
function testConnection(config, environment) {
return new Promise((resolve) => {
console.log(`\n🔗 正在测试 ${environment} 数据库连接...`);
console.log(`主机: ${config.host}`);
console.log(`端口: ${config.port}`);
// 创建连接
const connection = mysql.createConnection(config);
connection.connect((err) => {
if (err) {
console.error('❌ 数据库连接失败:', err.message);
connection.end();
return resolve({ success: false, error: err.message });
}
console.log('✅ 数据库连接成功!');
// 测试查询
console.log('📊 执行测试查询...');
connection.query('SELECT 1 as test_result', (err, rows) => {
if (err) {
console.error('❌ 测试查询失败:', err.message);
connection.end();
return resolve({ success: false, error: err.message });
}
console.log('✅ 测试查询成功:', rows[0]);
// 获取数据库版本
connection.query('SELECT VERSION() as version', (err, versionRows) => {
if (err) {
console.error('❌ 获取版本失败:', err.message);
} else {
console.log('📋 数据库版本:', versionRows[0].version);
2025-08-30 14:33:49 +08:00
}
// 列出所有数据库
connection.query('SHOW DATABASES', (err, dbRows) => {
2025-08-30 14:33:49 +08:00
if (err) {
console.error('❌ 获取数据库列表失败:', err.message);
} else {
console.log('📚 可用数据库:');
dbRows.forEach(row => {
console.log(`${row.Database}`);
});
2025-08-30 14:33:49 +08:00
}
connection.end();
resolve({ success: true });
2025-08-30 14:33:49 +08:00
});
});
});
});
});
}
async function main() {
console.log('🚀 开始测试结伴客系统数据库连接');
console.log('============================================================');
2025-08-30 14:33:49 +08:00
// 测试生产环境数据库
2025-08-30 14:33:49 +08:00
const prodResult = await testConnection(prodConfig, '生产环境');
console.log('\n============================================================');
console.log('🏁 数据库连接测试完成');
2025-08-30 14:33:49 +08:00
if (prodResult.success) {
console.log('🎉 所有测试通过!');
} else {
console.log('💥 部分测试失败');
2025-08-30 14:33:49 +08:00
}
}
// 执行测试
main().catch(console.error);