如何升级 PHPmyAdmin [重温]

Dwi*_*nks 40 upgrade mysql php phpmyadmin

以前问过这个问题,如何升级 PHPmyAdmin

给出的答案是

sudo apt-get update
sudo apt-get install phpmyadmin
Run Code Online (Sandbox Code Playgroud)

或者

sudo apt-get update
sudo apt-get upgrade
Run Code Online (Sandbox Code Playgroud)

phpmyadminapt-get中包含的版本4.5.42016 年1 月 28 日发布

在回答这个问题时,一个答案是使用提供以下命令的phpMyAdmin 存档

sudo add-apt-repository ppa:phpmyadmin/ppa
sudo apt-get update
Run Code Online (Sandbox Code Playgroud)

在我的情况下,更新了很多东西,但是,不是特别的phpmyadmin,我需要额外的命令

sudo apt-get install phpmyadmin
Run Code Online (Sandbox Code Playgroud)

这确实成功地超越了20194.9.0.1发布的版本。

在撰写本文时,似乎确实需要使用来自docs.phpmyadmin.net的模糊说明手动下载和复制。

是否有phpmyadmin比 PPA 更新的存储库,还是需要手动安装?

小智 59

@Photo Larry几乎一针见血!我将根据他的答案给出一个易于理解和遵循的答案。

  • 第一步是从Ubuntu官方回购安装PMA(phpMyAdmin的)apt-get install phpmyadmin
  • 接下来, cd 进入 usr/share 目录:cd /usr/share.
  • 三、删除phpmyadmin目录:rm -rf phpmyadmin.
  • 现在我们需要将最新的 PMA 版本下载到我们的系统上(请注意,您需要 wget: apt-get install wget):wget -P /usr/share/ "https://files.phpmyadmin.net/phpMyAdmin/4.8.2/phpMyAdmin-4.8.2-english.zip" 让我解释一下这个命令的参数,-P 定义了路径,“link.zip”当前是 (7/17/18 ) 最新版本的 PMA。您可以在此处找到这些链接。
  • 对于下一步,您需要解压缩 ( apt-get install unzip): unzip phpMyAdmin-4.8.2-english.zip。我们刚刚解压缩 PMA,现在我们将把它移到它的最终家。
  • 让我们使用cp(复制)命令来移动我们的文件!请注意,我们必须添加-r参数,因为这是一个文件夹。cp -r phpMyAdmin-4.8.2-english phpmyadmin.
  • 现在是时候清理了:rm -rf phpMyAdmin-4.8.2-english.

继续阅读!

登录 PMA 后,您现在可能会注意到两个错误。

the configuration file now needs a secret passphrase (blowfish_secret). phpmyadmin
The $cfg['TempDir'] (./tmp/) is not accessible. phpMyAdmin is not able to cache templates and will be slow because of this.
Run Code Online (Sandbox Code Playgroud)

但是,这些问题相对容易解决。对于第一个问题,您所要做的就是获取您选择的编辑器并进行编辑,/usr/share/phpmyadmin/config.inc.php但是有一个问题,我们将其删除了!没关系,你所要做的就是:cd /usr/share/phpmyadmin& cp config.sample.inc.php config.inc.php

phpMyAdmin Blowfish 秘密变量条目示例:

/*
 * This is needed for cookie based authentication to encrypt password in
 * cookie
 */
$cfg['blowfish_secret'] = '{^QP+-(3mlHy+Gd~FE3mN{gIATs^1lX+T=KVYv{ubK*U0V'; 
/* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
Run Code Online (Sandbox Code Playgroud)

现在保存并关闭文件。

  • 现在我们将为 PMA 创建一个 tmp 目录:mkdir tmp& chown -R www-data:www-data /usr/share/phpmyadmin/tmp。最后一个命令允许 Apache Web 服务器拥有 tmp 目录并编辑它的内容。

编辑 2018 年 12 月 12 日

你不希望有人偷你的饼干,现在是吗?

我注意到https://www.question-defense.com/tools/phpmyadmin-blowfish-secret-generator在 PMA 上的旧版本上会导致错误。然而,主要的原因,我鼓励你使用这样的网站是因为你不知道他们是否使用弱PRNG(伪随机数生成器)(例如rand()mt_rand()lcg_value())或将“洗牌”的功能之一(例如str_shuffle()shuffle()array_rand())。因此,我为此目的制作了自己的工具。它生成一个加密安全的 32 个字符的字符串,您可以使用而无需担心安全性或错误!我用来生成随机性的函数的 PHP 手册页http://php.net/manual/en/function.random-int.php。我用这个替换了旧链接:https://www.motorsportdiesel.com/tools/blowfish-salt/pma/

编辑 2020 年 9 月 11 日

我已经更改了河豚生成器链接,因为旧的不再可用。

  • 似乎无法访问盐生成器:( (2认同)
  • 几乎正确,除了您将 ZIP 文件留在目录中 (2认同)

小智 12

由于 php7.2 的问题并收到错误,我不得不这样做count(): Parameter must be an array or an object that implements Countable

apt 的版本是 4.5.4,ppa 没有针对 php7.2 的修复。我的解决方案是从https://www.phpmyadmin.net/下载最新版本 并将文件复制到/usr/share/phpmyadmin.


Džu*_*ris 8

目前的最佳答案非常好,但有点太复杂了。这里我将程序重写为更简洁的程序。它假设您在像家一样的安全目录中工作。

  1. 备份现有配置:
cp /usr/share/phpmyadmin/config.inc.php .
Run Code Online (Sandbox Code Playgroud)
  1. 下载最新的phpMyAdmin(或其他版本):
wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-english.tar.xz
Run Code Online (Sandbox Code Playgroud)
  1. 删除当前安装:
find /usr/share/phpmyadmin -mindepth 1 -delete
Run Code Online (Sandbox Code Playgroud)
  1. 解压下载的存档而不是旧安装:
tar xf phpMyAdmin-latest-english.tar.xz --strip 1 -C /usr/share/phpmyadmin
Run Code Online (Sandbox Code Playgroud)
  1. 替换配置:
cp config.inc.php /usr/share/phpmyadmin
Run Code Online (Sandbox Code Playgroud)
  1. [可选] 清理您的工作目录:
rm config.inc.php phpMyAdmin-latest-english.tar.xz
Run Code Online (Sandbox Code Playgroud)

编辑 2020:意识到我们可以轻松保存配置。


Rin*_*ind 2

如果您确实需要最新版本,我会使用 phpMyAdmin 存档。请注意,存在依赖性(您也需要更新的 php):

购电协议说明

最新的 phpMyAdmin 软件包 - https://www.phpmyadmin.net/。基于 Debian 中可用的软件包。

有一些显着的变化:

  • 我认为他问的是如何更新到最新版本,而不是在哪里可以下载安装。 (2认同)

小智 2

您只需手动安装最新版本的phpmyadmin.

前往https://www.phpmyadmin.net/downloads并下载最新版本,但请确保您拥有网站上列出的兼容 PHP 和 MySQL 版本。

将其解压到您的服务器公用文件夹并编辑该config.inc.php文件。确保您的主机auth_typecookie什么host。此设置将使您在登录时输入用户名和密码。

/*Authentication type*/
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['host'] = 'localhost';
Run Code Online (Sandbox Code Playgroud)