Hiện nhiều người hay bị lỗi “Warning in ./libraries/sql.lib.php#613” trong phpMyAdmin do vấn đề không tương thích giữa PHP 7.2 và phpMyAdmin 4.6 trên Ubuntu. Bài viết này mình sẽ hướng dẫn cách nâng cấp phiên bản phpMyAdmin lên mới nhất để khắc phục vấn đề này.
Cách nâng cấp phiên bản phpMyAdmin thủ công
Bước 1: Sao lưu thư mục phpMyAdmin hiện tại.
Chúng ta nên sao lưu thư mục hiện tại của phpMyAdmin lại tránh trường hợp update lỗi còn có cái để reset lại. Để sao lưu chúng ta dùng lệnh:
sudo mv /usr/share/phpmyadmin/ /usr/share/phpmyadmin.bak
Tạo lại thư mục phpmyadmin:
sudo mkdir /usr/share/phpmyadmin/
Thay đổi thư mục thực thi lệnh:
cd /usr/share/phpmyadmin/
Bước 2: Tải và giải nén phpMyAdmin phiên bản mới nhất
Ở thời điểm viết bài, phiên bản mới nhất của phpMyAdmin là 4.9.0.1. Nếu lúc bạn thực hiện có phiên bản mới hơn thì hãy thay thế câu lệnh dưới sao cho đúng. Bạn có thể lấy địa chỉ tải phiên bản mới nhất của phpMyAdmin tại đây. Sử dụng lệnh dưới để tải về phpMyAdmin 4.9.0.1 bằng wget:
sudo wget https://files.phpmyadmin.net/phpMyAdmin/4.9.0.1/phpMyAdmin-4.9.0.1-all-languages.tar.gz
Đợi quá trình tải về hoàn tất, chúng ta giải nén nó:
sudo tar xzf phpMyAdmin-4.9.0.1-all-languages.tar.gz
Sau khi giải nén, sử dụng lệnh:
ls
Bạn sẽ nhìn thấy một thư mục có tên: phpMyAdmin-4.9.0.1-all-languages . Bây giờ chúng ta cần di chuyển nội dung có trong thư mục này ra ngoài thư mục /usr/share/phpmyadmin . Sử dụng lệnh:
sudo mv phpMyAdmin-4.9.0.1-all-languages/* /usr/share/phpmyadmin
Hiện tại bạn có thể quay lại trình quản lý phpMyAdmin của mình và đăng nhập lại để nhìn xem thay đổi sau khi cập nhật. Bạn có thể sẽ thấy 2 lỗi như hình dưới đây:
Bước 3: Sửa lỗi ở file vendor_config.php
Cách khắc phục lỗi “The $cfg[‘TempDir’] (./tmp/) is not accessible. phpMyAdmin is not able to cache templates and will be slow because of this“:
Mở file vendor_config.php bằng lệnh:
sudo nano /usr/share/phpmyadmin/libraries/vendor_config.php
Nhấn CTRL + W và tìm kiếm với nội dung TEMP_DIR . Thay đổi dòng vừa được tìm thấy bằng dòng sau:
define('TEMP_DIR', '/var/lib/phpmyadmin/tmp/');
Cách khắc phục lỗi “The configuration file now needs a secret passphrase (blowfish_secret)“:
Nhấn CTRL + W tìm kiếm với nội dung CONFIG_DIR . Thay đổi nội dung dòng vừa được tìm thấy bằng dòng sau:
define('CONFIG_DIR', '/etc/phpmyadmin/');
Sau khi chỉnh sửa hoàn tất nhấn CTRL + X , nhấn Y và cuối cùng nhấn ENTER để lưu lại thay đổi và thoát.
Như vậy là đã xong update phpMyAdmin lên phiên bản mới nhất. Lúc này bạn có thể đăng nhập lại phpMyAdmin và đảm bảo rằng không còn lỗi nào nữa. Nếu có lỗi bạn xóa thư mục phpMyAdmin vừa tạo và đổi lại tên thư mục backup để trở về phiên bản cũ.
Bước 4: Xóa rác trong quá trình cập nhật phpMyAdmin
Nếu nâng cấp phpMyAdmin hoàn tất và không còn lỗi nào phát sinh chúng ta thực hiện lần lượt các lệnh dưới để xóa bỏ thư mục trống, file nén tải về, thư mục backup.
sudo rm /usr/share/phpmyadmin/phpMyAdmin-4.9.0.1-all-languages.tar.gz
sudo rm -rf /usr/share/phpmyadmin/phpMyAdmin-4.9.0.1-all-languages
sudo rm -rf /usr/share/phpmyadmin.bak