Mysqldump các tệp riêng biệt trên mỗi bảng

Trong hầu hết các trường hợp, mục đích là sao lưu cơ bản, thì các đặc quyền truy cập đọc đầy đủ là đủ. Tiếp theo, khởi chạy một thiết bị đầu cuối nơi bạn sẽ ra lệnh sao lưu các bảng trong cơ sở dữ liệu. Lệnh sao lưu bảng được hiển thị bên dưới

mysqldump [options] your_db_name [tbl_name ...]

Trong lệnh trên, [options] sẽ được thay thế bằng danh sách các tên hoặc cờ tùy chọn hợp lệ, phổ biến nhất trong số đó là -u và -p tương ứng cho người dùng và mật khẩu. [tbl_name …] sẽ được thay thế bằng các tên bảng được phân tách bằng dấu cách. Dưới đây là một ví dụ đầy đủ để sao lưu các bảng đơn hàng và sản phẩm cho cơ sở dữ liệu có tên là cửa hàng

mysqldump -u your_username -p store orders products > name_of_file.sql

Thiết bị đầu cuối sẽ nhắc bạn nhập mật khẩu được liên kết với người dùng cơ sở dữ liệu vì nó không được chuyển bằng cờ -p. Ký tự > là chuyển hướng đầu ra được sử dụng để tạo tệp kết xuất.  

b] Các bước xuất cơ sở dữ liệu

Các bước xuất cơ sở dữ liệu tương tự như xuất bảng chỉ khác một chút về ngữ nghĩa lệnh. Một lần nữa, đảm bảo rằng bạn đang ở trên máy chủ phù hợp và bạn có thông tin đăng nhập hợp lệ. Lệnh xuất cơ sở dữ liệu được hiển thị bên dưới

mysqldump -u your_username -p --databases db_name1 db_name2 db_name3 > name_of_file.sql

Trong lệnh trên, cơ sở dữ liệu cần xuất được cung cấp sau tùy chọn –databases. Nếu nhiều cơ sở dữ liệu được xuất, chúng được phân tách bằng dấu cách

c] Các bước để xuất máy chủ MySQL

Để xuất toàn bộ máy chủ MySQL, bạn có thể đưa ra lệnh bên dưới từ một thiết bị đầu cuối

mysqldump -u your_username -p --all-databases

Có một số tùy chọn quan trọng mà bạn nên biết, chẳng hạn như tùy chọn – Tương thích, được sử dụng khi bạn muốn bản xuất tương thích với các hệ thống cơ sở dữ liệu khác hoặc máy chủ MySQL cũ hơn

Nếu đang sử dụng PowerShell trên Windows, bạn nên sử dụng tùy chọn –result-file, ví dụ: –result-file=name_of_file. sql để chỉ định tên tệp sao cho tệp đầu ra ở định dạng ASCII để tệp có thể tải chính xác sau đó

mysqldump Cờ –quick làm gì?

Sao chép dữ liệu từ nơi này sang nơi khác cần có RAM, vì nó hoạt động như bộ nhớ tạm thời hoặc bộ nhớ đệm trong một thời gian. mysqldump cũng truy xuất dữ liệu và đổ nó vào từng hàng trong nội dung bảng. Nó chiếm toàn bộ tập dữ liệu cần di chuyển trong bộ nhớ đệm hoặc RAM trong máy tính

Xuất tập dữ liệu lớn gây ra sự cố vì RAM không thể tải một lượng lớn dữ liệu trong một lần. Để tránh xảy ra lỗi và lỗi hệ thống –cờ nhanh giúp đọc dữ liệu từ các bảng bằng phương pháp không yêu cầu RAM để vừa với các bảng lớn trong bộ nhớ

mysqldump khi sử dụng bảng khóa?

Nguồn hình ảnh

Hãy kiểm tra tệp sao lưu để xem có gì bên trong sau khi nó được tạo thành công. Nhấp đúp vào “sakila 20200424. sql” trong thư mục sao lưu

Nguồn hình ảnh

Tệp sao lưu, như trong hình trên, chứa nhiều câu lệnh T-SQL có thể được sử dụng để tạo lại các đối tượng

Làm cách nào để sao lưu cơ sở dữ liệu lớn mysqldump?

Trong phần này, bạn sẽ tìm hiểu các phương pháp khác nhau mà bạn có thể sử dụng để sao lưu các tập dữ liệu lớn bằng mysqldump

Phương pháp 1. Làm cách nào để nén đầu ra mysqldump?

  1. Người ta có thể sử dụng phương pháp nén tệp để nén bản sao lưu cơ sở dữ liệu thành định dạng gzip nhằm giảm kích thước dữ liệu cần sao lưu. Bạn có thể làm tương tự bằng cách chạy lệnh sau được đưa ra bên dưới
