Hướng dẫn mysqldump linux - missaldump linux

Đôi khi cần import nhưng file lớn tới vài trăm MB mà bạn sử dụng giao diện để export/import sẽ mất thời gian và thao tác dễ fail, khó đó bạn nên sử dụng cmd của linux để xử lý cho nhanh và an toàn. Để thực hiện được AZDIGI xin hướng dẫn bạn như sau. AZDIGI xin hướng dẫn bạn như sau.

Đầu tiên thì bạn cần đăng nhập vào VPS Linux với giao thức SSH. Sau đó sử dụng các lệnh tương ứng như dưới đây để backup và restore database.

Lệnh mysqldump để backup database

Để backup database, bạn cần có đầy đủ thông tin của database cần backup gồm : user , database name, password của database.

Khi có đầy đủ thông tin các bạn chạy lệnh:

mysqldump --opt -u admin_azdigi -p admin_azdigi > tenfilemoi.sql

Hướng dẫn mysqldump linux - missaldump linux

Trong đó:

  • mysql -u admin_azdigi1 -p admin_azdigi1 < tenfile.sql
    4 : User của database
  • mysql -u admin_azdigi1 -p admin_azdigi1 < tenfile.sql
    4 : Tên của database
  • mysql -u admin_azdigi1 -p admin_azdigi1 < tenfile.sql
    6 : Tên tập tin cần lưu lại, tập tin này phải có dạng mở rộng là
    mysql -u admin_azdigi1 -p admin_azdigi1 < tenfile.sql
    7.
  • mysql -u admin_azdigi1 -p admin_azdigi1 < tenfile.sql
    8 : Các tùy chọn mysqldump

Lệnh mysql để restore database

Để restore database, bạn cần tạo mới một database gồm: user database, database name, pass.

Khi có đầy đủ thông tin các bạn chạy lệnh:

Trong đó:

Hướng dẫn mysqldump linux - missaldump linux

Trong đó:

  • mysql -u admin_azdigi1 -p admin_azdigi1 < tenfile.sql
    4 : User của database
  • mysql -u admin_azdigi1 -p admin_azdigi1 < tenfile.sql
    4 : Tên của database
  • mysql -u admin_azdigi1 -p admin_azdigi1 < tenfile.sql
    6 : Tên tập tin cần lưu lại, tập tin này phải có dạng mở rộng là
    mysql -u admin_azdigi1 -p admin_azdigi1 < tenfile.sql
    7.

mysql -u admin_azdigi1 -p admin_azdigi1 < tenfile.sql
8 : Các tùy chọn mysqldump

Lệnh mysql để restore database
• Ticket/Email: Bạn dùng email đăng ký dịch vụ gửi trực tiếp về

Để restore database, bạn cần tạo mới một database gồm: user database, database name, pass.

mysql -u admin_azdigi1 -p admin_azdigi1 < tenfile.sql
Quân, hiện đang công tác tại AZDIGI với vị trí là SysAdmin. Mình đam mê viết Blog. Vì viết Blog giúp mình trau dồi được nhiều kỹ năng. Học hỏi thêm nhiều kiến thức mới, từ đó mình có thể chia sẻ đến các bạn các bài viết tài liệu bổ ích hơn.

mysql -u admin_azdigi1 -p admin_azdigi1 < tenfile.sql
9 : User của database

mysql -u admin_azdigi1 -p admin_azdigi1 < tenfile.sql
9 : Tên của database

Hướng dẫn mysqldump linux - missaldump linux

  • Sao lưu Database
      • Cú pháp lệnh Mysqldump
      • Sao lưu độc lập một cơ sở dữ liệu
      • Sao lưu nhiều cơ sở dữ liệu
      • Sao lưu tất cả cơ sở dữ liệu
      • Sao lưu tất cả cơ sở dữ liệu với các file riêng biệt
      • Sao lưu cơ sở dữ liệu với định dạng file nén
      • Sao lưu cơ sở dữ liệu với tham số thời gian
  • Restore MySql như thế nào?
      • Khôi phục Database

Hướng dẫn này giải thích cách sao lưu và khôi phục cơ sở dữ liệu MySQL hoặc MariaDB từ dòng lệnh bằng tiện ích mysqldump.

Các tệp sao lưu được tạo bởi tiện ích mysqldump về cơ bản là một tập hợp các câu lệnh SQL có thể được sử dụng để tạo lại cơ sở dữ liệu gốc. Lệnh mysqldump cũng có thể tạo các tệp ở định dạng CSV và XML.

Bạn cũng có thể sử dụng tiện ích mysqldump để chuyển cơ sở dữ liệu MySQL của bạn sang một máy chủ MySQL khác.

Nếu bạn không sao lưu cơ sở dữ liệu của mình, lỗi phần mềm hoặc lỗi ổ cứng có thể là thảm họa. Để giúp bạn tiết kiệm rất nhiều thời gian và sự thất vọng, chúng tôi khuyên bạn nên đề phòng thường xuyên sao lưu cơ sở dữ liệu MySQL của mình.

