phpMyAdmin là một mã nguồn mở dùng để quản lý MySQL thông qua một trình duyệt web. Bạn có thể dễ dàng cài đặt phpMyAdmin trên Ubuntu, CentOS và Windows.

Nếu bạn đã hoặc đang sử dụng cPanel thì phpMyAdmin đã quá quen thuộc với bạn. phpMyAdmin có thể dùng để tạo, chỉnh sửa hoặc xóa database, table và các column của MySQL một cách nhanh chóng.Cách cài đặt phpMyAdmin trên Ubuntu, CentOS và Windows

Nếu bạn không quen việc sử dụng lệnh (command line) thì phpMyAdmin là một lựa chọn hoàn hảo. Nhưng dù bạn đã quản lý MySQL bằng lệnh một cách thành thạo thì bạn cũng nên sử dụng phpMyAdmin.

Đối với những hosting không hỗ trợ phpMyAdmin thì bạn cũng có thể cài phpMyAdmin trên host của bạn để sử dụng.

Lợi ích khi sử dụng phpMyAdmin:

  • Vì phpMyAdmin được viết bằng ngôn ngữ PHP, nên nó tương thích trên tất cả các máy chủ đang chạy PHP như Apache, Nginx…
  • Quản lý database của MySQL thông qua trình duyệt web thay vì sử dụng lệnh (command line). Cứ login vào SSH hoặc vào terminal thì thật bất tiện.
  • Quản lý MySQL dễ dàng hơn sử dụng lệnh (command line).

Bài viết này sẽ hướng dẫn bạn cách cài đặt phpMyAdmin trên Ubuntu, CentOS và Windows hoặc bất cứ nơi nào bạn đang chạy PHP và MySQL. Cài phpMyAdmin cũng giống như bạn cài một trang web WordPress. XenForo nên bạn cũng cần phải cài đặt Nginx, PHP và MySQL trước.

Ubuntu và CentOS có cung cấp các gói cài đặt sẵn cho phpMyAdmin, tuy nhiên ở đây mình sẽ download và cài đặt phpMyAdmin từ source. Các bạn xài Windows 7/8/10 thì thực hiện không cần dùng lệnh nhé.

Cài đặt phpMyAdmin

Đầu tiên bạn cần phải download phpMyAdmin mới nhất. Vì nó chưa có ngôn ngữ tiếng Việt nên mình chỉ chọn phiên bản English thôi. Nếu bạn dùng Windows thì download bản .zip cho dễ giải nén nhé.

Chú ý: nếu bạn dùng PHP 5.3 thì bạn chỉ có thể cài bản phpMyAdmin 4.4.15 hoặc cũ hơn. Bạn vào trang download để biết thêm chi tiết.

# cd /usr/src
# wget https://files.phpmyadmin.net/phpMyAdmin/4.5.0.1/phpMyAdmin-4.5.0.1-english.tar.gz

Giải nén và copy thư mục này vào thư mục root HTML của bạn. Giống như bạn cài đặt WordPress hoặc XenForo vậy.

# tar zxf phpMyAdmin-4.5.0.1-english.tar.gz
# cp -avr phpMyAdmin-4.5.0.1-english /var/www/html

/var/www/html là thư mục root của trang web bạn, nó cũng là nơi bạn cài đặt WordPress tùy theo nơi bạn đang dùng.

Bây giờ bạn cần đi đến /var/www/html và rename thư mục phpMyAdmin-4.5.0.1-english vừa copy vào. Mục đích của việc rename là để cho nó dễ nhớ và tránh việc người khác có thể biết được URL của phpMyAdmin. Ở đây mình sẽ rename nó thành phpmyadmin0201.

# cd /var/www/html
# mv phpMyAdmin-4.5.0.1-english phpmyadmin0201

Vậy là đã xong việc cài đặt, bây giờ bạn có thể vào http://ip-cua-ban/phpmyadmin0201 hoặc http://localhost/phpmyadmin0201 nếu bạn đang dùng localhost trên Windows.

Cách cài đặt phpMyAdmin trên Ubuntu, CentOS và Windows
Nếu bạn vào được phpMyAdmin như thế này là ngon lành rồi. Chỉ cần cấu hình lại nữa là xong.

Cấu hình phpMyAdmin

Để đăng nhập và sử dụng phpMyAdmin, bạn cần phải cài đặt MySQL và đặt mật khẩu cho user root. Nếu bạn login vào một tài khoản mà không có mật khẩu, phpMyAdmin sẽ bảo lỗi như sau:

Login without a password is forbidden by configuration (see AllowNoPassword)

Bạn cũng có thể cấu hình lại để cho phép login với user không cần mật khẩu nhưng mà làm như vậy thì không an toàn, không khuyến khích.

Tạo file config.inc.php

config.inc.php là file cấu hình của phpMyAdmin nhưng mặc định thì nó không được tạo sẵn. Bạn phải tạo ra nó thủ công, cách tốt nhất là nên copy file config.sample.inc.php và đổi lại thành config.inc.php.

# cd /var/www/html/phpmyadmin0201
# cp config.sample.inc.php config.inc.php

Vậy là bạn đã tạo file config.inc.php, bạn có thể thay đổi một vài hoặc tất cả cấu hình của phpMyAdmin ở trong đó.

Sau khi MySQL đã được cài đặt, bây giờ bạn có thể đăng nhập vào phpMyAdmin với user root và mật khẩu mà bạn đã đặt.

Có thể bạn sẽ gặp lỗi như sau:

The configuration file now needs a secret passphrase (blowfish_secret).

Để fix lỗi này, bạn cần mở file config.inc.php và tìm đến đoạn sau và nhập giá trị cho nó, bạn có thể nhập một vài ký tự bất kỳ:

