Laravel无法连接到启用SSL的MariaDB

bqf10yzr  于 2022-11-08  发布在  其他
关注(0)|答案(1)|浏览(154)

我正在尝试使用SSL将InvoiceNinja连接到我的MariaDB数据库。
客户端服务器(InvoiceNinja)可以通过命令行连接到数据库服务器,而不会出现任何问题:

mysql -u Username -h Hostname -p

当我通过/setup使用InvoiceNinja GUI时,我能够测试数据库连接,但是在提交页面之后,我就进入了一个安装循环。
将调试设置为true,输出如下内容:

[2022-07-23 22:34:41] production.INFO: account table not found  
[2022-07-23 22:35:25] production.INFO: The command "mysql --user="${:LARAVEL_LOAD_USER}" --password="${:LARAVEL_LOAD_PASSWORD}" --host="${:LARAVEL_LOAD_HOST}" --port="${:LARAVEL_LOAD_PORT}" --database="${:LARAVEL_LOAD_DATABASE}" < "${:LARAVEL_LOAD_PATH}"" failed.
Exit Code: 1(General error)
Working directory: /var/www/ninja/public
Output:
================
Error Output:
================
ERROR 2026 (HY000): SSL connection error: Permission denied

我编辑了config/database.php文件,在'mysql'下包含以下内容:

'options'        => [
            PDO::MYSQL_ATTR_SSL_VERIFY_SERVER_CERT => true,
            PDO::MYSQL_ATTR_SSL_KEY => '/var/www/ninja/db-certs/ninja.key',
            PDO::MYSQL_ATTR_SSL_CERT => '/var/www/ninja/db-certs/ninja.pem',
            PDO::MYSQL_ATTR_SSL_CA => '/var/www/ninja/db-certs/ca.pem',
        ],

我也跑了:

php artisan optimize
9nvpjoqh

9nvpjoqh1#

删除整个ninja目录并下载一个新文件后,一切正常。可能是之前的尝试开始加载数据,无法覆盖。我不能100%确定,但我配置的一切都是正确的。
希望这能帮助到一些人。

相关问题