Вручную обновить phpMyAdmin в Ubuntu
На момент написания этой статьи версия phpMyAdmin доступна в диспетчере пакетов Ubuntu (4.5.4) не полностью поддерживает php7.2, что приводит к раздражающему предупреждению count (). Решением является обновление до последней версии phpMyAdmin, которая на момент написания - 4.7.9.
Пакет Ubuntu уже позади. Есть phpMyAdmin PPA, но он тоже отстает:
«Примечание: этот репозиторий в настоящее время немного отстает, так как я изо всех сил пытаюсь найти время, чтобы обновить его до версии 4.7».
К счастью, мы можем вручную обновить старую версию.
Основные шаги:
- Сделайте резервную копию текущей установки
- Загрузите и распакуйте последнюю версию phpMyAdmin
- Измените файл vendor_config.php в соответствующий каталог для Ubuntu
- Добавьте более длинную случайную строку, чтобы разрешить сообщения об ошибках blowfish и разрешить правильную аутентификацию файлов cookie.
Эти команды терминала должны выполнить свою работу (используйте sudo, если применимо):
mv /usr/share/phpmyadmin /usr/share/phpmyadmin_old
mkdir /usr/share/phpmyadmin
mkdir /var/downloads
cd /var/downloads
wget https://files.phpmyadmin.net/phpMyAdmin/4.7.9/phpMyAdmin-4.7.9-all-languages.tar.gz
tar -xf phpMyAdmin-4.7.9-all-languages.tar.gz -C /usr/share/phpmyadmin --strip-components=1
(Необязательно) Замените строку wget последней версией или предпочтительным форматом по вашему выбору. Посетите https://www.phpmyadmin.net/downloads/.
Решите сообщение об ошибке blowfish
На этом этапе вы, вероятно, получите ошибку blowfish при использовании phpMyAdmin. Чтобы решить эту проблему, вам следует обновить определенный файл конфигурации:
- Открыть
vendor_config.php
в /usr/share/phpmyadmin/libraries/vendor_config.php
- В строке 38 или около нее замените
define('CONFIG_DIR', '');
на define('CONFIG_DIR', '/etc/phpmyadmin/');
и сохраните файл.
Когда вы закончите, строки 33–38 из vendor_config.php
должны выглядеть примерно так:
/**
* Directory where configuration files are stored.
* It is not used directly in code, just a convenient
* define used further in this file.
*/
define('CONFIG_DIR', '/etc/phpmyadmin/');
На этом этапе phpMyAdmin может работать без ошибок, но вам может потребоваться добавить дополнительную длину в строку конфигурации blowfish_secret.
- Откройте файл
/var/lib/phpmyadmin/blowfish_secret.inc.php
.
Тебе следует увидеть:
<?php
$cfg['blowfish_secret'] = 'Something Short';
- Добавьте дополнительную случайность к строке
$cfg['blowfish_secret']
, по крайней мере, 40 символов и даже больше может быть лучше (я использую строку длиной до 100 символов).
Например (не используйте это, просто пример):
$cfg['blowfish_secret'] = 'A much longer random string 7NfSjYezwmwGCfGDuDO7uWn4ESw2sCFCym1RatPjGCfGCym1RatPjGCfG';
- Сохраните файл.
На этом этапе обновите phpMyAdmin (в своем браузере) и войдите снова. Теперь все должно работать правильно.
При желании вы можете удалить резервную копию старой версии phpMyAdmin с помощью:
rm -rfv /usr/share/phpmyadmin_old
Дополнительная документация
Для справки ниже приведены выдержки из официального phpMyAdmin документация по ручному обновлению до последней версии (не специфичной для Ubuntu):
Предупреждение
Никогда не извлекайте новую версию поверх существующей установки phpMyAdmin, всегда сначала удаляйте старые файлы, сохраняя только конфигурацию.
Таким образом, вы не оставите в каталоге старый, больше не работающий код, который может иметь серьезные последствия для безопасности или может вызвать различные поломки.
И:
Полное обновление можно выполнить в несколько простых шагов:
Загрузите последнюю версию phpMyAdmin со страницы https://www.phpmyadmin.net/downloads/.
Переименуйте существующую папку phpMyAdmin (например, в phpmyadmin-old).
Распакуйте только что загруженный phpMyAdmin в желаемое место (например, phpmyadmin).
Скопируйте config.inc.php` из старого места (phpmyadmin-old) в новое (phpmyadmin).
Убедитесь, что все работает правильно.
Удалите резервную копию предыдущей версии (phpmyadmin-old).
person
Justin
schedule
12.03.2018