Files
nxxmdata/insurance_backend/test-db-connection.js
2025-09-22 19:09:45 +08:00

42 lines
1.7 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

const { sequelize, testConnection } = require('./config/database.js');
// 测试数据库连接
async function runTest() {
console.log('=== 数据库连接测试开始 ===');
console.log('环境变量检查:');
console.log(`- DB_HOST: ${process.env.DB_HOST}`);
console.log(`- DB_PORT: ${process.env.DB_PORT}`);
console.log(`- DB_DATABASE: ${process.env.DB_DATABASE}`);
console.log(`- DB_USER: ${process.env.DB_USER}`);
console.log(`- DB_PASSWORD: ${process.env.DB_PASSWORD ? '已设置' : '未设置'}`);
console.log('\n连接参数检查:');
console.log(`- 实际使用的主机: ${sequelize.config.host}`);
console.log(`- 实际使用的端口: ${sequelize.config.port}`);
console.log(`- 实际使用的数据库: ${sequelize.config.database}`);
console.log(`- 实际使用的用户名: ${sequelize.config.username}`);
console.log(`- 实际使用的密码: ${sequelize.config.password ? '已设置' : '未设置'}`);
console.log('\n正在尝试连接数据库...');
const success = await testConnection();
if (success) {
console.log('✅ 测试成功!数据库连接已建立。');
console.log('\n请尝试重新启动应用服务器。');
} else {
console.log('❌ 测试失败。请检查数据库配置和服务状态。');
console.log('\n可能的解决方案');
console.log('1. 确认MySQL服务正在运行');
console.log('2. 确认用户名和密码正确');
console.log('3. 确认数据库已创建');
console.log('4. 确认用户有足够的权限访问该数据库');
}
console.log('=== 数据库连接测试结束 ===');
}
// 执行测试
runTest().catch(error => {
console.error('测试执行过程中发生错误:', error);
process.exit(1);
});