HaniBlindBox/server/scripts/test_connection.js
2026-01-02 15:46:56 +08:00

94 lines
2.7 KiB
JavaScript

/**
* 数据库连接测试脚本
*/
const mysql = require('mysql2/promise');
const sql = require('mssql');
// MySQL 配置
const mysqlConfig = {
host: '192.168.195.16',
port: 1887,
user: 'root',
password: 'Dbt@com@123',
database: 'youdas',
charset: 'utf8mb4'
};
// SQL Server 配置
const sqlServerConfig = {
server: '192.168.195.15',
port: 1433,
user: 'sa',
password: 'Dbt@com@123',
database: 'honey_box',
options: {
encrypt: false,
trustServerCertificate: true
}
};
async function testMySQL() {
console.log('========================================');
console.log('测试 MySQL 连接');
console.log('========================================');
try {
const conn = await mysql.createConnection(mysqlConfig);
console.log('✅ MySQL 连接成功!');
const [rows] = await conn.execute('SELECT VERSION() as version');
console.log(`MySQL 版本: ${rows[0].version}`);
const [tables] = await conn.execute('SHOW TABLES');
console.log(`数据库表数量: ${tables.length}`);
await conn.end();
return true;
} catch (err) {
console.error('❌ MySQL 连接失败:', err.message);
return false;
}
}
async function testSQLServer() {
console.log('\n========================================');
console.log('测试 SQL Server 连接');
console.log('========================================');
try {
const pool = await sql.connect(sqlServerConfig);
console.log('✅ SQL Server 连接成功!');
const result = await pool.request().query('SELECT @@VERSION as version');
console.log(`SQL Server 版本: ${result.recordset[0].version.split('\n')[0]}`);
const tablesResult = await pool.request().query(`
SELECT COUNT(*) as count FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE'
`);
console.log(`数据库表数量: ${tablesResult.recordset[0].count}`);
await pool.close();
return true;
} catch (err) {
console.error('❌ SQL Server 连接失败:', err.message);
return false;
}
}
async function main() {
console.log('数据库连接测试开始...\n');
const mysqlOk = await testMySQL();
const sqlServerOk = await testSQLServer();
console.log('\n========================================');
console.log('测试结果汇总');
console.log('========================================');
console.log(`MySQL: ${mysqlOk ? '✅ 正常' : '❌ 失败'}`);
console.log(`SQL Server: ${sqlServerOk ? '✅ 正常' : '❌ 失败'}`);
}
main();