首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP警告: mysqli::__construct():(HY000/2002):没有这样的文件或目录(Debian /Linux9)

PHP警告: mysqli::__construct():(HY000/2002):没有这样的文件或目录(Debian /Linux9)
EN

Stack Overflow用户
提问于 2018-12-06 22:34:32
回答 1查看 1.6K关注 0票数 0

我在Debian 9,Apache2.4,PHP7.2上运行我的网站。MySQL数据库是远程的。该网站运行顺利使用mysqli模块。但是,当我试图通过命令行运行PHP文件时,它会失败并显示错误:

PHP警告: mysqli::__construct():(HY000/2002):在.数据库连接失败:没有这样的文件或目录(2002年)

我一直试图运行的PHP文件在开头有一行:

require_once(__DIR__ . '/../private/initialize.php');

initialize.php文件有以下一行:$database = db_connect();,它调用以下函数:

代码语言:javascript
复制
function db_connect() {
    $connection = new mysqli(DB_SERVER, DB_USER, DB_PASS, DB_NAME);
    confirm_db_connect($connection);
    return $connection;
}

function confirm_db_connect($connection) {
    if ($connection->connect_errno) {
        $msg = 'Database connection failed: ';
        $msg .= $connection->connect_error;
        $msg .= ' (' . $connection->connect_errno . ')';
        exit($msg);
    }
}

出于安全原因,数据库凭据被设置为常量,并由以下代码从环境变量中获取:

代码语言:javascript
复制
define('DB_SERVER', getenv('DB_SERVER'));
define('DB_USER', getenv('DB_USER'));
define('DB_PASS', getenv('DB_PASS'));
define('DB_NAME', getenv('DB_NAME'));

通过/etc/apache2/envvars命令在export文件中定义环境变量:

代码语言:javascript
复制
export DB_SERVER='*here db credential*'
export DB_USER='*here db credential*'
export DB_PASS='*here db credential*'
export DB_NAME='*here db credential*'

我已经检查了环境变量是否被脚本所接受,而它们没有。

代码语言:javascript
复制
echo getenv('DB_SERVER');
echo getenv('DB_USER');
echo getenv('DB_PASS');
echo getenv('DB_NAME');

似乎变量设置不当。

有人能帮上忙吗?我希望从命令行运行带有mysqli扩展名的PHP文件,以便使用CRON。

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-10 20:32:59

我解决了这个问题!

我将变量放在cron作业之前的crontab -e文件中,但没有export命令。

代码语言:javascript
复制
DB_SERVER='*here db credential*'
DB_USER='*here db credential*'
DB_PASS='*here db credential*'
DB_NAME='*here db credential*'

它使所有cron作业都可以访问变量。

所以当我使用cron工作时,它工作得很好!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53660726

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档