3

我想将 Express App Node.JS 上的 1and1 mySQL 数据库与 mysql npm 包连接,但是当我尝试连接控制台时,请发回这个:

Error: getaddrinfo ENOTFOUND <DB_HOST_NAME>

我查看了 1and1 仪表板,这是很好的日志,我尝试输入 'tcp:\\' 和 ':3306' 但没有结果,节点找不到数据库。此外,第一个网站版本是用 PHP 编写的,并且日志正在运行并且仍在使用 PHP,因此日志是正确的。我问了 1and1 服务,但没有答案。

我寻找有关此错误的调​​查,但任何人都能够找到答案。

几个片段:

// Import Modules
const EXPRESS = require('express');
const CORS = require('cors');
const MYSQL = require('mysql');

// Import Database Configuration
const DB_CONFIG = require('./config/DbConfiguration');

// Create Express App Instance
const APP = EXPRESS()
APP.use(CORS())

// Server Port Const
const SERVER_PORT = 4000

// Create MySQL Connection Instance
const CONNECTION = MYSQL.createConnection(DB_CONFIG.dbConfiguration);
CONNECTION.connect(function(err) {

    // Print Error 
    if(err) {console.error(err)};

});

DbConfiguration.js

require('dotenv/config')

module.exports = {

    dbConfiguration: {
        host: process.env.DB_HOST,
        user: process.env.DB_USER,
        password: process.env.DB_PASSWORD,
        database: process.env.DB_NAME
    }
}

.ENV 文件

DB_HOST=xxxxx.1and1.fr
DB_USER=xxxxxxx  
DB_PASSWORD=xxxxxx
DB_NAME=xxxxxxx  
4

2 回答 2

1

最近我自己也在研究这个问题。由于 1&1 IONOS 管理其 mySQL 服务器安全性的方式,您只能使用您的帐户(工作区)连接到它们。更多信息可通过他们的网站获得。不幸的是,您要么需要将代码部署到工作区,要么使用替代的本地 phpMyAdmin 安装进行开发。不理想我知道!

于 2021-03-11T22:11:54.650 回答
0

更改连接字符串的配置,例如在本地计算机上运行时尝试

`host:'localhost' or host:'127.0.0.1`

用字符串包裹它。

于 2020-09-05T17:50:30.013 回答