下面分 两部分 说明:
1️⃣ CentOS 上安装并配置 Node.js
2️⃣ Node.js 连接数据库(MySQL / PostgreSQL / MongoDB 示例)
# 安装依赖
sudo yum install -y curl
# 添加 Node.js 20.x 源(可换成 18.x、22.x)
curl -fsSL https://rpm.nodesource.com/setup_20.x | sudo bash -
# 安装 Node.js
sudo yum install -y nodejs
# 验证
node -v
npm -v
sudo yum install -y epel-release
sudo yum install -y nodejs npm
npm init -y
npm install mysql2
const mysql = require('mysql2/promise');
async function main() {
const conn = await mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'password',
database: 'testdb'
});
const [rows] = await conn.execute('SELECT NOW()');
console.log(rows);
await conn.end();
}
main();
✅ CentOS 需要确认 MySQL 已启动
systemctl status mysqld
npm install pg
const { Client } = require('pg');
const client = new Client({
host: 'localhost',
user: 'postgres',
password: 'password',
database: 'testdb',
port: 5432
});
client.connect();
client.query('SELECT NOW()', (err, res) => {
console.log(res.rows);
client.end();
});
npm install mongoose
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost:27017/testdb')
.then(() => console.log('MongoDB connected'))
.catch(err => console.error(err));
sudo firewall-cmd --add-port=3306/tcp --permanent
sudo firewall-cmd --reload
临时关闭测试:
setenforce 0
bind-address = 0.0.0.0pg_hba.conf✅ 使用 环境变量 管理数据库配置
npm install dotenv
require('dotenv').config();
DB_HOST=localhost
DB_USER=root
DB_PASSWORD=password
DB_NAME=testdb
你可以直接告诉我:
我可以给你 完整可运行的部署方案。