Làm cách nào để sử dụng các cờ khác nhau trong khi xuất cơ sở dữ liệu MySQL?

Lam Cach Nao De Su Dung Cac Co Khac Nhau Trong Khi Xuat Co So Du Lieu Mysql



Cơ sở dữ liệu MySQL lưu trữ dữ liệu của người dùng theo cách có cấu trúc. Đôi khi dữ liệu này rất quan trọng đối với bất kỳ trường hợp mất dữ liệu nào, vì vậy người dùng nên sao lưu định kỳ hoặc hàng tuần. Tiện ích máy khách mysqldump hỗ trợ xuất cơ sở dữ liệu MySQL sang tệp SQL. Hướng dẫn này sẽ thảo luận về các cờ khác nhau trong khi xuất cơ sở dữ liệu MySQL bằng tiện ích máy khách mysqldump.

Xuất một cơ sở dữ liệu duy nhất sang một tệp SQL

Để xuất một cơ sở dữ liệu MySQL duy nhất trong tệp SQL, hãy sử dụng cú pháp sau:

mysqldump -u [tên người dùng] -p [tên db] > [tên tệp đầu ra].sql

Trong cú pháp cung cấp, tên người dùng MySQL của bạn, tên của cơ sở dữ liệu mà bạn muốn xuất và tên của tệp SQL mới sẽ được tạo. Hãy xem một ví dụ; đối với bài đăng này, tên người dùng là “ md ”, tên của cơ sở dữ liệu là “ linuxhint ” và tên của tệp SQL là “ đã xuất_db.sql” vì vậy lệnh sẽ trở thành thế này:







mysqldump -u md -p linuxhint > export_db.sql

Để xác nhận xem tệp có được tạo hay không sau khi thực hiện lệnh trước đó, hãy chạy:



ở đâu [tên tệp đầu ra]

Ghi chú : Cú pháp này sẽ được sử dụng để xác minh sự tồn tại của các tệp SQL mới được tạo, trong suốt bài đăng này.



Đầu ra sẽ hiển thị rằng cơ sở dữ liệu MySQL được xuất thành công trong tệp SQL:





Xuất nhiều cơ sở dữ liệu được chỉ định sang một tệp SQL

Mysqldump cũng cung cấp khả năng xuất nhiều cơ sở dữ liệu trong một tệp SQL duy nhất bằng cách sử dụng “ –cơ sở dữ liệu ' lá cờ. Cú pháp để xuất nhiều cơ sở dữ liệu được đưa ra dưới đây:



mysqldump -u [tên người dùng] -p --databases [db-name-1] [db-name-2] > [tên-tệp đầu ra].sql

Nếu bạn muốn xuất “ 2 ” hoặc nhiều cơ sở dữ liệu trong tệp, cung cấp tên của chúng với khoảng trắng ở giữa. Đối với bài đăng này, hãy xuất khẩu “ linuxhint ' Và ' mớilinuxhint ” cơ sở dữ liệu trong một tệp có tên “ export_db_databases.sq l” bằng cách gõ lệnh này:

mysqldump -u md -p --databases linuxhint newlinuxhint > export_db_databases.sql

Đầu ra không có lỗi cho biết quá trình thực hiện thành công, hãy sử dụng “ Ở đâu ” lệnh để xác minh xem tệp đã được tạo hay chưa:

Nhiều cơ sở dữ liệu của bạn được xuất trong một tệp MySQL.

Xuất tất cả cơ sở dữ liệu sang tệp SQL

Người dùng có thể cảm thấy cần xuất tất cả cơ sở dữ liệu có sẵn trong máy chủ MySQL sang tệp SQL. Mysqldump cho phép bạn làm điều đó bằng cách sử dụng “ –tất cả cơ sở dữ liệu ' lá cờ. Cú pháp được đưa ra dưới đây:

mysqldump -u [tên người dùng] -p --all-databases > [tên tệp đầu ra].sql

Cung cấp tên người dùng và tên của tệp SQL. Đối với bài đăng này, tên người dùng là “ md ” và tên của tệp SQL là “ export_db_all_databases.sql ”, nên câu lệnh sẽ như thế này:

mysqldump -u md -p --all-databases > export_db_all_databases.sql

