在 Ubuntu 上用 Node.js 连接数据库,通常分为 安装数据库 → 安装 Node.js → 安装对应数据库驱动 → 写代码连接 几个步骤。下面以常见数据库为例说明。
sudo apt update
sudo apt install nodejs npm -y
node -v
npm -v
mkdir node-db-demo
cd node-db-demo
npm init -y
sudo apt install mysql-server -y
sudo systemctl start mysql
sudo mysql_secure_installation
CREATE DATABASE testdb;
CREATE USER 'nodeuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON testdb.* TO 'nodeuser'@'localhost';
FLUSH PRIVILEGES;
npm install mysql2
const mysql = require('mysql2');
const connection = mysql.createConnection({
host: 'localhost',
user: 'nodeuser',
password: 'password',
database: 'testdb'
});
connection.connect(err => {
if (err) {
console.error('连接失败:', err);
return;
}
console.log('MySQL 连接成功');
});
connection.query('SELECT 1 + 1 AS result', (err, results) => {
if (err) throw err;
console.log(results);
});
connection.end();
sudo apt install postgresql postgresql-contrib -y
sudo systemctl start postgresql
sudo -u postgres psql
CREATE DATABASE testdb;
CREATE USER nodeuser WITH PASSWORD 'password';
GRANT ALL PRIVILEGES ON DATABASE testdb TO nodeuser;
npm install pg
const { Pool } = require('pg');
const pool = new Pool({
user: 'nodeuser',
host: 'localhost',
database: 'testdb',
password: 'password',
port: 5432
});
pool.query('SELECT NOW()', (err, res) => {
if (err) throw err;
console.log(res.rows);
pool.end();
});
sudo apt install mongodb -y
sudo systemctl start mongodb
npm install mongoose
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost:27017/testdb', {
useNewUrlParser: true,
useUnifiedTopology: true
});
mongoose.connection.on('connected', () => {
console.log('MongoDB 连接成功');
});
连接被拒绝
生产环境建议
如果你告诉我:
我可以给你更精确的配置示例。