Files
aiapply/test-db-connection.js

68 lines
1.7 KiB
JavaScript
Raw Permalink Normal View History

2025-09-06 08:28:47 +08:00
const mysql = require('mysql2/promise');
// 数据库连接配置
const dbConfig = {
host: 'gz-cynosdbmysql-grp-d26pzce5.sql.tencentcdb.com',
port: 24936,
user: 'root',
password: '!Rjb12191',
database: 'pronode_db',
charset: 'utf8mb4'
};
async function testConnection() {
let connection;
try {
console.log('🔌 正在连接腾讯云数据库...');
// 创建连接
connection = await mysql.createConnection(dbConfig);
console.log('✅ 数据库连接成功!');
// 测试查询
const [rows] = await connection.execute('SELECT 1 as test');
console.log('✅ 查询测试成功:', rows[0]);
// 检查数据库是否存在
const [databases] = await connection.execute('SHOW DATABASES');
console.log('📊 可用数据库:');
databases.forEach(db => {
console.log(` - ${db.Database}`);
});
// 检查当前数据库的表
const [tables] = await connection.execute('SHOW TABLES');
console.log('📋 当前数据库表:');
if (tables.length === 0) {
console.log(' (暂无表)');
} else {
tables.forEach(table => {
console.log(` - ${Object.values(table)[0]}`);
});
}
return true;
} catch (error) {
console.error('❌ 数据库连接失败:', error.message);
return false;
} finally {
if (connection) {
await connection.end();
console.log('🔌 数据库连接已关闭');
}
}
}
// 运行测试
testConnection().then(success => {
if (success) {
console.log('🎉 数据库连接测试完成!');
} else {
console.log('💥 数据库连接测试失败!');
}
process.exit(success ? 0 : 1);
});