phpMyAdmin là một công cụ quản trị mã nguồn mở và miễn phí dành cho MySQL và MariaDB. phpMyAdmin là một công cụ dựa trên web cho phép bạn dễ dàng quản lý cơ sở dữ liệu MySQL hoặc MariaDB. Bạn có thể thực hiện các tác vụ quản trị như tạo, chỉnh sửa hoặc xóa cơ sở dữ liệu, nhập và xuất bản sao lưu cơ sở dữ liệu, chạy tìm kiếm và quản lý người dùng và quyền bằng phpMyAdmin.
Theo mặc định, phpMyAdmin không có trong kho lưu trữ mặc định của Ubuntu 18.04. Vì vậy, bạn sẽ cần thêm kho lưu trữ PHP của bên thứ ba vào hệ thống của mình.
Bạn có thể thêm nó chỉ bằng cách chạy lệnh sau:
Sau khi kho lưu trữ được thêm vào, hãy cài đặt phpMyAdmin bằng cách chạy lệnh sau:
Trong quá trình cài đặt, bạn sẽ được yêu cầu chọn máy chủ web như hiển thị bên dưới:
Chọn Apache và nhấp vào nút OK. Bạn sẽ được chuyển hướng đến trang sau:
Bây giờ, hãy nhấp vào nút Yes. Bạn sẽ thấy trang sau:
Tại đây, hãy cung cấp mật khẩu ứng dụng MySQL của bạn cho phpMyAdmin và nhấp vào nút OK.
Sau khi phpMyAdmin đã được cài đặt, hãy bật tiện ích mở rộng PHP mbstring bằng lệnh sau:
Tiếp theo, khởi động lại dịch vụ Apache để áp dụng các thay đổi:
Đầu tiên, hãy đăng nhập vào shell MySQL bằng lệnh sau:
Tiếp theo, hãy kiểm tra phương thức xác thực của người dùng MySQL bằng lệnh sau:
Đầu ra:
Trong đầu ra ở trên, bạn sẽ thấy rằng người dùng root sử dụng plugin auth_socket.
Bạn có thể cấu hình tài khoản root để xác thực bằng mật khẩu bằng cách chạy lệnh sau:
Tiếp theo, xóa các đặc quyền bằng lệnh sau:
Bây giờ, hãy kiểm tra các phương thức xác thực bằng cách chạy lệnh sau:
Đầu ra:
Tiếp theo, tạo một người dùng riêng có tên phpmyadminuser để kết nối với phpMyAdmin.
Đầu tiên, đăng nhập vào shell MySQL:
Nhập mật khẩu root của bạn, sau đó tạo một người dùng bằng lệnh sau:
Tiếp theo, cấp các quyền thích hợp cho phpmyadminuser bằng lệnh sau:
Cuối cùng, thoát khỏi shell MySQL bằng lệnh sau:
Bây giờ, hãy mở trình duyệt web của bạn và nhập URL http://your-server-ip/phpmyadmin. Bạn sẽ được chuyển hướng đến trang sau:
Tại đây, hãy cung cấp tên người dùng và mật khẩu của bạn. Sau đó, nhấp vào nút Go. Bạn sẽ thấy bảng điều khiển PhpMyAdmin ở trang sau:
Để thực hiện, trước tiên hãy bật chức năng ghi đè tệp .htaccess bằng cách chỉnh sửa tệp phpmyadmin.conf:
Thực hiện các thay đổi sau:
Lưu và đóng tệp. Sau đó, khởi động lại dịch vụ Apache để áp dụng các thay đổi:
Tiếp theo, tạo tệp .htaccess bên trong thư mục phpmyadmin:
Thêm các dòng sau:
Lưu và đóng tệp. Sau đó, tạo một người dùng có tên là admin bằng tiện ích htpasswd:
Đầu ra:
Phiên bản phpMyAdmin của bạn hiện được bảo mật bằng một lớp xác thực bổ sung.
Bây giờ, hãy mở trình duyệt web của bạn và nhập URL http://your-server-ip/phpmyadmin. Bạn sẽ được chuyển hướng đến tên tài khoản và mật khẩu bổ sung mà bạn vừa cấu hình như bên dưới:
Bây giờ, hãy cung cấp tên người dùng và mật khẩu của bạn và nhấp vào nút Đăng nhập Vào. Bạn sẽ được chuyển hướng đến trang xác thực phpMyAdmin thông thường.
Tính năng
- Hỗ trợ nhiều ngôn ngữ.
- Nhập dữ liệu từ CSV và SQL.
- Cung cấp biểu đồ trực tiếp để theo dõi hoạt động của máy chủ MySQL như kết nối, quy trình, mức sử dụng CPU/bộ nhớ, v.v.
- Tìm kiếm toàn cầu trong cơ sở dữ liệu hoặc một tập hợp con của cơ sở dữ liệu đó.
- Giao diện web đơn giản và dễ sử dụng.
- Xuất dữ liệu sang nhiều định dạng khác nhau như CSV, SQL, XML, PDF, Word, Excel, LaTeX và các định dạng khác.
Yêu cầu
- Máy chủ chạy Ubuntu 18.04.
- Người dùng không phải root có quyền sudo.
Cài đặt phpMyAdmin
Trước khi bắt đầu, bạn sẽ cần cài đặt Apache và MySQL vào máy chủ của mình. Bạn có thể cài đặt bằng lệnh sau:
Mã:
sudo apt-get install apache2 mysql-server -y
Bạn có thể thêm nó chỉ bằng cách chạy lệnh sau:
Mã:
sudo apt-get install software-properties-common -y
sudo add-apt-repository ppa:ondrej/php
Mã:
sudo apt-get install phpmyadmin php-mbstring php-gettext -y
Chọn Apache và nhấp vào nút OK. Bạn sẽ được chuyển hướng đến trang sau:
Bây giờ, hãy nhấp vào nút Yes. Bạn sẽ thấy trang sau:
Tại đây, hãy cung cấp mật khẩu ứng dụng MySQL của bạn cho phpMyAdmin và nhấp vào nút OK.
Sau khi phpMyAdmin đã được cài đặt, hãy bật tiện ích mở rộng PHP mbstring bằng lệnh sau:
Mã:
sudo phpenmod mbstring
Mã:
sudo systemctl restart apache2
Cấu hình Xác thực Người dùng
phpMyAdmin tự động tạo một người dùng cơ sở dữ liệu có tên là phpmyadmin với mật khẩu quản trị mà bạn đã đặt trong quá trình cài đặt. Tuy nhiên, bạn nên tạo một người dùng riêng để quản lý cơ sở dữ liệu thông qua giao diện web phpMyAdmin. Trong phiên bản mới nhất của MariaDB, người dùng MySQL gốc được đặt để xác thực bằng plugin auth_socket theo mặc định. Vì vậy, nếu bạn muốn đăng nhập vào phpMyAdmin với tư cách là người dùng MySQL gốc, bạn sẽ cần chuyển phương thức xác thực của nó từ auth_socket sang mysql_native_password.Đầu tiên, hãy đăng nhập vào shell MySQL bằng lệnh sau:
Mã:
sudo mysql
Mã:
mysql> SELECT user,authentication_string,plugin,host FROM mysql.user;
Mã:
+------------------+------------------------------------+-----------------------+-----------+| user | authentication_string | plugin | host |+------------------+-------------------------------------------+-----------------------+-----------+| root | | auth_socket | localhost || mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost || mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost || debian-sys-maint | *AC18DF5CAE34BF4796EF975702F038A566B48B42 | mysql_native_password | localhost |+------------------+-------------------------------------------+-----------------------+----------+4 hàng trong tập hợp (0,01 giây)
Bạn có thể cấu hình tài khoản root để xác thực bằng mật khẩu bằng cách chạy lệnh sau:
Mã:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
Mã:
mysql> FLUSH PRIVILEGES;
Mã:
mysql> SELECT user,authentication_string,plugin,host FROM mysql.user;
Mã:
+------------------+----------------------------------------+-----------------------+------------+| người dùng | chuỗi xác thực | plugin | máy chủ |+------------------+----------------------------------------+-----------------------+----------+----------+| root | *2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19 | mysql_native_password | localhost || mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost || mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost || debian-sys-maint | *AC18DF5CAE34BF4796EF975702F038A566B48B42 | mysql_native_password | localhost |+------------------+----------------------------------------+-----------------------+----------+4 hàng trong tập hợp (0,01 giây)
Đầu tiên, đăng nhập vào shell MySQL:
Mã:
mysql -u root -p
Mã:
MariaDB [(none)]> CREATE USER 'phpmyadminuser'@'localhost' IDENTIFIED BY 'password';
Mã:
MariaDB [(none)]> CẤP TẤT CẢ CÁC QUYỀN TRÊN *.* CHO 'phpmyadminuser'@'localhost' VỚI TÙY CHỌN CẤP;
Mã:
MariaDB [(none)]> exit;
Tại đây, hãy cung cấp tên người dùng và mật khẩu của bạn. Sau đó, nhấp vào nút Go. Bạn sẽ thấy bảng điều khiển PhpMyAdmin ở trang sau:
Bảo mật PhpMyAdmin
phpMyAdmin hiện đã được cài đặt và định cấu hình. Tuy nhiên, bạn nên bảo mật phiên bản phpMyAdmin của mình để ngăn chặn truy cập trái phép. Bạn có thể bảo mật phpMyAdmin bằng cách sử dụng chức năng xác thực và ủy quyền .htaccess tích hợp sẵn của Apache.Để thực hiện, trước tiên hãy bật chức năng ghi đè tệp .htaccess bằng cách chỉnh sửa tệp phpmyadmin.conf:
Mã:
sudo nano /etc/apache2/conf-available/phpmyadmin.conf
Mã:
Options SymLinksIfOwnerMatch DirectoryIndex index.php AllowOverride All
Mã:
sudo systemctl restart apache2
Mã:
sudo nano /usr/share/phpmyadmin/.htaccess
Mã:
AuthType BasicAuthName "Tệp bị hạn chế"AuthUserFile /etc/phpmyadmin/.htpasswdRequire valid-user
Mã:
sudo htpasswd -c /etc/phpmyadmin/.htpasswd admin
Mã:
Mật khẩu mới:Nhập lại mật khẩu mới:Đang thêm mật khẩu cho người dùng admin
Bây giờ, hãy mở trình duyệt web của bạn và nhập URL http://your-server-ip/phpmyadmin. Bạn sẽ được chuyển hướng đến tên tài khoản và mật khẩu bổ sung mà bạn vừa cấu hình như bên dưới:
Bây giờ, hãy cung cấp tên người dùng và mật khẩu của bạn và nhấp vào nút Đăng nhập Vào. Bạn sẽ được chuyển hướng đến trang xác thực phpMyAdmin thông thường.