Câu hỏi phỏng vấn MySQL
Câu hỏi

mysqldump là gì?

Câu trả lời

mysqldump là một công cụ dòng lệnh được cung cấp bởi MySQL, sử dụng để sao lưu cơ sở dữ liệu bằng cách tạo ra một tập tin chứa các lệnh SQL có thể được sử dụng để khôi phục lại cơ sở dữ liệu. Công cụ này rất hữu ích cho việc sao lưu dữ liệu hoặc di chuyển dữ liệu từ một máy chủ MySQL này sang máy chủ MySQL khác.

Các tính năng chính của mysqldump bao gồm

  • Sao lưu một hoặc nhiều cơ sở dữ liệu: mysqldump có thể sao lưu một cơ sở dữ liệu cụ thể, nhiều cơ sở dữ liệu, hoặc tất cả các cơ sở dữ liệu trên máy chủ.
  • Sao lưu cấu trúc và/hoặc dữ liệu: Bạn có thể chọn sao lưu chỉ cấu trúc của các bảng (không có dữ liệu), chỉ dữ liệu, hoặc cả hai.
  • Tùy chọn nén: Có thể nén tập tin sao lưu để tiết kiệm không gian lưu trữ.
  • Tương thích: Tập tin đầu ra của mysqldump là một tập tin văn bản chứa các lệnh SQL, có thể được đọc và sử dụng bởi bất kỳ công cụ quản lý MySQL nào.

Cách sử dụng cơ bản của mysqldump

Để sao lưu một cơ sở dữ liệu, bạn có thể sử dụng lệnh sau:

bash Copy
mysqldump -u [username] -p[password] [database_name] > backup.sql

Trong đó:

  • [username]: tên người dùng để truy cập vào cơ sở dữ liệu.
  • [password]: mật khẩu của người dùng (lưu ý không có khoảng trắng giữa -p và mật khẩu).
  • [database_name]: tên của cơ sở dữ liệu cần sao lưu.
  • backup.sql: tên tập tin đầu ra chứa sao lưu.

Sao lưu nhiều cơ sở dữ liệu

bash Copy
mysqldump -u [username] -p[password] --databases [database1] [database2] > backup.sql

Sao lưu tất cả cơ sở dữ liệu

bash Copy
mysqldump -u [username] -p[password] --all-databases > all_databases_backup.sql

Khôi phục từ một tập tin sao lưu

Để khôi phục cơ sở dữ liệu từ một tập tin sao lưu, bạn có thể sử dụng lệnh sau trong MySQL:

bash Copy
mysql -u [username] -p[password] [database_name] < backup.sql

mysqldump là một công cụ mạnh mẽ và linh hoạt, rất quan trọng trong việc quản lý và bảo mật dữ liệu trong MySQL. Việc sử dụng định kỳ mysqldump để sao lưu dữ liệu sẽ giúp đảm bảo an toàn dữ liệu và khả năng phục hồi nhanh chóng khi cần.

junior

junior

Gợi ý câu hỏi phỏng vấn

middle

Hãy giải thích sự khác nhau giữa TIMESTAMPDATETIME và khi nào nên sử dụng chúng?

middle

Lệnh DELIMITER trong MySQL được sử dụng để làm gì?

middle

Bạn biết gì về BLOB trong MySQL, nó được sử dụng để làm gì?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào