Files
backstor-ui/server/test_db.js
2025-12-08 12:12:07 +07:00

43 lines
1.4 KiB
JavaScript

require('dotenv').config();
const { Client } = require('pg');
const config = {
host: process.env.DB_HOST,
user: process.env.DB_USER,
password: process.env.DB_PASSWORD,
database: process.env.DB_NAME,
port: process.env.DB_PORT,
};
console.log('--- Database Connection Diagnostic ---');
console.log(`Host: ${config.host}`);
console.log(`User: ${config.user}`);
console.log(`Database: ${config.database}`);
console.log(`Port: ${config.port}`);
console.log(`Password: ${config.password ? '**** (Set)' : '(Not Set!)'}`);
console.log('--------------------------------------');
const client = new Client(config);
(async () => {
try {
await client.connect();
console.log('✅ Connection Successful!');
const res = await client.query('SELECT current_user, current_database()');
console.log('Connected as:', res.rows[0]);
await client.end();
} catch (err) {
console.error('❌ Connection Failed!');
console.error('Error Code:', err.code);
console.error('Message:', err.message);
if (err.code === '28P01') {
console.log('\nPossible causes for 28P01 (Auth Failed):');
console.log('1. Wrong password.');
console.log('2. Wrong username.');
console.log('3. User exists but has no password set in DB.');
}
await client.end();
process.exit(1);
}
})();