Đầu ra hiển thị rằng tệp được tạo thành công:

Chỉ xuất cấu trúc của cơ sở dữ liệu sang tệp SQL:

Các ' --không hẹn hò ” cờ của mysqldump hỗ trợ người dùng chỉ xuất cấu trúc của cơ sở dữ liệu mà không xuất dữ liệu. Sử dụng cú pháp đã cho dưới đây:

mysqldump -u [tên người dùng] -p --no-data [tên db] > [tên tệp đầu ra].sql

Đối với bài đăng này, Hãy xuất khẩu “ linuxhint ” cơ sở dữ liệu chỉ có cấu trúc trong tệp SQL “ export_db_struct.sql ”, bằng cách chạy lệnh này:

mysqldump -u md -p --no-data linuxhint > export_db_structure.sql

Để xác minh xem tệp có được tạo hay không:

Đầu ra cho thấy tệp SQL được tạo thành công.

Chỉ xuất dữ liệu từ một bảng cụ thể sang tệp SQL

Đôi khi, người dùng chỉ muốn xuất dữ liệu của một bảng cụ thể mà không muốn xuất thông tin của “ TẠO NÊN ” tuyên bố, để o sử dụng “ –no-tạo-thông tin ” cờ trong mysqldump, như được hiển thị trong cú pháp:

mysqldump -u [tên người dùng] -p [tên db] [tên bảng] --no-create-info > [tên tệp đầu ra].sql

Nếu bạn muốn xuất dữ liệu của “ nhà cung cấp ” trong một tệp SQL có tên “ export_db_specific_table.sql ” bằng cách chạy lệnh này:

mysqldump -u md -p nhà cung cấp linuxhint --no-create-info > export_db_specific_table.sql

Để xác minh xem tệp được tạo thành công hay không, hãy sử dụng “ Ở đâu ' yêu cầu:

Đầu ra hiển thị rằng tệp SQL được tạo thành công.

Xuất nhiều bảng được chỉ định sang một tệp SQL

Có thể sử dụng mysqldump để xuất nhiều bảng được chỉ định bằng cách sử dụng “ -những cái bàn ” gắn cờ trong tệp SQL bằng cú pháp sau:

mysqldump -u [username] -p [db-name] --tables [table-name1] [table-name2] > [output-file-name].sql

Ví dụ: nếu người dùng muốn xuất “ nhà cung cấp ' Và ' mặt hàng ” bảng từ cơ sở dữ liệu “ linuxhint ” trong một tệp SQL có tên “ export_db_specific_tables.sql ”, chạy lệnh dưới đây:

mysqldump -u md -p linuxhint --tables các mặt hàng của nhà cung cấp > export_db_specific_table2.sql

Đầu ra không có lỗi hiển thị rằng lệnh được thực thi thành công, bạn có thể sử dụng “ Ở đâu ” để xác nhận việc tạo tệp SQL:

Cờ có thể được sử dụng với mysqldump

Phần còn lại của các cờ sẽ chỉ được thảo luận bằng cách sử dụng cú pháp trong suốt bài đăng này. Thay thế ' tên db ” với tên cơ sở dữ liệu của bạn,” tên bảng ” với tên của bảng và “ tên tệp xuất ra ” với tên cho tệp SQL của bạn sẽ được tạo khi thực hiện thành công lệnh xuất.

Xuất nhiều hàng của bảng bằng một câu lệnh chèn đơn trong tệp SQL

Trong khi làm việc với cơ sở dữ liệu chứa các bảng lớn, “ –mở rộng-chèn ” cờ có thể được sử dụng để xuất chúng một cách hiệu quả vì nó sử dụng nhiều hàng “ CHÈN ” câu lệnh, thay vì một hàng đơn lẻ “ CHÈN ” là phương thức mặc định trong khi xuất bảng. Nó tăng tốc thời gian xuất khẩu. Sử dụng cú pháp này để sử dụng “ –mở rộng-chèn ' lá cờ:

mysqldump -u [tên người dùng] -p [tên db] [tên bảng] --extends-insert > [tên tệp đầu ra].sql

Xuất bản ghi từ một bảng cụ thể phù hợp với một điều kiện

