Вы находитесь в режиме поиска по сайту.
1
июня
2020
9:39

Как обновить PhpMyAdmin

1 июня 2020 9:39

Инструмент разработчика phpmyadmin используется для создания и модификации баз данных MySQL. Через несколько лет использования данной программы, в связи с переходом на более новые MySQL 5.7.30 и PHP 7.2 потребовалось обновить phpmyadmin до самой последней версии...

Обновление версии phpMyAdmin

  1. Прежде всего, определил, где установлен phpmyadmin, для чего выполнил поиск в каталоге с конфигурацией веб-сервера Apache2:

cd /etc/apache2

grep -R "phpmyadmin" .

Судя по Alias /phpmyadmin /usr/share/phpmyadmin и <Directory /usr/share/phpmyadmin>
программа установлена в папке /usr/share.

  1. Перешел в папку /usr/share и попытался найти документацию

cd /usr/share/phpmyadmin

cd doc
cd html
ls

  1. Теперь открыл файл в браузере Firefox

file:///usr/share/phpmyadmin/doc/html/index.html

  1. В разделе "Upgrading from an older version" есть подробное описание обновления.

  2. В начале документа предупреждение говорит о том, что нельзя перезапивывать (затирать) старую версию новой. Нужно взять config.inc.php из старой версии и поверх распакованной новой. Старые файлы осталять нельзя по соображениям безопасности..

Warning
Never extract the new version over an existing installation of phpMyAdmin, always first remove the old files keeping just the configuration.

This way you will not leave old no longer working code in the directory, which can have severe security implications or can cause various breakages.

Simply copy config.inc.php from your previous installation into the newly unpacked one.

  1. Перехожу непосредственно к замене версии.

su -
cd /usr/share/
mv phpmyadmin phpmyadmin.old
mkdir phpmyadmin
cd phpmyadmin
wget https://files.phpmyadmin.net/phpMyAdmin/5.0.2/phpMyAdmin-5.0.2-all-languages.zip
(путь к файлу ZIP подсмотрел на https://www.phpmyadmin.net/ по ссылке "Download")

unzip phpMyAdmin-5.0.2-all-languages.zip
ls

Решаю небольшую проблему: файлы попали в папку "phpMyAdmin-5.0.2-all-languages" вместо текущего каталога

cp -rp phpMyAdmin-5.0.2-all-languages/* .

rm phpMyAdmin-5.0.2-all-languages -R

  1. Запускаю в браузере http://localhost/phpmyadmin

  2. Появляется приглашение - ввожу имя пользователя root и пароль. Всё работает, версия актуальная!

phpMyAdmin Информация о версии: 5.0.2 (актуально)

Решение проблемы

В конце страницы два предупреждения

  • В конфигурационном файле необходимо задать парольную фразу (blowfish_secret).
  • $Cfg['TempDir'] (/usr/share/phpmyadmin/tmp/) недоступен. Из-за этого phpMyAdmin не может кешировать шаблоны и будет медленным

Решаем первую проблему.

  1. Проверяем, что файл существует и не пустой

cat /usr/share/phpmyadmin/config.inc.php

cat: /usr/share/phpmyadmin/config.inc.php: Нет такого файла или каталога

  1. Нужно создать конфигурационный файл. За образец возьмем идущей в комплекте phpmyadmin файл "config.sample.inc.php".

Выполняю команду:
su -
cd /usr/share/phpmyadmin/
cp config.sample.inc.php config.inc.php

  1. В конфигуриционном файле config.inc.php нужно исправить секретную фразу для cookie.
    Открываем на редактирование файл config.inc.php :

nano /usr/share/phpmyadmin/config.inc.php

Исправляю секретный ключ - длина его должна быть 32 символов или больше

$cfg['blowfish_secret'] = 'SECRET-12345-09876_my_phrase_777'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

Ctrl+O, Ctrl+X

Первая ошибка ушла. Избавляюсь от второго предупреждения.

  1. Создал временный каталог для шаблонов phpmyadmin

cd /usr/share/phpmyadmin
mkdir tmp
chown www-data:www-data tmp

  1. Вновь открываю в браузере http://localhost/phpmyadmin
    • ввожу имя пользователя и пароль.

Обновление phpmyadmin проведено успешно. Ошибок или предупреждений больше нет.

Комментарии: 0


Похожие публикации