pdo_mysql видалено після оновлення до 16.04


9

Я нещодавно оновив до 16.04 LTS. І оновив мій php до 7.0. Тепер це деякі, як видалено pdo_mysql. Мені потрібно це розширення, щоб розробити веб-сайт magento. У phpinfo я знаходжу

підтримка pdo: увімкнено драйвери pdo: немає значень

Я багато гугла, і знайшла такі рішення:

  1. Встановіть php-mysql (Це вже була найновіша версія)
  2. Встановіть php7.0-mysql (Це вже була найновіша версія)
  3. Змінено наступним чином у php.ini (/etc/php/7.0/apache2/php.ini): включені розширення pdo.so, pdo_mysql.so, mysqli.so. а також спробував те ж саме, вказавши їх точні контури (перезапустив апаш після внесення змін)
  4. Навіть спробував встановити pdo_mysql за допомогою pecl.

Жоден із перерахованих вище методів не був корисним, я вже 2 дні ламаю голову над цим. Допомога була б дуже вдячна.

Вихід php -r 'phpinfo ();' | grep -i pdo:

/etc/php/7.0/cli/conf.d/10-pdo.ini,
PDO
PDO support => enabled
PDO drivers =>  

вихід / usr / sbin / phpquery -v 7.0 -M

mysqlnd
sysvmsg
sockets
gd
mcrypt
phar
xsl
xmlreader
shmop
sysvsem
mysqli
xml
tokenizer
iconv
pdo
pdo_mysql
gettext
simplexml
xmlwriter
opcache
posix
sysvshm
ftp
dom
json
readline
calendar
fileinfo
ctype
wddx
exif

вихід dpkg -l php * mysql

Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version      Architecture Description
+++-==============-============-============-=================================
ii  php-mysql      1:7.0+35ubun all          MySQL module for PHP [default]
un  php-pdo-mysql  <none>       <none>       (no description available)
rc  php5-mysql     5.6.11+dfsg- amd64        MySQL module for php5
ii  php7.0-mysql   7.0.4-7ubunt amd64        MySQL module for PHP
un  php7.0-pdo-mys <none>       <none>       (no description available)

Будь ласка, опублікуйте вихід php -r 'phpinfo();' | grep -i pdo. І ви не повинні вмикати розширення вручну, а використовувати phpenmodнатомість. А точніше, розмістіть повний вихід phpinfo () десь із того самого віртуального сервера, де ви запускаєте magento. Я підозрюю, що ви можете щось робити зі своїм типовим php.ini ...
oerdnj

Вибачте за мою пізню відповідь. Ось вихід: /etc/php/7.0/cli/conf.d/10-pdo.ini, підтримка PDO PDO => включені драйвери PDO =>
Rakshith S Kumar

Додано також вихід до початкового питання.
Rakshith S Kumar

І вихід: /usr/sbin/phpquery -v 7.0 -Mі dpkg -l php*mysql?
oerdnj

Додано обидва виходи.
Ракшит С Кумар

Відповіді:


8

На цьому етапі я б просто рекомендував "вимкнути і знову", виконавши:

sudo apt-get purge php-common php5-common

слідом за ним

sudo rm -r /etc/php

А потім перевстановлення модулів PHP 7.0 та mysql:

sudo apt-get install libapache2-mod-php php-mysql

Ви також можете спробувати просто очистити та перевстановити модулі mysql, спочатку видаливши пакет:

sudo apt-get purge php7.0-mysql

І встановлення їх знову:

sudo apt-get install php-mysql

В обох випадках важливо використовувати apt-get purgeзамість apt-get removeвидалення будь-яких існуючих файлів конфігурації та станів пакета.

Найменш руйнівним способом було б намагання повторно включити модулі mysql за допомогою phpenmodкоманди:

sudo phpenmod mysqlnd pdo_mysql

Важко дати вам правильну пораду, якщо ми не знаємо, який хаос ви створили у вашій системі.


Я дотримувався кроків очищення, видалення каталогів, перевстановлення, а також очистив php7.0-mysql та встановив php-mysql. Тепер апаш сам перестав працювати, він говорить, що не в змозі обробити запити. :(
Ракшит С Кумар

1
вибачте моє погано, мені довелося встановити php7.0-xml, і все було добре. Дуже дякую.
Rakshith S Kumar
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.