Cách nâng cấp PHPmyAdmin [xem lại]


28

Câu hỏi này đã được hỏi trước đây, Cách nâng cấp PHPmyAdmin

Câu trả lời được đưa ra là

sudo apt-get update
sudo apt-get install phpmyadmin

hoặc là

sudo apt-get update
sudo apt-get upgrade

Phiên bản phpmyadminbao gồm trong apt-get là 4.5.4, được phát hành vào ngày 28 tháng 1 năm 2016.

Để trả lời cho câu hỏi này, một câu trả lời là sử dụng kho lưu trữ phpMyAdmin cung cấp các lệnh sau.

sudo add-apt-repository ppa:phpmyadmin/ppa
sudo apt-get update

Trong trường hợp của tôi đã cập nhật rất nhiều thứ, nhưng, không cụ thể phpmyadmin, tôi cần lệnh bổ sung

sudo apt-get update phpmyadmin

Điều này đã thành công vượt qua phiên bản 4.9.0.1được phát hành vào năm 2019.

Khi viết bài này, có vẻ như việc tải xuống và sao chép thủ công bằng cách sử dụng các hướng dẫn mơ hồ từ docs.phpmyadmin.net là bắt buộc.

Có kho lưu trữ hiện tại nào phpmyadminhơn PPA không hoặc có cần cài đặt thủ công không?


2
@Rinzwind, Hiện tại nó đang ở phiên bản 4.5.4 và tôi muốn nó là phiên bản hiện tại của 4.7.3, làm thế nào mà không và nâng cấp?
Dwight Wilbanks

Nếu bạn không thể tìm ra cách cài đặt pma từ tarball, bạn thực sự không nên quản lý máy chủ Web ... -1 cho mọi người ở đây.
fkraiem

Câu trả lời:


36

@Photo Larry đánh khá nhiều vào đầu đinh! Tôi sẽ đưa ra một câu trả lời dựa trên câu trả lời của anh ấy sẽ dễ hiểu và làm theo.

  • Bước đầu tiên của bạn là cài đặt PMA (phpMyAdmin) từ repo Ubuntu chính thức : apt-get install phpmyadmin.
  • Tiếp theo, cd vào thư mục usr / share : cd /usr/share.
  • Thứ ba, xóa thư mục phpmyadmin : rm -rf phpmyadmin.
  • Bây giờ chúng tôi cần tải xuống phiên bản PMA mới nhất vào hệ thống của chúng tôi (Lưu ý rằng bạn cần wget apt-get install wget:): wget -P /usr/share/ "https://files.phpmyadmin.net/phpMyAdmin/4.8.2/phpMyAdmin-4.8.2-english.zip" Hãy để tôi giải thích các đối số của lệnh này, -P xác định đường dẫn và "link.zip" hiện tại (17/07/18 ) phiên bản mới nhất của PMA. Bạn có thể tìm thấy các liên kết TẠI ĐÂY .
  • Đối với bước tiếp theo này, bạn cần giải nén ( apt-get install unzip) : unzip phpMyAdmin-4.8.2-english.zip. Chúng tôi vừa giải nén PMA, bây giờ chúng tôi sẽ chuyển nó đến nhà cuối cùng.
  • Hãy sử dụng lệnh cp(sao chép) để di chuyển các tệp của chúng tôi! Lưu ý rằng chúng ta phải thêm -rđối số vì đây là thư mục. cp -r phpMyAdmin-4.8.2-english phpmyadmin.
  • Bây giờ là lúc để dọn dẹp : rm -rf phpMyAdmin-4.8.2-english.

Hãy đọc tiếp!

Bây giờ bạn có thể nhận thấy hai lỗi sau khi bạn đăng nhập vào 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.

Tuy nhiên, những vấn đề này tương đối dễ khắc phục. Đối với vấn đề đầu tiên, tất cả những gì bạn phải làm là lấy trình soạn thảo lựa chọn và chỉnh sửa /usr/share/phpmyadmin/config.inc.phpnhưng có một vấn đề, chúng tôi đã xóa nó! Điều đó ổn, tất cả những gì bạn phải làm là: cd /usr/share/phpmyadmin& cp config.sample.inc.php config.inc.php.

  • Bây giờ chúng tôi sẽ thêm Bí mật cá đuối của chúng tôi! nano config.inc.phpvà sao chép bí mật an toàn bằng cách nhấp vào textarea: https ://www.motorsportd Diesel.com/tools/blowfish-salt/pma/ .

Ví dụ Mục nhập biến bí mật của 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! */

Bây giờ lưu và đóng tệp.

  • Bây giờ chúng tôi sẽ tạo một thư mục tmp cho PMA: mkdir tmp& chown -R www-data:www-data /usr/share/phpmyadmin/tmp. Lệnh cuối cùng cho phép máy chủ web Apache sở hữu thư mục tmp và chỉnh sửa nội dung của nó.

EDIT ngày 12 tháng 12 năm 2018

Bạn không muốn ai đó ăn cắp cookie của bạn, bây giờ phải không?

Tôi đã nhận thấy rằng https://www.question-defense.com/tools/phpmyadmin-blowfish-secret-generator gây ra lỗi trên các phiên bản cũ hơn trên PMA. Tuy nhiên, lý do chính tôi làm nản lòng bạn đến các trang web sử dụng như thế này là bởi vì bạn không có ý tưởng cho dù họ sử dụng một PRNG yếu (Pseudo-Random Number Generator) (ví dụ rand(), mt_rand()lcg_value()) hoặc một trong những "xáo trộn" chức năng (ví dụ str_shuffle(), shuffle(), array_rand()). Như vậy, tôi đã tạo ra công cụ của riêng mình cho mục đích này. Nó tạo ra một chuỗi 32 ký tự an toàn bằng mật mã mà bạn có thể sử dụng mà không cần quan tâm đến bảo mật hoặc lỗi! Trang man PHP cho hàm tôi sử dụng để tạo tính ngẫu nhiên http://php.net/manual/en/feft.random-int.php . Tôi đã thay thế liên kết cũ bằng liên kết này:https: //www.motorsportd Diesel.com/tools/blowfish-salt/pma/ .


Những điều tốt đẹp! Tôi đã theo dõi họ với một vài bước bên: a) thay vì xóa phiên bản cũ, tôi đổi tên nó; b) có thể thuận tiện để tạo liên kết tượng trưng phpmyadmin, có thể dễ dàng chuyển đổi giữa nhiều phiên bản.
AntonK

Tôi đã sao chép câu trả lời của bạn ở đây vì tôi nghĩ là lựa chọn tốt nhất. Nếu bạn muốn đưa ra câu trả lời của riêng mình, hãy cho tôi biết và tôi sẽ xóa câu trả lời của tôi.
PhoneixS

Tốt rồi. Cảm ơn rất nhiều về tín dụng và có quyết định thông báo cho tôi! @PhoneixS
CRIMSON 501

Bạn cũng nên xóa tệp ZIP đã tải xuống như một phần của việc dọn dẹp
IvanRF

9

Tôi chỉ phải làm điều này vì sự cố với php7.2 và nhận được lỗi count(): Parameter must be an array or an object that implements Countable.

Phiên bản từ apt là 4.5.4 và ppa không có bản sửa lỗi cho php7.2. Giải pháp của tôi là tải xuống phiên bản mới nhất từ https://www.phpmyadmin.net/ và sao chép các tập tin vào /usr/share/phpmyadmin.


1
làm việc cho tôi như một cơ duyên
Norman Bird

OK, tốt hơn nhiều bây giờ! Debian (và Ubuntu) nên nâng cấp các gói của họ. Thi thiên Tôi thậm chí đang chạy PHP 7.3.
nguy hiểm89

3

Như đã nêu ở trên, bạn cần cập nhật các tệp theo cách thủ công nhưng tôi đã tìm kiếm trong một giờ để tìm xem chúng nằm ở đâu (/ usr / share) và tiếp tục thấy rằng nó sẽ được đặt vào / var / www / html không chính xác . Nếu bạn đã cài đặt phần mềm với apt-get install phpmyadmin sau khi thêm kho lưu trữ ở trên mà tuyên bố là hiện tại, thì ít nhất bạn sẽ nhận được các lib php7.2 cần thiết. Sau đó, bạn cần cài đặt phiên bản MỚI (4.8) vào / usr / share / phpmyadmin bằng cách truy cập / usr / share và nhân bản git: git clone https://github.com/phpmyadmin/phpmyadmin.git (Tôi đã thực hiện rm -rf phpmyadmin trước) chỉ để chắc chắn rằng không còn mã cũ nào. Sau đó, khi đi vào giao diện web .... bạn thấy phiên bản mới nhất hiện đang được sử dụng. Sau đó, hãy chắc chắn chuyển cd sang phpmyadmin và chạy: cập nhật trình soạn thảo --no-dev Điều này nhận được các thư viện cần thiết. Cái này cài đặt 4.9.0-dev chạy rất tốt và tôi đang chạy Ubuntu 16.04.4. Cảm ơn hy vọng điều này sẽ giúp ai đó tiết kiệm thời gian


