【问题标题】:Connecting mysql with process variable in Node JS在Node JS中将mysql与进程变量连接起来
【发布时间】:2017-10-17 14:00:46
【问题描述】:

我是 Node JS 的新手,正在尝试将它与 MySQL 连接起来。 在学习时,我遇到了一个我不明白的 sn-p。如下:

const mysqlServer = `mysql://${process.env.DB_USERNAME}:${process.env.DB_PASSWORD}@${process.env.DB_SERVER}`;

谁能说出这里面发生了什么? 当我打印 mysqlServer 时,它给我的输出是:

mysql://undefined:undefined@undefined

请帮忙..!!

【问题讨论】:

    标签: javascript mysql node.js express


    【解决方案1】:

    进程对象是一个全局对象,它提供有关当前 Node.js 进程的信息并对其进行控制。作为一个全局变量,它始终可供 Node.js 应用程序使用,而无需使用 require()。

    ——source

    process.env 属性返回一个包含用户环境的对象。见environ(7)

    ——source

    所以代码正在读取几个环境变量并将它们插入到字符串中。

    由于您是未定义的,因此它们显然不是已定义的环境变量。

    毫不奇怪,您如何定义环境变量取决于您使用的环境。

    例如,在bash 你可以:

    export DB_USERNAME=example 
    export DB_PASSWORD=example
    export DB_SERVER=localhost
    node myscript.js
    

    (可以单行执行此操作,但您的密码可能会出现在正在运行的进程列表中,这不利于安全性)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-13
      • 1970-01-01
      • 1970-01-01
      • 2016-06-26
      相关资源
      最近更新 更多