SQLSTATE [HY000] [2002] В доступе отказано в драйвере Laravel PDO (учетные данные работают через кустарного перехода) - PullRequest
0 голосов
/ 07 февраля 2019

У меня много проблем с драйвером PDO в этой новой установке

Это ошибка, которую я получаю при попытке выполнить любую операцию дБ, инициированную laravel.

ext Illuminate\Database\QueryException: SQLSTATE[HY000] [2002] Permission denied (SQL: select * from `users` where `email` = ethan@gmail.com limit 1) in /var/www/html/mypath/vendor/laravel/framework/src/Illuminate/Database/Connection.php:647

Что действительно странно, так это то, что PDO включен в php, и мы используем те же учетные данные, что и php artisan migrate, используемые для создания таблиц (поэтому я знаю, что учетные данные, сокет mysql все работает)

Этоошибка PDO из стека

at PDO->__construct('mysql:unix_socket=/mnt/volume_sfo2_01/mysql_data/mysqld.sock;dbname=testdb1', 'dbuser1', 'mypassword', array(0, 2, 0, false, false))
in Connector.php line 68

Обратите внимание, что я переместил каталог данных mysql и, следовательно, изменил сокет.Этот конфиг работает во время миграции, так что мне не хватает, чтобы заставить его работать с драйвером PDO laravel?

На сервере Ubuntu 16 также.Nginx + php7.1 apparmor был отключен дополнительно только для этого тестирования.Любые идеи будут с благодарностью.

1 Ответ

0 голосов
/ 30 мая 2019

У меня была похожая проблема в Laravel / Lumen 5.5 / CentOS7 / php71 / mariaDB

с использованием стратегии 'setenforce to test', описанной здесь в решении, Проблема с разрешениями в Laravel для CentOS Возможно, вы захотите проверить влияние SElinux.

Я подключался через порт 3306 и смог разобраться с этим отчетом о проблеме (https://bugzilla.redhat.com/show_bug.cgi?id=1245295), который привел меня к

sudo setsebool httpd_can_network_connect_db 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...