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

您的位置: 首页 > 文章列表 > 编程开发 > Linux 下 Node.js 如何配置数据库连接

Linux 下 Node.js 如何配置数据库连接

  发布于2026-07-21 阅读(0)

扫一扫,手机访问

在 Linux 环境下,让 Node.js 应用顺利连上数据库,其实就几步常规操作,并不复杂。下面把整个流程拆开来看,每一步都讲清楚,你照着做就行。

Linux 下 Node.js 如何配置数据库连接

  1. 选数据库——这是决策的第一步。市面上主流的选择就那么几样:MySQL、PostgreSQL、MongoDB、SQLite,当然还有别的,但绝大部分场景下从这四种里挑一个就够了。根据你的业务需求、数据结构、团队熟悉程度来定,没有绝对的好坏。

  2. 安装数据库服务——选好之后,在 Linux 上把它装上去。以 MySQL 为例,用包管理器搞定:

    sudo apt update
    sudo apt install mysql-server

    如果是 PostgreSQL,命令也很类似:

    sudo apt update
    sudo apt install postgresql postgresql-contrib

    装完就算完成了大半,剩下的就是配置启动。

  3. 配置数据库——启动服务,建库建用户。还是拿 MySQL 举例:

    sudo systemctl start mysql
    sudo mysql_secure_installation

    然后登录 MySQL 命令行,创建一个新用户和对应的数据库:

    CREATE USER 'your_username'@'localhost' IDENTIFIED BY 'your_password';
    CREATE DATABASE your_database_name;
    GRANT ALL PRIVILEGES ON your_database_name.* TO 'your_username'@'localhost';
    FLUSH PRIVILEGES;
    EXIT;

    记得把用户名、密码、数据库名换成你自己要用的。这一步很关键,权限给错了后面连不上,排查起来也麻烦。

  4. 安装 Node.js 数据库客户端库——在你的项目目录下,用 npm 安装对应的驱动。比如 MySQL 推荐用 mysql2

    npm install mysql2

    PostgreSQL 则用 pg

    npm install pg

    不同数据库的客户端库名字和用法略有差异,但大方向一致,装对了就能用。

  5. 在 Node.js 应用里配置连接——写代码的时候,连接信息最好通过环境变量或者配置文件来管理,别硬编码在源码里,这是安全底线。下面是一个用 mysql2 连接 MySQL 的示例:

    const mysql = require('mysql2');
    const connection = mysql.createConnection({
      host: 'localhost',
      user: 'your_username',
      password: 'your_password',
      database: 'your_database_name'
    });
    
    connection.connect(error => {
      if (error) throw error;
      console.log('Successfully connected to the database.');
    });
    
    // ... 进行数据库操作 ...
    
    connection.end();

    注意把 createConnection 里的参数改成你实际设置的值。如果连接失败,先检查数据库服务是否在运行,再检查用户名密码和权限。

  6. 跑起来验证——确保数据库服务已经启动(比如 sudo systemctl status mysql 看一下),然后运行你的 Node.js 程序。如果一切正常,控制台会输出连接成功的消息。如果报错,不要慌,根据错误信息一步步排查,十有八九是配置参数写错了或者服务没启动。

需要补充一句:以上只是一个基本流程,不同数据库、不同 Linux 发行版、不同 Node.js 版本之间可能会有细微差别。另外,生产环境中强烈建议使用环境变量(比如 .env 文件配合 dotenv 包)来管理敏感信息,别把密码直接写在代码里。安全这件事,再怎么强调都不为过。

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

热门关注