mysqldump -u root -ppassword wpdb | gzip > wpdb_backup.sql.gz
  1. Ở đây, 2 lệnh được thực hiện cùng nhau. Một là kết xuất tên cơ sở dữ liệu wpdb và một lệnh khác là nén cơ sở dữ liệu đã kết xuất thành định dạng gzip

Phương pháp 2. Làm cách nào để nhập cơ sở dữ liệu MySQL chung?

  1. Đăng nhập vào trình bao SQL của bạn bằng lệnh được cung cấp bên dưới
mysql -u root -p
  1. Bây giờ, hãy đặt độ dài bộ đệm mạng thành kích thước lớn như được cung cấp trong mã bên dưới
mysqldump [options] your_db_name [tbl_name ...]
0
  1. Đặt kích thước gói tối đa được phép thành số byte lớn như được cung cấp trong mã bên dưới
mysqldump [options] your_db_name [tbl_name ...]
1
  1. Để tránh bất kỳ sự chậm trễ hoặc lỗi nào, hãy tắt kiểm tra khóa ngoại bằng lệnh sau được cung cấp bên dưới
mysqldump [options] your_db_name [tbl_name ...]
2
  1. Bây giờ, hãy nhập tệp kết xuất của bạn bằng lệnh được cung cấp bên dưới
mysqldump [options] your_db_name [tbl_name ...]
3
  1. Sau đó, đừng quên kích hoạt kiểm tra khóa ngoại bằng lệnh đã cho bên dưới
mysqldump [options] your_db_name [tbl_name ...]
4

Phương pháp 3. Cơ sở dữ liệu riêng biệt thành các tệp dữ liệu riêng biệt

  1. Trong phương pháp này, người ta có thể cắt bản sao lưu cơ sở dữ liệu thành các tệp dữ liệu riêng biệt
  2. Bạn có thể tạo một tệp mới với danh sách tất cả các cơ sở dữ liệu bằng lệnh sau được cung cấp bên dưới
mysqldump [options] your_db_name [tbl_name ...]
5
  1. Bây giờ bạn có thể tạo một vòng lặp trong đó tất cả các cơ sở dữ liệu sẽ kết xuất từng cái một bằng cách sử dụng lệnh mysqldump dưới đây
mysqldump [options] your_db_name [tbl_name ...]
6

Làm cách nào để sử dụng mysqldump mà không cần mật khẩu?

MySQL luôn hỏi tên người dùng và mật khẩu khi bạn sao lưu cơ sở dữ liệu bằng lệnh mysqldump. Để tránh các lời nhắc lặp đi lặp lại và sự gián đoạn trong quá trình sao lưu, người ta có thể làm theo phương pháp này.  

  1. Bạn phải tạo một tệp trong thư mục chính của mình bằng thông tin đăng nhập SQL. Sử dụng lệnh đã cho để tạo một tệp
mysqldump [options] your_db_name [tbl_name ...]
7
  1. Bây giờ hãy thêm thông tin đăng nhập MySQL của bạn như được cung cấp bên dưới
mysqldump [options] your_db_name [tbl_name ...]
8
  1. Lưu và đóng tệp và mỗi lần bạn có thể cung cấp tệp thay cho thông tin đăng nhập như trong mã được cung cấp bên dưới
mysqldump [options] your_db_name [tbl_name ...]
9

Phần kết luận

Qua bài viết này các bạn đã có thể hiểu được lợi ích của việc thực hiện sao lưu dữ liệu thường xuyên. Bạn cũng đã được giới thiệu về công cụ mysqldump và bạn đã sử dụng nó để xuất bảng, cơ sở dữ liệu và toàn bộ máy chủ MySQL

Mặc dù đây chắc chắn là một khởi đầu tốt vì công cụ mysqldump rất linh hoạt và dễ sử dụng, nhưng nó không phải là một giải pháp sao lưu nhanh và có thể mở rộng. Điều này là do mặc dù sao lưu có thể mất một khoảng thời gian hợp lý, nhưng thường mất nhiều thời gian hơn để khôi phục dữ liệu, đặc biệt trong trường hợp kích thước dữ liệu lớn như thường xảy ra với các doanh nghiệp. Để lấp đầy khoảng trống này, MySQL cung cấp MySQL Enterprise Backup, một giải pháp trả phí

Tìm hiểu về các phương pháp khác để xuất cơ sở dữ liệu MySQL là bước tiếp theo

Một cách tiếp cận đơn giản hơn nữa sẽ là tận dụng một giải pháp được quản lý trực tuyến như nền tảng Hevo để truyền dữ liệu của bạn một cách liền mạch đến kho dữ liệu theo thời gian thực

Đăng ký dùng thử miễn phí 14 ngày và tận mắt trải nghiệm bộ Hevo giàu tính năng. Bạn cũng có thể xem mức giá tuyệt vời, điều này sẽ hỗ trợ bạn trong việc lựa chọn gói tốt nhất cho các yêu cầu của bạn

Chủ Đề