web-dev-qa-db-ja.com

PHPmyAdminのアップグレード方法[再訪]

この質問は以前に尋ねられました PHPmyAdminのアップグレード方法

与えられた答えは

Sudo apt-get update
Sudo apt-get install phpmyadmin

または

Sudo apt-get update
Sudo apt-get upgrade

Apt-getに含まれるphpmyadminのバージョンは4.5.4です。これは リリース済み 2016年1月28日です。

この質問への回答では、次のコマンドを提供する パーソナルアーカイブ を使用することが1つの答えでした。

Sudo add-apt-repository ppa:nijel/phpmyadmin
Sudo apt-get update

私の場合、多くのことを更新しましたが、具体的にphpmyadminではなく、追加のコマンドが必要でした

Sudo apt-get update phpmyadmin

これはバージョン4.5.4の制限を正常に通過しましたが、 リリース済み 2017年1月23日であったバージョン4.6.6にのみ更新されました。

この記事の執筆時点では、 docs.phpmyadmin.net からのあいまいな指示を使用して手動でダウンロードしてコピーする必要があるようです。

PPAよりもphpmyadminの最新のリポジトリがありますか、それとも手動インストールが必要ですか?

26
Dwight Wilbanks

@ Photo Larry 頭に釘を打ちます!私は彼に基づいて、理解して従うのが簡単になる答えをするつもりです。

  • 最初のステップは、Ubuntuの公式リポジトリapt-get install phpmyadminからPMA(phpMyAdmin)をインストールすることです。
  • 次に、usr/shareディレクトリにcdします:cd /usr/share
  • 3番目に、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はパスと「リンク」を定義します。 Zip」は現在(7/17/18)PMAの最新バージョンです。これらのリンクを見つけることができます HERE
  • この次のステップでは、unzip(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にログインすると、2つのエラーに気付く場合があります。

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.

ただし、これらの問題は比較的簡単に修正できます。最初の問題については、エディターを選択して/usr/share/phpmyadmin/config.inc.phpを編集するだけですが、問題があるため、削除しました!大丈夫、あなたがしなければならないことは、cd /usr/share/phpmyadmincp 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! */

ファイルを保存して閉じます。

  • PMAのtmpディレクトリを作成します:mkdir tmpchown -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の古いバージョンでエラーを引き起こすことに気づきました。ただし、このようなWebサイトを使用する主な理由discourageは、弱いPRNG(擬似乱数ジェネレーター(Rand()mt_Rand()lcg_value()など)または「シャッフル」関数のいずれか(str_shuffle()shuffle()array_Rand()など)。そのため、この目的のために独自のツールを作成しました。セキュリティやエラーを気にせずに使用できる暗号的に安全な32文字の文字列を生成します! PHPランダム性の生成に使用する関数のmanページ http://php.net/manual/en/function.random-int.php 。古いリンクを https://www.motorsportdiesel.com/tools/blowfish-salt/pma/ に置き換えました。

36
CRIMSON 501

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にコピーすることでした。

10
Jason Houle

上記のように、ファイルを手動で更新する必要がありますが、これらの場所(/ usr/share)を見つけるために1時間検索し、それが間違っている/ var/www/htmlに配置されることを確認し続けました。リポジトリを追加した後にapt-get install phpmyadminを使用してソフトウェアをインストールした場合、最新のものであると主張する場合、少なくともphp7.2 libsが必要です。次に、/ usr/shareに移動してgitのクローンを作成し、新しいバージョン(4.8)を/ usr/share/phpmyadminにインストールする必要があります。git clone https://github.com/phpmyadmin/phpmyadmin.git (最初にrm -rf phpmyadminを実行しました)古いコードが残っていないことを確認するためです。次に、Webインターフェースにアクセスすると、最新バージョンが使用されていることがわかります。それからphpmyadminにcdして実行してください:composer update --no-devこれは必要な追加ライブラリを取得します。これにより、4.9.0-devがインストールされます。これは素晴らしい動作をし、Ubuntu 16.04.4。を実行しています。これが誰かの時間節約に役立つことを願って

3
Photo Larry

phpmyadminの個人アーカイブを使用します 最新バージョンが本当に必要な場合。ただし、依存関係があることに注意してください(新しいphpも必要です)。

PPAの説明

最新のphpMyAdminパッケージ- https://www.phpmyadmin.net/ 。 Debianで利用可能なパッケージに基づいています。

注目すべき変更点がいくつかあります。

2
Rinzwind

phpmyadminの最新バージョンを手動で簡単にインストールできます。

https://www.phpmyadmin.net/downloads に進み、最新バージョンをダウンロードしますが、Webサイトにリストされている互換性のあるPHPおよびMySQLバージョンを使用していることを確認してください。

サーバーのパブリックフォルダーに抽出し、config.inc.phpファイルを編集します。 auth_typecookieであり、Hostがホストの名前であることを確認してください。この設定により、ログイン時にユーザー名とパスワードを入力できます。

/*Authentication type*/
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['Host'] = 'localhost';
2
Timothy

UbuntuでCrimson501の答えが完璧な場合、ubuntuでblowfishとtmpファイルの問題を修正するには、次のファイルを変更し、既存の構成とubuntuが使用するtmpディレクトリを参照する必要があります。

お気に入りのテキストファイルエディターを使用して変更します。

/usr/share/phpmyadmin/libraries/vendor_config.php
find TEMP_DIR
modify './tmp/' to '/var/lib/phpmyadmin/tmp/'
find CONFIG_DIR
modify '' to '/etc/phpmyadmin/'
save the changes

戻ってページを更新すると、エラーはなくなります。

0
user373310

Dockerを使用して最新のphpmyadminを実行することをお勧めします。セットアップは簡単で、すべての依存関係は自動的に管理され、ローカルインストールと対話しません。 25MBのRAMを使用するため、メモリーホグでもありません。

どのプラットフォームでも最新のphphmyadminを非常に簡単に実行できます。

https://docs.phpmyadmin.net/en/latest/setup.html#installing-using-docker

0
Peterdk