68 lines
1.7 KiB
JavaScript
68 lines
1.7 KiB
JavaScript
|
|
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);
|
||
|
|
});
|