$cfg[‘blowfish_secret’] = ”; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

Sau khi nhập bạn sẽ có như sau:

$cfg[‘blowfish_secret’] = ‘dfgdfggshfhas7aew9389‘; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

Refresh và đăng nhập lại vào phpMyAdmin, bạn sẽ thấy lỗi này biến mất. Nếu bạn không đặt nhập được thì xóa cache trình duyệt đi nhé.

Và cũng có thể bạn sẽ gặp một cảnh báo như sau:

The phpMyAdmin configuration storage is not completely configured, some extended features have been deactivated. Find out why.
Or alternately go to ‘Operations’ tab of any database to set it up there.

Chú ý: đây không phải là lỗi, nhưng bạn cũng nên cấu hình để sử dụng đầy đủ tính năng của phpMyAdmin. Đối với những bạn cài đặt phpMyAdmin trên host thì dừng lại tại đây, vì bạn không thể tiếp tục cấu hình nếu như bạn không có quyền root của MySQL.

Để loại bỏ cảnh báo này, bạn cần phải import file create_tables.sql trong thư mục sql. Bạn có thể import file create_tables.sql bằng cách nhấn vào mục Import trong phpMyAdmin và chọn file create_tables.sql trong thư mục sql.

Nếu bạn gặp lỗi #1100 như sau:

Error

SQL query: DocumentationEdit Edit
SELECT `comment`
FROM `phpmyadmin`.`pma__column_info`
WHERE db_name = ‘hi’
AND table_name = ”
AND column_name = ‘(db_comment)’
MySQL said: Documentation

#1100 – Table ‘pma__column_info’ was not locked with LOCK TABLES

Thì bạn có thể fix lỗi này bằng cách mở file config.inc.php và bỏ dấu “//” ở phía trước dòng sau:

// $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';

Bỏ dấu “//” ở trước mỗi dòng có giá trị bắt đầu với pma__.

// $cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
// $cfg['Servers'][$i]['relation'] = 'pma__relation';
// $cfg['Servers'][$i]['table_info'] = 'pma__table_info';
// $cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
// $cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
// $cfg['Servers'][$i]['column_info'] = 'pma__column_info';
// $cfg['Servers'][$i]['history'] = 'pma__history';
// $cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
// $cfg['Servers'][$i]['tracking'] = 'pma__tracking';
// $cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
// $cfg['Servers'][$i]['recent'] = 'pma__recent';
// $cfg['Servers'][$i]['favorite'] = 'pma__favorite';
// $cfg['Servers'][$i]['users'] = 'pma__users';
// $cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
// $cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
// $cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';
// $cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
// $cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
// $cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';

Bỏ dấu “//” ở trước 2 dòng dưới đây và thay thế giá trị thành user và mật khẩu MySQL của bạn, có thể là root hoặc một user nào đó.

// $cfg['Servers'][$i]['controluser'] = 'pma';
// $cfg['Servers'][$i]['controlpass'] = 'pmapass';

Nếu như bạn không sử dụng user root thì bạn cần phải tạo ra user và mật khẩu mới như ở trên. Đăng nhập vào MySQL bằng lệnh sau:

sudo mysql -u root -p

Nếu đăng nhập MySQL thành công, bạn sẽ nhìn thấy như sau:

Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 739
Server version: 10.1.9-MariaDB-log MariaDB Server

Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

Tiếp theo, bạn cần phải tạo ra user và mật khẩu mới như đã khai báo ở trên. Bạn nên thay đổi mật khẩu khác để an toàn hơn.

GRANT USAGE ON mysql.* TO 'pma'@'localhost' IDENTIFIED BY 'pmapass';

Bây giờ bạn cần phải thiết lập đặc quyền cho user này, sử dụng lệnh sau:

GRANT SELECT (
    Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv,
    Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv,
    File_priv, Grant_priv, References_priv, Index_priv, Alter_priv,
    Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv,
    Execute_priv, Repl_slave_priv, Repl_client_priv
    ) ON mysql.user TO 'pma'@'localhost';
GRANT SELECT ON mysql.db TO 'pma'@'localhost';
GRANT SELECT ON mysql.host TO 'pma'@'localhost';
GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv)
    ON mysql.tables_priv TO 'pma'@'localhost';

Tiếp tục sử dụng lệnh dưới đây để thiết lập cho user này có đặc quyền đối với database phpmyadmin:

GRANT SELECT, INSERT, UPDATE, DELETE ON phpmyadmin.* TO 'pma'@'localhost';

Bây giờ bạn cần logout ra khỏi phpMyAdmin và đăng nhập lại để kiểm tra.

Như vậy là bạn đã hoàn thành việc cài đặt phpMyAdmin trên Ubuntu, CentOS và Windows. Mình nghĩ rằng không cần phải bảo mật thêm gì cả vì thư mục phpMyAdmin và mật khẩu root đều là của bạn.

Cách cài đặt phpMyAdmin trên Ubuntu, CentOS và Windows

Cám ơn bạn đã đọc bài, nếu có lỗi gì thì báo cho mình nhé.

Tham gia cuộc thảo luận

6 Bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

  1. Vậy mình phải đặt thư mục phpmyadmin ở đâu nếu như theo bài Hướng dẫn cài đặt Nginx, PHP và MySQL trên Windows. D:Web…
    Bạn giúp mình nha

      1. Mình đặt ở các nơi khác thì lỗi 404, đặt trong D:Web/nginx/html/ thì được nhưng mà bị lỗi cái j mà mbstring missing

      2. Bạn ơi, mình cài được ròi. Mình đã thêm mã nguồn WordPress lên site của mình trong thư mục html của nginx, nhưng mà vấn đề là khi sửa Permalink (Đường dẫn tĩnh) thì nó bị lỗi 404 not found