3.2.8 備份函式

本節提供關於 MGM API 中提供的用於啟動與停止 NDB 叢集備份的函式資訊。

ndb_mgm_start_backup()

描述

此函式用於啟動 NDB 叢集的備份。

簽章
int ndb_mgm_start_backup
    (
      NdbMgmHandle          handle,
      int                   wait,
      unsigned int*         id,
      struct ndb_mgm_reply* reply
    )
參數

此函式需要此處列出的四個參數

  • 管理伺服器 控制代碼 (一個 NdbMgmHandle)。

  • 一個 wait 旗標,具有以下可能值

    • 0:不等待備份確認。

    • 1:等待備份啟動。

    • 2:等待備份完成。

  • 建立具有備份 ID id 的備份。(這也是函式的傳回值。)

    如果 wait 設定為等於 0,則不會傳回備份 id

  • 一個指向 ndb_mgm_reply 結構的指標,以容納一個 reply

傳回值

成功時,備份 ID (id)。如果發生失敗,則函式會傳回 -1

ndb_mgm_start_backup2()

描述

此函式用於啟動 NDB 叢集的備份。它與 ndb_mgm_start_backup() 相同,但它額外指定一個值,供下次進行備份時使用。

簽章
int ndb_mgm_start_backup
    (
      NdbMgmHandle          handle,
      int                   wait,
      unsigned int*         id,
      struct ndb_mgm_reply* reply,
      unsigned int          nextBackupId
    )
參數

此函式需要此處列出的五個參數

  • 管理伺服器 控制代碼 (一個 NdbMgmHandle)。

  • 一個 wait 旗標,具有以下可能值

    • 0:不等待備份確認。

    • 1:等待備份啟動。

    • 2:等待備份完成。

  • 建立具有備份 ID id 的備份。(這也是函式的傳回值。)

    如果 wait 設定為等於 0,則不會傳回備份 id

  • 一個指向 ndb_mgm_reply 結構的指標,以容納一個 reply

  • 下次進行備份的 ID 會設定為 nextBackupID + 1 的值。

傳回值

成功時,會傳回作為 id 傳遞的備份 ID。否則,函式會傳回 -1

ndb_mgm_start_backup3()

描述

此函式用於啟動 NDB 叢集的備份。它與 ndb_mgm_start_backup2() 相同,但會加入一個引數,用於指定備份的狀態應符合備份開始時或備份完成時的叢集狀態。

簽章
int ndb_mgm_start_backup
    (
      NdbMgmHandle          handle,
      int                   wait,
      unsigned int*         id,
      struct ndb_mgm_reply* reply,
      unsigned int          nextBackupId,
      unsigned int          backupPoint
    )
參數

此函式需要此處列出的六個參數

  • 管理伺服器 控制代碼 (一個 NdbMgmHandle)。

  • 一個 wait 旗標,具有以下可能值

    • 0:不等待備份確認。

    • 1:等待備份啟動。

    • 2:等待備份完成。

  • 建立具有備份 ID id 的備份。(這也是函式的傳回值。)

    如果 wait 設定為等於 0,則不會傳回備份 id

  • 一個指向 ndb_mgm_reply 結構的指標,以容納一個 reply

  • 下次進行備份的 ID 會設定為 nextBackupID + 1 的值。

  • 如果備份的狀態應反映備份開始時的叢集狀態,則 backupPoint 為 1,如果其狀態應反映備份完成時的叢集狀態,則為 0。使用 1 相當於呼叫 ndb_mgm 用戶端 START BACKUP 命令,其中包含 SNAPSHOTSTART;0 相當於呼叫包含 SNAPSHOTEND 的命令。

傳回值

成功時,會傳回作為 id 傳遞的備份 ID。否則,函式會傳回 -1

ndb_mgm_start_backup4()

描述

此函式用於啟動 NDB 叢集的備份。它與 ndb_mgm_start_backup3() 相同,但它會使用提供的指定長度的密碼產生加密備份。

此函式在 NDB 8.0.22 中加入。

簽章
int ndb_mgm_start_backup
    (
      NdbMgmHandle          handle,
      int                   wait,
      unsigned int*         id,
      struct ndb_mgm_reply* reply,
      unsigned int          nextBackupId,
      unsigned int          backupPoint,
      const char*           password,
      unsigned int          password_length
    )
參數

此函式需要此處列出的八個參數

  • 管理伺服器 控制代碼 (一個 NdbMgmHandle)。

  • 一個 wait 旗標,具有以下可能值

    • 0:不等待備份確認。

    • 1:等待備份啟動。

    • 2:等待備份完成。

  • 建立具有備份 ID id 的備份。(這也是函式的傳回值。)

    如果 wait 設定為等於 0,則不會傳回備份 id

  • 一個指向 ndb_mgm_reply 結構的指標,以容納一個 reply

  • 下次進行備份的 ID 會設定為 nextBackupID + 1 的值。

  • 如果備份的狀態應反映備份開始時的叢集狀態,則 backupPoint 為 1,如果其狀態應反映備份完成時的叢集狀態,則為 0。使用 1 相當於呼叫 ndb_mgm 用戶端 START BACKUP 命令,其中包含 SNAPSHOTSTART;0 相當於呼叫包含 SNAPSHOTEND 的命令。

  • 用於保護加密備份的密碼。這是一個長度最多 256 個字元的字串;密碼字串中可以使用任何可列印的 ASCII 字元,但 !'"$%\^ 除外。

  • 密碼的長度。

可以指定空的密碼,但不建議這樣做。

傳回值

成功時,會傳回作為 id 傳遞的備份 ID。否則,函式會傳回 -1

ndb_mgm_abort_backup()

描述

此函式用於停止 NDB 叢集備份。

簽章
int ndb_mgm_abort_backup
    (
      NdbMgmHandle          handle,
      unsigned int          id,
      struct ndb_mgm_reply* reply)
參數

此函式使用 3 個參數

  • 一個 NdbMgmHandle

  • 要中止的備份的 id

  • 一個指向 ndb_mgm_reply 結構的指標。

傳回值

如果發生錯誤,此函式會傳回 -1