Cảm ơn bạn, điều này đã cứu ngày của tôi! nhưng tôi đã quyết định sử dụng một github.com/blackmambano5/phpmyadmin.git ổn định, đây là phiên bản 4.8.1 và mọi thứ đều hoạt động!
gfivehost

Cảm ơn, điều này đã giúp. Tôi đã cài đặt từ zip, không phải từ Github, không có nhiều khác biệt ở đó. Tôi đề nghị chỉnh sửa câu hỏi để chia đoạn lớn thành một danh sách các bước.
pgr

Lấy tốt hơn phiên bản ổn định mới nhất từ git như thế này : git clone -b STABLE https://github.com/phpmyadmin/phpmyadmin.git.
Christopher K.

2

Bạn chỉ có thể tự cài đặt phiên bản mới nhất của phpmyadmin.

Truy cập https://www.phpmyadmin.net/doads và tải xuống phiên bản mới nhất nhưng đảm bảo bạn có phiên bản PHP và MySQL tương thích như được liệt kê trên trang web.

Giải nén nó vào thư mục công cộng máy chủ của bạn và chỉnh sửa config.inc.phptập tin. Hãy chắc chắn rằng bạn auth_typecookiehostbất cứ điều gì máy chủ của bạn là. Cài đặt này sẽ khiến bạn nhập tên người dùng và mật khẩu khi đăng nhập.

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

2

Tôi sẽ sử dụng kho lưu trữ phpMyAdmin nếu bạn thực sự cần phiên bản mới nhất. Mặc dù có một sự phụ thuộc (bạn cũng cần một php mới hơn):

Mô tả PPA

Các gói phpMyAdmin mới nhất - https://www.phpmyadmin.net/ . Dựa trên các gói có sẵn trong Debian.

Có một số thay đổi đáng chú ý:


2
Tôi nghĩ anh ấy đã hỏi làm thế nào để cập nhật nó lên phiên bản mới nhất chứ không phải nơi cài đặt có thể tải xuống.
Tarik

1
Vào tháng 7 năm 2018, PPA đó vẫn ở mức 4.6.6 (có lỗi) trong khi phpMyAdmin ở mức 4.8 (không có lỗi). Hình như PPA không còn được duy trì?
Steve

Chỉ cần sử dụng PPA này - 4.9.0, không quá tệ - mới nhất là 4.9.1. Làm cho cuộc sống đơn giản. Có phải nâng cấp PHP lên 7.3
nrapopor

0

Tôi sẽ khuyên bạn nên sử dụng Docker để chạy phpmyadmin mới nhất. Thật đơn giản để thiết lập và tất cả các phụ thuộc được tự động quản lý và không tương tác với cài đặt cục bộ của bạn. Nó sử dụng 25 MB RAM nên nó cũng không phải là bộ nhớ.

Rất dễ dàng để chạy phphmyadmin mới nhất trên bất kỳ nền tảng nào.

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


0

Câu trả lời của Crimson501 là hoàn hảo trừ khi trên Ubuntu của bạn, để khắc phục sự cố tệp blowfish và tmp trên ubfox, bạn cần sửa đổi tệp sau, để tham chiếu cấu hình hiện có và thư mục tmp mà ub Ubuntu sử dụng.

Sử dụng trình chỉnh sửa tệp văn bản yêu thích của bạn sửa đổi:

/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

Bây giờ khi bạn quay lại và làm mới trang, các lỗi sẽ biến mất.



-1

Theo các hướng dẫn được tìm thấy ở đây , tôi đã tạo tập lệnh đơn giản này để cập nhật PHPMyAdmin lên phiên bản ổn định cuối cùng :

echo
echo "Backing up"
mv /usr/share/phpmyadmin/ /usr/share/phpmyadmin.bak

echo "Getting lastest PHPMyAdmin version..."
mkdir -p /usr/share/phpmyadmin/
cd /usr/share/phpmyadmin/
wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz
tar xzf phpMyAdmin-latest-all-languages.tar.gz
mv phpMyAdmin-*/* /usr/share/phpmyadmin

echo "Updating vendor_config"
sed -i -r "s/('TEMP_DIR'\s*,)[^\)]*/\1 '\/var\/lib\/phpmyadmin\/tmp\/'/" /usr/share/phpmyadmin/libraries/vendor_config.php
sed -i -r "s/('CONFIG_DIR'\s*,)[^\)]*/\1 '\/etc\/phpmyadmin\/'/" /usr/share/phpmyadmin/libraries/vendor_config.php

echo "Cleaning up..."
rm /usr/share/phpmyadmin/phpMyAdmin-latest-all-languages.tar.gz
rm -rf /usr/share/phpmyadmin/phpMyAdmin-*
rm -rf /usr/share/phpmyadmin.bak

echo "Done!"
echo
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.