Dùng phpMyAdmin trên DirectAdmin: tạo, nhập, xuất và quản lý cơ sở dữ liệu

Ba bài cũ cùng nói về phpMyAdmin đã được gộp vào đây. Bài này đi từ lúc mở phpMyAdmin tới các việc thường làm nhất: nhập dữ liệu, xuất dữ liệu, sửa bảng và phân quyền.

1. Mở phpMyAdmin

Hai đường, đường thứ nhất tiện hơn:

  • Account Manager → Databases → PHPMYADMIN. Vào thẳng, không phải đăng nhập lại.
  • Hoặc Extra Features → phpMyAdmin.

Nếu phpMyAdmin hỏi tên đăng nhập, dùng tên người dùng của cơ sở dữ liệu chứ không phải tài khoản DirectAdmin. Tên đó luôn có tiền tố là tên tài khoản hosting, dạng taikhoan_tenuser.

2. Tạo cơ sở dữ liệu: làm trong DirectAdmin, không làm trong phpMyAdmin

Đây là điểm hay nhầm nhất.

phpMyAdmin có nút tạo cơ sở dữ liệu, nhưng trên hosting dùng DirectAdmin thì tạo ở đó thường không chạy, vì tài khoản không có quyền tạo cơ sở dữ liệu mới ở mức máy chủ.

Cách đúng: Account Manager → Databases → Create Database.

Ô Lưu ý
Database Name DirectAdmin tự thêm tiền tố tên tài khoản. Chỉ nhập phần đuôi
Người dùng và mật khẩu Ở dạng đơn giản, DirectAdmin tự tạo người dùng cùng tên và sinh mật khẩu an toàn

Trang này có hai dạng form: dạng đơn giản và dạng nâng cao. Dạng nâng cao cho phép đặt tên người dùng khác tên cơ sở dữ liệu và tự đặt mật khẩu.

Nút MANAGE USERS bên cạnh dùng để thêm người dùng cho một cơ sở dữ liệu đã có, hoặc đổi mật khẩu người dùng.

⚠️ Ghi lại tên cơ sở dữ liệu, tên người dùng và mật khẩu ngay lúc tạo. Mật khẩu sinh tự động chỉ hiện một lần. Ba thông tin này là thứ phải điền vào tệp cấu hình của website, và tìm lại mật khẩu sau đó là phải đặt lại.

3. Màn hình chính của phpMyAdmin

Bên trái là danh sách cơ sở dữ liệu. Bấm vào một cái để mở, rồi bấm tiếp vào một bảng.

Các thẻ ở trên cùng, và mỗi thẻ dùng cho việc gì:

Thẻ Dùng khi
Browse Xem dữ liệu đang có trong bảng
Structure Xem và sửa cấu trúc bảng: các cột, kiểu dữ liệu, chỉ mục
SQL Gõ câu lệnh trực tiếp
Search Tìm bản ghi mà không cần viết câu lệnh
Insert Thêm một bản ghi bằng biểu mẫu
Export Xuất ra tệp, tức là sao lưu
Import Nhập từ tệp vào
Operations Đổi tên bảng, đổi bảng mã, sao chép bảng
Privileges Xem ai có quyền gì trên cơ sở dữ liệu này

Hai thẻ dùng nhiều nhất là Export và Import.

4. Xuất dữ liệu, tức là sao lưu

Chọn đúng cấp trước khi bấm Export. Đứng ở tên cơ sở dữ liệu thì xuất cả cơ sở dữ liệu; đứng ở một bảng thì chỉ xuất bảng đó. Đây là lỗi hay gặp: tưởng sao lưu cả website mà thực ra chỉ lấy một bảng.

Các bước:

  1. Bấm vào tên cơ sở dữ liệu ở cột bên trái.
  2. Chọn thẻ Export.
  3. Chọn Quick nếu chỉ cần một bản sao lưu bình thường, hoặc Custom để chọn thêm.
  4. Định dạng để SQL.
  5. Bấm Go, tệp tải về máy.

Với Custom, hai tuỳ chọn đáng bật:

  • Nén thành zip hoặc gzip. Tệp SQL nén lại thường nhỏ đi nhiều lần.
  • Add DROP TABLE: thêm lệnh xoá bảng cũ trước khi tạo lại. Cần khi phục hồi đè lên cơ sở dữ liệu đang có, nếu không sẽ báo lỗi trùng bảng.

Sao lưu trước mọi thay đổi lớn. Trước khi nâng cấp mã nguồn website, trước khi cài một phần mở rộng mới, trước khi chạy bất kỳ câu lệnh nào sửa dữ liệu hàng loạt. Xuất một bản mất vài giây; không có bản để quay lại thì mất cả ngày.

5. Nhập dữ liệu vào

  1. Bấm vào tên cơ sở dữ liệu đích ở cột bên trái.
  2. Chọn thẻ Import.
  3. Chọn tệp .sql hoặc .sql.gz.
  4. Để bảng mã ở utf8mb4 nếu dữ liệu có tiếng Việt.
  5. Bấm Go.

