MYSQL排程備份並達成異地備份-shell script筆記

2014-08-18 Bash, MySQL

近來在練習一些 scirpt 的編寫,盡量讓某些簡單的需求來讓自己的工作簡單些,不見得總是需要現有套件來執行任務,也加強自己的開發能力。

 

本篇範例為使用 Mysql 進行備份需求

 

script 目的:

1. 備份所有mysql資料庫,使用show databases列出清單

2. 檢測備份目錄的寫入權限

3. 異地備份,使用scp並加入key認證使script不用輸入密碼

4. 保留5天的備份

 

 

MysqlBackup.sh

 

 

ssh key 免認證

在要異地備份的remote server 建立key並複製到 mysql server。

 

setp.1 建立 rsa

 

setp.2 到 rsa 產生的目錄下可以看到已經產生出 id_rsa / id_rsa.pub 並複製一份到 mysql server 並加入 authorized_keys

 

 

排程備份 crond

 

 

復原備份

 

 

8 comments

  1. rocky 說:

    您好:
    我參考你的備份指令可以備份
    但還原時無法還原

    zcat database.2014-08-17_15_19_32.gz | mysql -uroot -ppassword -Dmrbs

    請問 -Dmrbs這一段該如何修改
    謝謝您

    • shazi7804 說:

      rcoky:

      您好:
      原文寫的比較不清楚,-Dmrbs 為你要還原的資料庫名稱

      zcat database.2014-08-17_15_19_32.gz | mysql -uroot -ppassword database

      若是要還原新的資料庫,請先將database建立起來。

      已修改,感謝指教

      • rocky 說:

        您好:我用下列指令要還原其中一個資料庫

        zcat Mysql.2015-03-10_10_21_28.tar.gz |mysql -uroot -XXXXXXX Syslog

        他出現下列錯誤訊息

        ERROR: ASCII ” appeared in the statement, but this is not allowed unless option –binary-mode is enabled and mysql is run in non-interactive mode. Set –binary-mode to 1 if ASCII ” is expected. Query: ‘2015-03-10/’.

        請問這要如何除錯,謝謝!

        • shazi7804 說:

          rocky:

          根據您的訊息,您使用的應該是mysql 5.6以上的
          提供您幾個方向嘗試

          1. 加入 –binary-mode 來處理含有blob的mysqlbinlog output

          zcat Mysql.2015-03-10_10_21_28.tar.gz |mysql –binary-mode=1 -uroot -XXXXXXX

          2. 將 databaes 由 ASCII 轉成 UTF-8 格式再匯入。

          • rocky 說:

            我是用centos 7 的mariadb

            執行
            zcat Mysql.2015-03-16_15_32_08.tar.gz | mysql -binary-mode=1 -uroot -p xxxxxxxxx 出現
            mysql: unknown option ‘-a’

            要請您再幫忙一下看是什麼問題了
            感恩

            • shazi7804 說:

              rocky:

              –binary-mode 這個參數,前面有兩個 – ,可能blog無法顯示出來造成您誤解

              您可用 mysql –help 找到相對應的參數。

  2. rocky 說:

    如果只要備份單一資料庫要怎麼改啊

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *

彙整

分類

open all | close all

License

訂閱 Mr. 沙先生 的文章

輸入你的 email 用於訂閱