Sao lưu Database

Cú pháp lệnh Mysqldump

mysqldump [options] > file.sql
  • mysqldump [options] > file.sql
    2– Các tùy chọn mysqldump tùy chọn mysqldump
  • mysqldump [options] > file.sql
    3 – Tên file (sao lưu)

Trường hợp sử dụng phổ biến nhất của công cụ mysqldump là sao lưu một cơ sở dữ liệu.

Ví dụ: để tạo bản sao lưu cơ sở dữ liệu có tên 

mysqldump [options] > file.sql
4người dùng 
mysqldump [options] > file.sql
5và lưu nó vào một tệp có tên 
mysqldump [options] > file.sql
6bạn sẽ chạy lệnh sau:

mysqldump -u root -p database_name > database_name.sql

Sao lưu độc lập một cơ sở dữ liệu

Bạn sẽ được nhắc là phải nhập mật khẩu root. Sau khi xác thực thành công, quá trình backup sẽ bắt đầu. Tùy thuộc vào kích thước cơ sở dữ liệu, quá trình có thể mất một thời gian.

Nếu bạn đã đăng nhập với cùng một người dùng mà bạn đang sử dụng để thực hiện xuất và người dùng đó không yêu cầu mật khẩu, bạn có thể bỏ qua các tùy chọn 

mysqldump [options] > file.sql
7và 
mysqldump [options] > file.sql
8:

mysqldump database_name > database_name.sql

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

Để sao lưu nhiều cơ sở dữ liệu MySQL bằng một lệnh, bạn cần sử dụng 

mysqldump [options] > file.sql
9tùy chọn theo sau là danh sách các cơ sở dữ liệu bạn muốn sao lưu. Mỗi tên cơ sở dữ liệu phải được phân tách bằng dấu cách.

mysqldump -u root -p --databases database_name_a database_name_b > databases_a_b.sql

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

Sử dụng 

mysqldump -u root -p database_name > database_name.sql
0tùy chọn để sao lưu tất cả các cơ sở dữ liệu MySQL:

mysqldump -u root -p --all-databases > all_databases.sql

Giống như với ví dụ trước, lệnh trên sẽ tạo một tệp sao lưu duy nhất chứa tất cả các cơ sở dữ liệu

Sao lưu tất cả cơ sở dữ liệu với các file riêng biệt

Các 

mysqldump -u root -p database_name > database_name.sql
1tiện ích không cung cấp một tùy chọn để sao lưu tất cả các cơ sở dữ liệu các tập tin riêng biệt nhưng chúng ta dễ dàng đạt được điều đó với một đơn giản bash 
mysqldump -u root -p database_name > database_name.sql
2vòng lặp :

for DB in $(mysql -e 'show databases' -s --skip-column-names); do
    mysqldump $DB > "$DB.sql";
done

Sao lưu cơ sở dữ liệu với định dạng file nén

Nếu kích thước cơ sở dữ liệu rất lớn thì nên nén đầu ra. Để làm điều đó, chỉ cần thêm định dạng

mysqldump -u root -p database_name > database_name.sql
3 và chuyển hướng nó đến một tệp như dưới đây:

mysqldump database_name | gzip > database_name.sql.gz

Sao lưu cơ sở dữ liệu với tham số thời gian

Nếu bạn muốn giữ nhiều bản sao lưu trong cùng một vị trí, thì bạn có thể thêm ngày hiện tại vào tên tệp sao lưu:

mysqldump  database_name > database_name-$(date +%Y_%m_%d).sql

Lệnh trên sẽ tạo một tệp có định dạng sau 

mysqldump -u root -p database_name > database_name.sql
4

Restore MySql như thế nào?

Bạn có thể phục hồi (Restore) lại database với cú pháp như sau

mysql -u admin_azdigi1 -p admin_azdigi1 < tenfile.sql
0
mysql -u admin_azdigi1 -p admin_azdigi1 < tenfile.sql
1

Khôi phục Database

Trong hầu hết các trường hợp, bạn sẽ cần tạo một cơ sở dữ liệu để nhập vào. Nếu cơ sở dữ liệu đã tồn tại, trước tiên bạn cần xóa nó.

Trong ví dụ sau, lệnh đầu tiên sẽ tạo một cơ sở dữ liệu có tên database_name và sau đó nó sẽ nhập kết xuất 

mysqldump -u root -p database_name > database_name.sql
5

mysql -u admin_azdigi1 -p admin_azdigi1 < tenfile.sql
2

Nếu bạn đã sao lưu tất cả các cơ sở dữ liệu của mình bằng -all-databases tùy chọn và bạn muốn khôi phục một cơ sở dữ liệu từ một tệp sao lưu có chứa nhiều cơ sở dữ liệu, hãy sử dụng –one-database tùy chọn như dưới đây:

mysql -u admin_azdigi1 -p admin_azdigi1 < tenfile.sql
3