Để xuất các bản ghi từ một bảng trong đó một điều kiện nhất định được đáp ứng, hãy sử dụng “ -Ở đâu ” cờ xác định điều kiện để lọc các bản ghi sẽ được xuất. Để làm như vậy, sử dụng cú pháp này:

mysqldump -u [tên người dùng] -p [tên db] [tên bảng] --where='condition'> [tên tệp đầu ra].sql

Điều kiện có thể là bất cứ điều gì, ví dụ, “ id < 30 ”.

Xuất dữ liệu nhị phân bằng cách chuyển đổi sang định dạng thập lục phân

Các ' –hex-blob ” cờ hỗ trợ xuất dữ liệu nhị phân ở định dạng thập lục phân. Theo mặc định, dữ liệu nhị phân được định dạng ở định dạng nhị phân. Sử dụng cờ này có lợi nếu có liên quan đến độ chính xác của dữ liệu; mặt khác, nó tiêu tốn nhiều thời gian hơn so với xuất bình thường. Cú pháp được đưa ra dưới đây:

mysqldump -u [tên người dùng] -p [tên db] [tên bảng] --hex-blob > [tên tệp đầu ra].sql

Xuất cơ sở dữ liệu ở định dạng XML

Để xuất cơ sở dữ liệu ở định dạng XML, hãy sử dụng “–xml ” cờ trong lệnh mysqldump như được hiển thị trong cú pháp:

mysqldump -u [tên người dùng] -p --xml [tên db] > [tên tệp đầu ra].xml

Xuất cơ sở dữ liệu với câu lệnh “DROP DATABASE” trong tệp SQL

Để tạo tệp xuất bằng cách thêm “ CƠ SỞ DỮ LIỆU THẢ ” tuyên bố trước “ TẠO NÊN CƠ SỞ DỮ LIỆU ” để trong trường hợp nhập, nó sẽ loại bỏ cơ sở dữ liệu nếu nó đã tồn tại bằng cách sử dụng “ –add-drop-cơ sở dữ liệu ”. Sử dụng cú pháp này:

mysqldump -u [tên người dùng] -p --add-drop-database [db-name] > [tên tệp đầu ra].sql

Xuất cơ sở dữ liệu với câu lệnh “DROP TABLE” trong tệp SQL

Để tạo tệp xuất bằng cách thêm “ THẢ BÀN ” tuyên bố trước “ TẠO BẢNG ” để trong trường hợp nhập, nó sẽ loại bỏ bảng nếu nó đã tồn tại bằng cách sử dụng “ –add-drop-table ”. Sử dụng cú pháp này:

mysqldump -u [tên người dùng] -p --add-drop-table [tên-db] > [tên-tệp-đầu ra].sql

Xuất cơ sở dữ liệu bằng cách loại trừ một bảng nhất định trong tệp SQL

Để xuất cơ sở dữ liệu bằng cách loại trừ bảng đã chỉ định bằng cách sử dụng “ –ignore-bảng ” gắn cờ trong lệnh mysqldump bằng cú pháp sau:

mysqldump -u [tên người dùng] -p --ignore-table=[db-name].[table-name] [db-name] > [output-file-name].sql

Xuất cơ sở dữ liệu và nén tệp SQL

Để tiết kiệm dung lượng ổ đĩa, người dùng có thể sử dụng công cụ gzip để nén tệp SQL chứa cơ sở dữ liệu đã xuất, sử dụng “ –nén ' lá cờ. Cú pháp để nén tệp SQL là:

mysqldump -u [tên người dùng] -p --compress [tên db] | gzip > [tên tệp đầu ra].sql.gz

Bạn đã tìm hiểu về các cờ khác nhau của mysqldump.

Phần kết luận

Tiện ích máy khách mysqldump hỗ trợ tạo bản sao lưu hợp lý của cơ sở dữ liệu vào tệp SQL. Nó được sử dụng để xuất một và nhiều cơ sở dữ liệu với dữ liệu và cấu trúc của chúng. Người dùng cũng có thể định dạng và nén các tệp SQL. Bài đăng này đã trình bày các cờ khác nhau của mysqldump trong khi xuất cơ sở dữ liệu MySQL.