Laravel Развертывание: PHP Ошибка Невозможно загрузить Dynami c Библиотека 'pdo_pg sql' - PullRequest
0 голосов
/ 19 февраля 2020

Я хочу развернуть свое приложение laravel на сервере Ubuntu 18 LTS. Итак, я установил nginx postgres php. Но когда я пытаюсь сделать php artisan migrate у меня есть эта возвращенная ошибка:

Это ошибка (изображение из-за линии команды) .

Итак, я должен проверить Другое дело: сначала я могу получить доступ к своей базе данных в localhost с пользователем postgres. Приложение laravel работает, пока база данных не требуется.

В php .ini у меня есть комментарий extention=pdo-pgsql; и extention=pgsql

У меня установлена ​​php postgres sql расширение с помощью этой команды sudo apt-get install php7.2-pgsql

И это мои настройки .env для базы данных в laravel:

DB_CONNECTION=pgsql
DB_HOST=127.0.0.1
DB_PORT=5433
DB_DATABASE=THERY //I have already create the database
DB_USERNAME=postgres
DB_PASSWORD=postgres

Ответы [ 2 ]

1 голос
/ 20 февраля 2020

Так что для моей проблемы у них есть два решения плюс бонус

  1. Если проблема возникла из php, и вы не хотите переустанавливать все, вы можете следовать этой топи c здесь спросите Ubuntu и используйте эту команду:
sudo apt-get --purge remove php-common

sudo apt-get install php-common php-pgsql php-cli
Если вы хотите правильно установить php для laravel с postgresql, вы можете использовать следующие команды:
#php install comande
sudo apt-get insatall php-fpm openssl php-common php-curl php-json php-mbstring php-xml php-zip php-pgsql

#make sure to uncomment extension=pdo_pgsql
sudo nano /etc/php/7.2/fpm/php.ini 

#restart fpm service to apply settings
sudo systemctl restar php7.2-fpm

Наконец, если у вас есть [Ошибка SQLSTATE 08006], проверьте, порт в файле .env в вашем приложении laravel соответствует прослушиваемому порту на вашем сервере (у меня используемый порт 5432, а не 5433)

0 голосов
/ 19 февраля 2020

Могут быть разные проблемы для вашей проблемы. Может произойти любое из нижеперечисленного:

  1. php PG sql не установлено. установите его
apt-get install php-pgsql
Библиотека PG sql отсутствует в composer. установить его
composer require asmiarowski/laravel-postgres // There are multiple librariies available in packagist
Ваш конфиг в .env не кэшируется. вы можете кэшировать их, выполнив команду
php artisan config:cache
Ваш сервер PG Sql недоступен. Вы можете предпринять дальнейшие действия для их решения.
...