商城首页欢迎来到中国正版软件门户

您的位置:首页 >Node.js在Ubuntu中如何连接数据库

Node.js在Ubuntu中如何连接数据库

  发布于2026-05-01 阅读(0)

扫一扫,手机访问

在Ubuntu中使用Node.js连接数据库

Node.js在Ubuntu中如何连接数据库

在Ubuntu环境下,用Node.js连接数据库,其实是一套标准化的操作流程。这事儿说复杂也不复杂,关键是把几个核心步骤理顺了。下面,我们就来一步步拆解,看看如何从零开始,在Ubuntu上让Node.js和你选中的数据库“握手”成功。

1. 安装Node.js

万事开头难?其实不然。第一步很简单:确保你的Ubuntu系统已经安装了Node.js和它的包管理器npm。如果还没安装,打开终端,执行下面这两条命令就行:

sudo apt update
sudo apt install nodejs npm

执行完,基本的运行环境就准备好了。

2. 选择数据库

接下来是关键选择:用哪种数据库?这完全取决于你的项目需求。是关系型数据,还是文档型数据?市面上主流的选择无非那么几种:老牌的MySQL、功能强大的PostgreSQL,或者是灵活度极高的MongoDB。选一个最适合你业务场景的就好。

3. 安装数据库

选定了数据库,下一步就是在Ubuntu上把它安装起来。这里以MySQL为例,演示一下安装过程:

sudo apt install mysql-server

安装完成后,强烈建议运行一下MySQL自带的安全配置脚本。这个步骤能帮你设置root密码、移除匿名用户等,算是数据库安全的第一道防线:

sudo mysql_secure_installation

4. 安装数据库客户端库

现在,数据库服务端已经在你的机器上跑起来了。但Node.js程序要和它对话,还需要一个“翻译官”,也就是对应的Node.js客户端驱动库。这个需要在你项目的目录下,通过npm来安装。

比如,如果你用的是MySQL,目前社区更推荐性能更好的mysql2包:

npm install mysql2

如果选择的是PostgreSQL,那就安装pg包:

npm install pg

要是用了MongoDB,对应的包则是mongodb

npm install mongodb

5. 编写Node.js代码连接数据库

环境、工具都齐备了,终于到了写代码的环节。这才是真正见证连接的魔法时刻。下面这段代码,展示了如何使用mysql2包连接到本地的MySQL数据库,并执行一个简单的查询:

const mysql = require('mysql2');

// 创建数据库连接
const connection = mysql.createConnection({
  host: 'localhost',
  user: 'your_username',
  password: 'your_password',
  database: 'your_database'
});

// 连接到数据库
connection.connect((err) => {
  if (err) {
    console.error('Error connecting to database: ', err);
    return;
  }
  console.log('Connected to the MySQL server.');
});

// 执行查询
connection.query('SELECT * FROM your_table', (err, results, fields) => {
  if (err) {
    console.error('Error executing query: ', err);
    return;
  }
  console.log('Query results: ', results);
});

// 关闭连接
connection.end();

看,代码逻辑非常清晰:引入库、配置连接参数、建立连接、执行操作、最后关闭连接。你需要做的,就是把其中的your_usernameyour_passwordyour_database替换成你自己数据库的实际信息。

6. 运行Node.js应用程序

最后一步,就是让代码跑起来。将上面的代码保存为一个文件,比如app.js,然后在终端中运行:

node app.js

如果一切配置正确,你将在终端看到成功的连接信息和查询结果。

至此,整个流程就走通了。从安装环境到代码执行,每一步都环环相扣。当然,实际项目中你可能会遇到更复杂的配置,比如连接池管理、ORM框架使用,或者连接云端数据库。但无论怎么变,上面这个核心路径和原理都是相通的。理解了这个基础,后续的扩展和优化也就有章可循了。

本文转载于:https://www.yisu.com/ask/52648117.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注