Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cách sao lưu cơ sở dữ liệu MySQL bằng cron Jobs

Bài viết này mô tả cách thiết lập cron job tự động sao lưu cơ sở dữ liệu MySQL vào một tệp theo các khoảng thời gian cụ thể.

Sao lưu cơ sở dữ liệu tự động bằng cron job

Có hai cách để chạy các công việc cron sao lưu cơ sở dữ liệu MySQL. Bạn có thể bao gồm thông tin đăng nhập MySQL trong chính lệnh cron job hoặc bạn có thể sử dụng tệp cấu hình để lưu trữ thông tin đăng nhập MySQL.

Phương pháp # 1:Bao gồm thông tin đăng nhập MySQL trong lệnh cron job

Bạn có thể chạy các bản sao lưu theo lịch trình của cơ sở dữ liệu MySQL bằng cách tạo cron job chạy lệnh sau:

/usr/bin/mysqldump --routines -u dbusername -p'dbpassword' dbname > ${HOME}/path/backup.sql

Thay thế dbusername bằng người dùng cơ sở dữ liệu, dbpassword bằng mật khẩu của người dùng cơ sở dữ liệu, dbname bằng cơ sở dữ liệu để sao lưu và đường dẫn bằng đường dẫn bạn muốn lưu trữ tệp sao lưu. Ví dụ này sử dụng backup.sql cho tên tệp của bản sao lưu, nhưng bạn có thể sử dụng bất kỳ tên tệp nào bạn muốn.

  • Các ký tự dấu nháy đơn (') xung quanh mật khẩu đảm bảo rằng mọi ký tự đặc biệt đều được xử lý chính xác.
  • Khi lệnh chạy thành công, không có đầu ra nào được tạo. Tuy nhiên, nếu có lỗi hoặc cấu hình sai, tùy thuộc vào cấu hình tài khoản của bạn, bạn có thể nhận được một thông báo e-mail có chứa đầu ra lệnh. Để chặn thông báo e-mail khi lệnh không thành công, hãy thêm văn bản sau vào cuối lệnh cron job:
    2>/dev/null

    Tuy nhiên, hầu hết mọi người đều muốn được thông báo khi công việc cron thất bại.

Để biết thông tin về cách sử dụng cPanel để tạo cron job, vui lòng xem bài viết này.

Phương pháp # 2:Sử dụng tệp cấu hình để lưu trữ thông tin đăng nhập MySQL

Ngoài ra, bạn có thể tạo tệp cấu hình trong thư mục chính để lưu thông tin đăng nhập MySQL. Sử dụng phương pháp này, bạn không phải đưa thông tin đăng nhập vào các lệnh cron job của mình. Để thực hiện việc này, hãy làm theo các bước sau:

  1. Tạo tệp có tên .my.cnf trong / nhà / của bạn thư mục tên người dùng, thay thế tên người dùng bằng tên người dùng tài khoản của bạn. Đảm bảo bạn bao gồm . ở đầu trong tên tệp.
  2. Sao chép và dán văn bản sau vào .my.cnf tập tin. Thay thế dbusername bằng người dùng cơ sở dữ liệu và thay thế dbpassword bằng mật khẩu của người dùng cơ sở dữ liệu:
    [client]
    user = dbusername
    password = "dbpassword"
    host = localhost
  3. Tạo một công việc cron chạy lệnh sau. Thay thế dbname bằng tên của cơ sở dữ liệu để sao lưu và thay thế đường dẫn bằng đường dẫn để lưu trữ tệp sao lưu. Ví dụ này sử dụng backup.sql cho tên tệp của bản sao lưu, nhưng bạn có thể sử dụng bất kỳ tên tệp nào bạn muốn:

    mysqldump --routines dbname > /path/backup.sql

    Khi lệnh chạy thành công, không có đầu ra nào được tạo. Tuy nhiên, nếu có lỗi hoặc cấu hình sai, tùy thuộc vào cấu hình tài khoản của bạn, bạn có thể nhận được một thông báo e-mail có chứa đầu ra lệnh. Để chặn thông báo e-mail khi lệnh không thành công, hãy thêm văn bản sau vào cuối lệnh cron job:

    2>/dev/null

    Tuy nhiên, hầu hết mọi người đều muốn được thông báo khi công việc cron thất bại.

    Để biết thông tin về cách sử dụng cPanel để tạo cron job, vui lòng xem bài viết này.

Thông tin khác

Để biết thêm thông tin về mysqldump chương trình, vui lòng truy cập http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách tìm một mục trong danh sách tại một vị trí được chỉ định trong MySQL

  2. Trong SQL, hai bảng tham chiếu đến nhau có được không?

  3. JSON_TYPE () - Nhận loại Giá trị JSON trong MySQL

  4. Làm cách nào để chỉ chọn ngày từ trường DATETIME trong MySQL?

  5. mysql chọn giá trị hàng động làm tên cột, một cột khác làm giá trị