Khi tệp quá lớn, không nhập được

phpMyAdmin có giới hạn kích thước tệp tải lên, thường vài chục MB. Tệp lớn hơn sẽ báo lỗi hoặc dừng giữa chừng.

Ba cách, theo thứ tự nên thử:

  1. Nén tệp lại thành .sql.gz rồi nhập. phpMyAdmin tự giải nén, và tệp nén thường nhỏ hơn nhiều lần.
  2. Chia nhỏ tệp thành nhiều phần rồi nhập lần lượt theo đúng thứ tự.
  3. Nhập bằng dòng lệnh nếu gói hosting có quyền SSH:
mysql -u <ten-nguoi-dung> -p <ten-co-so-du-lieu> < duong-dan-tep.sql

⚠️ Nhập vào một cơ sở dữ liệu đang có dữ liệu là việc không hoàn tác được. Tệp nhập vào thường ghi đè các bảng trùng tên. Hãy xuất một bản sao lưu trước, kể cả khi chắc chắn.

6. Sửa dữ liệu bằng Browse và Insert

  • Browse để xem và sửa từng bản ghi: bấm biểu tượng bút chì ở đầu dòng.
  • Insert để thêm một bản ghi mới bằng biểu mẫu, không cần viết câu lệnh.

Dùng được cho các sửa đổi nhỏ: đổi một địa chỉ thư, sửa một tiêu đề, bật tắt một thiết lập.

Đừng sửa hàng loạt bằng tay ở đây. Sửa nhiều bản ghi thì viết một câu lệnh ở thẻ SQL, và chạy thử bằng SELECT trước để xem câu lệnh đó chạm vào đúng những dòng nào:

-- B1: xem truoc se sua nhung dong nao
SELECT * FROM ten_bang WHERE dieu_kien;

-- B2: chay that, chi sau khi B1 cho ra dung so dong mong doi
UPDATE ten_bang SET cot = 'gia tri moi' WHERE dieu_kien;

Bỏ mệnh đề WHERE trong câu UPDATE là sửa toàn bộ bảng. Đây là tai nạn phổ biến nhất khi làm việc trực tiếp với cơ sở dữ liệu, và nó không hoàn tác được.

7. Structure và Operations

Structure cho thấy các cột của bảng và kiểu dữ liệu. Thường chỉ để xem, vì cấu trúc bảng do chính phần mềm website tạo ra. Đổi cấu trúc bằng tay dễ làm website hỏng.

Một việc ở đây đáng làm: xem bảng có chỉ mục chưa. Bảng lớn mà thiếu chỉ mục ở cột hay dùng để tìm kiếm là nguyên nhân rất thường gặp làm website chậm.

Operations dùng để đổi tên bảng, đổi bảng mã, hoặc sao chép bảng sang cơ sở dữ liệu khác. Mục Collation ở đây là chỗ sửa khi dữ liệu tiếng Việt hiện ra sai dấu: đổi về utf8mb4_unicode_ci.

8. Privileges: ai được làm gì

Thẻ này liệt kê các người dùng có quyền trên cơ sở dữ liệu đang mở.

Nguyên tắc: mỗi website một cơ sở dữ liệu và một người dùng riêng. Dùng chung một người dùng cho nhiều website nghĩa là một website bị chiếm thì kẻ tấn công đọc được dữ liệu của mọi website còn lại.

Thêm hoặc sửa người dùng thì làm ở DirectAdmin bằng nút MANAGE USERS, không làm ở đây, vì DirectAdmin cần biết để quản lý đúng.

9. Ba việc nên thành thói quen

Việc Vì sao
Xuất một bản trước mọi thay đổi lớn Đây là thứ cứu quý Khách hàng, và nó mất vài giây
Chạy SELECT trước UPDATE hay DELETE Để thấy câu lệnh chạm vào bao nhiêu dòng trước khi nó chạm thật
Mỗi website một người dùng riêng Giới hạn thiệt hại khi một website bị chiếm

10. Khi cần hỗ trợ

Quý Khách hàng nhập dữ liệu bị lỗi, hãy nhắn qua khung chat ở góc phải màn hình kèm nguyên văn thông báo lỗi và kích thước tệp. Thông báo lỗi của phpMyAdmin thường chỉ thẳng ra dòng gây lỗi trong tệp.

Lỡ chạy một câu lệnh làm hỏng dữ liệu thì đừng chạy thêm gì nữa và nhắn ngay. Càng thao tác tiếp càng khó dựng lại.

Hướng dẫn này có ích cho bạn?

Cần đặt dịch vụ? Xem cấu hình và giá tại bảng giá Cloudzone - đặt gói trực tuyến, nhận dịch vụ ngay sau thanh toán. Cần tư vấn, mở khung chat ở góc phải màn hình.

Hướng dẫn liên quan