47 lines
1.1 KiB
JavaScript
47 lines
1.1 KiB
JavaScript
const { Sequelize } = require('sequelize');
|
|
require('dotenv').config();
|
|
|
|
// 从环境变量获取数据库配置
|
|
const DB_DIALECT = process.env.DB_DIALECT || 'mysql';
|
|
const DB_HOST = process.env.DB_HOST || '129.211.213.226';
|
|
const DB_PORT = process.env.DB_PORT || 3306;
|
|
const DB_NAME = process.env.DB_NAME || 'nxTest';
|
|
const DB_USER = process.env.DB_USER || 'root';
|
|
const DB_PASSWORD = process.env.DB_PASSWORD || 'Aiotagro@741';
|
|
|
|
// 创建Sequelize实例
|
|
const sequelize = new Sequelize(DB_NAME, DB_USER, DB_PASSWORD, {
|
|
host: DB_HOST,
|
|
port: DB_PORT,
|
|
dialect: DB_DIALECT,
|
|
logging: false,
|
|
pool: {
|
|
max: 5,
|
|
min: 0,
|
|
acquire: 30000,
|
|
idle: 10000
|
|
},
|
|
define: {
|
|
timestamps: true,
|
|
charset: 'utf8mb4'
|
|
},
|
|
timezone: '+08:00'
|
|
});
|
|
|
|
// 测试数据库连接
|
|
const testConnection = async () => {
|
|
try {
|
|
await sequelize.authenticate();
|
|
console.log('✅ 数据库连接成功');
|
|
return true;
|
|
} catch (err) {
|
|
console.error('❌ 数据库连接失败:', err.message);
|
|
return false;
|
|
}
|
|
};
|
|
|
|
module.exports = {
|
|
sequelize,
|
|
testConnection
|
|
};
|