温馨提示×

ubuntu nodejs如何连库

小樊
53
2026-10-13 12:15:56
栏目: 编程语言

在 Ubuntu 上用 Node.js 连接数据库,通常分三步:安装 Node.js → 安装数据库驱动 → 写连接代码。下面按常见数据库给你示例。


一、准备工作

1. 安装 Node.js(Ubuntu)

sudo apt update
sudo apt install nodejs npm -y

验证:

node -v
npm -v

2. 初始化项目

mkdir demo && cd demo
npm init -y

二、连接常见数据库

✅ MySQL / MariaDB

npm install mysql2

示例代码(mysql2):

const mysql = require('mysql2');

const conn = mysql.createConnection({
  host: 'localhost',
  user: 'root',
  password: '你的密码',
  database: 'test'
});

conn.connect(err => {
  if (err) throw err;
  console.log('MySQL 连接成功');
});

conn.query('SELECT 1 + 1 AS result', (err, rows) => {
  console.log(rows);
  conn.end();
});

✅ PostgreSQL

npm install pg

示例代码:

const { Client } = require('pg');

const client = new Client({
  host: 'localhost',
  user: 'postgres',
  password: '你的密码',
  database: 'test',
  port: 5432
});

client.connect()
  .then(() => client.query('SELECT NOW()'))
  .then(res => {
    console.log(res.rows);
    return client.end();
  })
  .catch(err => console.error(err));

✅ MongoDB

npm install mongodb

示例代码:

const { MongoClient } = require('mongodb');

const uri = 'mongodb://localhost:27017';
const client = new MongoClient(uri);

async function run() {
  await client.connect();
  const db = client.db('test');
  const col = db.collection('users');
  console.log(await col.find({}).toArray());
  await client.close();
}
run();

✅ SQLite(本地文件库)

npm install sqlite3
const sqlite3 = require('sqlite3').verbose();

const db = new sqlite3.Database('./test.db');
db.serialize(() => {
  db.run('CREATE TABLE IF NOT EXISTS t (id INTEGER)');
  db.get('SELECT 1 AS v', (err, row) => {
    console.log(row);
  });
});
db.close();

三、常见问题

1. 连不上数据库?

  • 数据库服务是否启动
    sudo systemctl status mysql
    sudo systemctl status postgresql
    
  • 防火墙 / 端口
  • 用户权限(是否允许 localhost)

2. 生产建议

  • 用连接池(mysql2 / pg 都支持)
  • 密码不要写死在代码里(用 .env)
npm install dotenv

如果你说的是 “连哪个库”(MySQL?Redis?ClickHouse?)或 “Ubuntu 服务器连远程库”,告诉我具体场景,我可以给你更精确的配置。

0 踩