全部產品
Search
文件中心

Cloud Backup:Database Backup的常見問題

更新時間:Dec 04, 2025

本文為您介紹Cloud Backup使用中Database Backup常見的問題以及對應的解決辦法。

問題匯總

資料庫執行個體相關問題

用戶端相關問題

備份相關問題

恢複相關問題

備份庫相關問題

資料庫執行個體相關問題

Database Backup註冊執行個體失敗如何處理?

請先確認當前伺服器(本機伺服器或ECS)上是否已安裝過Database Backup用戶端。如果已安裝,請參照卸載用戶端,卸載Database Backup用戶端並清理相關設定檔,然後重新嘗試註冊執行個體。

資料庫執行個體的狀態顯示為“未啟用”如何處理?

image.png

MySQL

  1. 註冊資料庫時輸入的数据库用户名不正確、許可權不足或者密码錯誤,確認使用者名稱和密碼正確後,請為該備份帳號添加足夠的許可權。建議您建立專門用於備份的使用者,然後重試。

    具體操作,請參見建立MySQL備份帳號和配置許可權

  2. 您可以執行systemctl restart dbackup3-agent重啟備份用戶端。

  3. 如果重啟備份用戶端後資料庫執行個體仍未能啟用,建議收集相關日誌以進行進一步分析。

    用戶端日誌的路徑為/var/log/dbackup3/agent.log

Oracle

  1. 註冊資料庫時輸入的数据库用户名不正確、許可權不足或者密码錯誤。請確認使用者名稱和密碼正確後,為該備份帳號添加足夠的許可權。建議您建立專門用於備份的使用者,然後重試。

    具體操作,請參見建立Oracle備份帳號和配置許可權

  2. 重啟備份用戶端。

    • Linux系統:執行systemctl restart dbackup3-agent命令重啟備份用戶端。

    • Windows系統:

      1. 按下Win + R鍵開啟“運行”對話方塊。

      2. 輸入services.msc並按斷行符號鍵,開啟服務管理介面。

      3. 在服務列表中找到dbackup3-agent服務。

      4. 檢查該服務的狀態是否為“正在運行”。如果狀態不是“正在運行”,則按右鍵dbackup3-agent服務,並選擇“重新啟動”來啟動它。

  3. 如果重啟備份用戶端後資料庫執行個體仍未能啟用,建議收集相關日誌以進行進一步分析。

    • Linux系統的用戶端日誌的路徑為/var/log/dbackup3/agent.log

    • Windows系統的用戶端日誌的路徑為本地磁碟(C)> ProgramData > scutech > dbackup3 > agent > log > dbackup3-agent.log

SQL Server

  1. 註冊資料庫時輸入的数据库用户名不正確、許可權不足或者密码錯誤。請確認使用者名稱和密碼正確後,為該備份帳號添加足夠的許可權。建議您建立專門用於備份的使用者,然後重試。

    具體操作,請參見建立SQL Server備份帳號和配置許可權

  2. 重啟dbackup3-agent服務。

    1. 按下Win + R鍵開啟“運行”對話方塊。

    2. 輸入services.msc並按斷行符號鍵,開啟服務管理介面。

    3. 在服務列表中找到dbackup3-agent服務。

    4. 檢查該服務的狀態是否為“正在運行”。如果狀態不是“正在運行”,則按右鍵dbackup3-agent服務,並選擇“重新啟動”來啟動它。

  3. 如果重啟服務後資料庫執行個體仍未能啟用,建議收集相關日誌以進行進一步分析。

    用戶端日誌的路徑為本地磁碟(C)> ProgramData > scutech > dbackup3 > agent > log > dbackup3-agent.log

資料庫執行個體狀態顯示為“数据库离线”如何處理?

image

MySQL

  1. 查詢MySQL資料庫狀態。

    請登入ECS執行個體,使用systemctl status mysqld命令查詢MySQL資料庫狀態,發現其進程為inactive狀態,表示MySQL資料庫服務未啟動。

  2. 重啟MySQL服務。

    執行systemctl start mysqld命令重啟MySQL服務後,控制台上的資料庫狀態顯示為在线

Oracle

  1. 查詢Oracle資料庫監聽狀態。

    登入ECS執行個體,執行如下命令:

    su - oracle
    lsnrctl status

    當服務已啟動時,其狀態顯示為running;若服務未啟動,則會看到TNS: no listener的提示。

  2. 查詢Oracle資料庫運行狀態。

    su - oracle
    sqlplus /nolog
    conn /as sysdba
    SELECT name, status FROM v$instance;

    v$instance視圖提供了資料庫執行個體的相關資訊,其中status列顯示執行個體的狀態。如果狀態為OPEN,表示資料庫當前已經開啟並且可以接受串連。

  3. 重啟Oracle監聽器。

    啟動Oracle監聽器服務,監聽來自用戶端的串連請求。

    su - oracle
    lsnrctl start
  4. 重啟Oracle資料庫執行個體。

    在SQL*Plus中,使用系統管理員身份登入,然後啟動Oracle執行個體。

    sqlplus / as sysdba;
    STARTUP;

    啟動後,控制台上的資料庫狀態顯示為在线

SQL Server

  1. 查詢SQL Server資料庫狀態。

    1. 按下Win + R鍵開啟“運行”對話方塊。

    2. 輸入services.msc並按斷行符號鍵,開啟服務管理介面。

    3. 在服務列表中找到SQL Server服務。例如“SQL Server (MSSQLSERVER)”。

    4. 查看服務狀態,可能顯示為“正在運行”、“已停止”或“暫停”。

  2. 重啟SQL Server服務。

    如果SQL Server資料庫狀態為“已停止”或“暫停”,按右鍵SQL Server服務,選擇“啟動”。如果“啟動”選項呈灰色,建議您以管理員身份重新開啟服務管理員,然後重試一次。啟動後,控制台上的資料庫狀態顯示為在线

註冊資料庫執行個體後,為什麼ECS資料庫執行個體頁簽出現多條資料庫執行個體?

如果一台ECS上部署了多個資料庫執行個體,雲備份控制台會在註冊環節將其全部掃描並展示出來。

image

註冊資料庫執行個體後,無法擷取資料庫狀態如何處理?

  • 問題現象

    資料庫執行個體註冊完成後,雲備份控制台持續無法擷取資料庫狀態。

  • 問題原因

    當前作業系統不在資料庫支援範圍內。

  • 解決方案

    建議更換為資料庫支援的作業系統後重試。

用戶端相關問題

如何查看用戶端進程狀態、日誌路徑及重啟用戶端

  • Linux系統

    1. 查看備份用戶端的進程狀態。

      執行systemctl status dbackup3-agentservice dbackup3-agent status命令查看Database Backup用戶端的進程狀態。

      其中active或dbackup3-agent is running...表示用戶端運行正常。

      ● dbackup3-agent.service - dbackup3 agent daemon
         Loaded: loaded (/usr/lib/systemd/system/dbackup3-agent.service; enabled; vendor preset: disabled)
         Active: active (running) since Mon 2023-12-11 13:47:34 CST; 1min 13s ago
       Main PID: 22192 (dbackup3-agent)
         CGroup: /system.slice/dbackup3-agent.service
                 └─22192 /opt/scutech/dbackup3/bin/dbackup3-agent -f /etc/opt/scutech/dbackup3/agent/svc.conf.d
      
      Dec 11 13:47:34 iZbp1******gktZ systemd[1]: Started dbackup3 agent daemon.
    2. 重啟備份用戶端。

      執行systemctl restart dbackup3-agentservice dbackup3-agent restart命令重啟用戶端進程後,當控制台上資料庫用戶端狀態顯示為已安裝,則表示用戶端狀態已恢複正常。

      image

    用戶端日誌路徑位於:/var/log/dbackup3/agent.log

  • Windows系統

    1. 按下Win + R鍵開啟“運行”對話方塊。

    2. 輸入services.msc並按斷行符號鍵,開啟服務管理介面。

    3. 在服務列表中找到dbackup3-agent服務。

    4. 檢查該服務的狀態是否為“正在運行”。如果狀態不是“正在運行”,則按右鍵dbackup3-agent服務,並選擇“重新啟動”來啟動它。

    用戶端日誌路徑位於:C:\ProgramData\scutech\dbackup3\agent\log\dbackup3-agent.log

資料庫用戶端狀態顯示為離線如何處理?

  • 問題現象

    資料庫用戶端狀態顯示為離線

    image

  • 問題原因

    當用戶端狀態顯示為離線時,表示雲備份未能接收到用戶端進程的心跳訊號。這種情況可能由多種原因造成,例如用戶端因記憶體不足而被自動終止、用戶端所在的裝置已關機等。

  • 解決方案

    通過如何查看用戶端進程狀態、日誌路徑及重啟用戶端確認用戶端的狀態,然後重新啟動用戶端。當用戶端狀態顯示為運行中時,請稍作等待。當控制台上資料庫用戶端狀態顯示為已安裝,則表明用戶端狀態已恢複正常。

備份本地SQL Server時,安裝備份用戶端報錯Failed to run install script:exit status 4如何處理?

電腦本地安全設定策略項(用於內建管理員賬戶的管理員核准模式)未啟用,該策略狀態必須為已啟用

  1. Win+R開啟運行命令,輸入gpedit.msc,運行本機群組原則編輯器。

  2. 在本機群組原則編輯器面板,依次選擇電腦配置 > Windows設定 > 安全設定 > 本地策略 > 安全選項,在右側找到使用者帳號控制:用於內建管理員賬戶的管理員核准模式,將該策略狀態修改為已啟用

備份本地SQL Server時,安裝備份用戶端失敗如何處理?

  1. 登入伺服器,查看備份日誌。

    Windows用戶端日誌路徑:C:\ProgramData\scutech\dbackup3\agent\log\dbackup3-agent.log

  2. 在日誌中,查看失敗任務發生時間附近的日誌。

    備份日誌中如果出現報錯Failed to install dbackup3-agent service, errno=1783, 佔位程式接收到錯誤資料,可能是系統拒絕安裝導致的。請檢查是否有殺毒軟體或安全衛士進行了攔截,並查看攔截記錄。建議您將安裝程式添加到白名單中,或者暫時關閉這些安全軟體後再進行安裝。

ECSDatabase Backup用戶端安裝失敗如何處理?

請檢查以下兩項以確保用戶端能夠順利安裝:

  1. 雲助手狀態:確認ECS雲助手已正確安裝並處於正常運行狀態。

    如果遇到安裝失敗的情況,通常可以在雲助手控制台找到一條失敗的命令記錄。此時,建議您將該條命令複製併到ECS主機上手動執行。在手動安裝過程中,如遇網路連接問題或系統指令碼執行錯誤,螢幕上將會顯示具體的錯誤資訊。請根據這些提示解決相關問題(例如調整網路設定等)。

    待解決了所有問題並且指令碼能順利完成執行,就表示用戶端已成功安裝。然後在控制台再次觸發一次安裝操作以完成整個過程。

  2. C盤空間:確保C盤有足夠的可用空間,空間不足可能會導致用戶端無法安裝。

備份相關問題

本機資料庫備份如何免費試用?

本機資料庫備份與ECSDatabase Backup的免費試用方式是相同的。免費試用詳情,請參考30天免費試用說明

本機資料庫備份對網路有何要求?

本機資料庫伺服器的網路已經通過專線或者VPN和阿里雲Virtual Private Cloud及路由(線下到雲上100.64.0.0/10或100.64.0.0/11、100.96.0.0/11)互連。

即時備份的最小間隔是多少?可以和增量備份同時配置嗎?

即時備份理論上可以達到秒級的RPO,目前主要支援MySQL和Oracle資料庫。啟用即時備份後,雖然不能再單獨配置傳統的記錄備份,但仍然可以與增量備份結合使用,以進一步增強資料保護策略。

如何更換Database Backup使用的使用者名稱和密碼?

在備份整個過程中,可以通過重新激活來更換備份使用的使用者名稱和密碼,例如密碼到期。重新啟用,對現有的備份計劃沒有影響,無需改變備份計劃。但是對正在執行中的備份任務有影響。建議:

  1. 備份計劃頁簽先暫停(如有)即時記錄備份。

  2. 在對應資料庫的操作列,選擇更多>重新激活

Database Backup失敗如何處理?

MySQLDatabase Backup失敗

执行历史中發現狀態為错误image.png

建議您按照以下步驟處理:

  1. 登入ECS執行個體或者本機伺服器,查看MySQL服務狀態。

    參考命令為systemctl status mysqld,正常的服務狀態為active,inactive為不正常狀態。如果狀態為inactive,建議重啟後嘗試。

  2. 確認資料庫使用者名稱和密碼及其許可權配置是正確的。密碼到期、使用者權限變更後許可權不足,也會導致此問題。

    註冊資料庫時輸入的数据库用户名不正確、許可權不足或者密碼錯誤,確認使用者名稱和密碼正確後,請為該備份帳號添加足夠的許可權。建議您建立專門用於備份的使用者。

    該使用者所具備的最小許可權集為RELOAD、LOCK TABLES、REPLICATION、PROCESS。

  3. 登入伺服器,查看備份日誌。

    linux用戶端日誌路徑:/var/log/dbackup3/agent.log

    • 如果出現uploadPart SecurityTokenExpired關鍵字,則表示本地時間不正確,需要矯正本地時間。

    • 如果出現ib_logfile0關鍵字,則是恢複任務未完成時又執行了恢複操作,導致了ib_logfile0被刪除但未重建,進而使後續備份失敗。

    • 如果出現Error: failed to execute query LOCK TABLES FOR BACKUP: Access denied; you need (at least one of) the RELOAD privilege(s) for this operation,則表明用於備份的帳號許可權不足。為了執行備份任務,至少需要以下許可權:RELOAD、LOCK TABLES、REPLICATION、PROCESS。在 MySQL 8.0中,還需具備BACKUP_ADMIN許可權。

    • 如果出現no space left on device,則版本29292的MySQL備份用戶端在執行恢複任務時,會因磁碟空間不足而失敗。增量備份的檔案需要恢複到緩衝,可以通過建立軟連結的方式把儲存路徑指向其他磁碟,以緩解空間不足的情況。

    • 當控制台上顯示記錄備份狀態為“錯誤”,且日誌出現@LM_ERROR@agent|To backup binlog in slave node needs to set log_slave_updates to ON關鍵字,表示備份的節點是從庫(slave 節點)。為了正常進行記錄備份,需要設定配置項 log_slave_updates=1 ,即開啟此配置項。完成此配置更改後,建議先執行一次全量備份,然後再進行記錄備份。

OracleDatabase Backup失敗

  1. 登入伺服器,查看備份日誌。

    Linux用戶端日誌路徑:/var/log/dbackup3/agent.log

    Windows用戶端日誌路徑:C:\ProgramData\scutech\dbackup3\agent\log\dbackup3-agent.log

  2. 在日誌中,查看失敗任務發生時間附近的日誌。備份日誌中若出現以下報錯提示,請參考以下方案進行處理:

    • 如果出現ORA-12560: TNS:protocol adapter error關鍵字,請確認是否由於ORACLE_SID環境變數未設定或設定錯誤導致無法串連Oracle,您可以通過sqlplus命令並使用sysdba許可權嘗試登入。正確配置ORACLE_SID環境變數後,如果能夠成功登入,則問題得到解決。

    • 如果出現sbtclose2 returned error-failed to close file關鍵字,則是本地時間和伺服器時間相差過大,或者系統時區設定不正確。建議您修改資料庫所在伺服器的時間,然後重啟dbackup3-agent服務,重啟步驟,請參見如何查看用戶端進程狀態、日誌路徑及重啟用戶端

    • 如果出現Failed to probe oracle instances關鍵字,則可能有兩個原因:

    • 如果出現ORA-12154: TNS:could not resolve the connect identifier specified關鍵字,則表示您的密碼包含特殊字元,導致校正不通過,從而備份失敗。

    • 如果出現ORA-01017: invalid username/password; logon denied關鍵字,則需要用正確的使用者名稱和密碼重新啟用後再備份。

    • 如果出現The difference between the request time and the current time is too large關鍵字,則是因為安裝雲備份用戶端的伺服器時間與雲備份伺服器的時間不一致。

      解決方案:

      1. 檢查和同步時間:為了確保伺服器時間與國際標準時間(UTC)同步,建議使用NTP(網路時間協議)服務進行自動同步。在Linux系統上,您可以使用ntpdatechrony命令來同步時間,可以通過sudo ntpdate pool.ntp.org命令進行手動同步。

      2. 檢查時區設定:為確保時區設定正確,可以使用命令timedatectl 來查看和設定時區。

      3. 請重啟備份用戶端,然後在雲備份控制台中重新執行備份操作。重啟步驟,請參見如何查看用戶端進程狀態、日誌路徑及重啟用戶端

SQL ServerDatabase Backup失敗

使用Cloud Backup備份SQL Server時,備份失敗。建議您按照以下步驟處理:

  1. 登入伺服器,查看備份日誌。

    Windows用戶端日誌路徑位於:C:\ProgramData\scutech\dbackup3\agent\log\dbackup3-agent.log

  2. 在日誌中,根據控制台上報錯記錄對應的時間段列(即開始時間和結束時間),尋找並分析失敗任務發生時間附近的日誌。備份日誌中若出現以下報錯提示,請參考以下方案進行處理:

    • 報錯:該登入名稱沒有足夠的許可權。

      問題分析:SQL Server備份使用者權限不足。

      解決方案:請檢查備份帳號及許可權。具體操作,請參見步驟二:建立備份帳號和配置許可權

    • 報錯:使用者 'xxx' 登入失敗。

      問題分析:SQL Server備份使用者的密碼已到期 (Error Code: 18487, SQL State: 28000)。

      解決方案:在SQL Server中修改備份使用者的密碼,然後登入雲備份控制台,在對應資料庫的操作列,選擇更多>重新激活

      image

    • 報錯:無法覆蓋檔案。

      問題分析:SQL Server資料庫復原路徑被其他資料庫佔用。

      解決方案:建立恢複任務,按指定備份恢複時,雙擊修改復原路徑。

      image

    • 報錯:目標SQL Server資料庫不存在。請確保正確地輸入該名稱。

      問題分析:目標SQL Server資料庫不存在。

      解決方案:請確認目標資料庫是否存在。如果資料庫已經不存在,請編輯備份計劃,移除對應資料庫。

    • 報錯:因為該資料庫參與了資料庫鏡像會話或可用性群組。某些操作不允許對正在參與資料庫鏡像會話或可用性群組的資料庫執行。

      問題分析:SQL Server資料庫啟用了SQL Server AlwaysOn。

      解決方案:目標執行個體沒有綁定AlwaysOn叢集,要選擇對應的叢集。

    • 報錯:因為該資料庫已配置用於資料庫鏡像或已串連到某一可用性群組。如果想要還原該資料庫,請使用ALTER DATABASE刪除鏡像或從其可用性群組中刪除該資料庫。

      問題分析:SQL Server資料庫啟用了SQL Server AlwaysOn。

      解決方案:目標執行個體沒有綁定AlwaysOn叢集,要選擇對應的叢集。

    • 報錯

      控制台上備份任務執行失敗且提示“作業失敗,錯誤:-1 備份或恢複資料庫""xxx""失敗,VDI錯誤"0x80770004"” 。

      排查步驟

      1. 切換至目錄C:\ProgramData\scutech\dbackup3\agent\log\dbackup3-agent.log,並開啟記錄檔。根據控制台上報錯記錄對應的時間段列(即開始時間和結束時間),定位失敗任務發生前後附近的日誌。

      2. 如果日誌中看到“Failed to receive WebSocket data from x.x.x.x:60305, errno=10054, connection reset”或“Failed to open socket x.x.x.x:60305, errno=10060, connection timed out”,表示用戶端與備份服務端之間串連中斷,請檢查網路連接是否正常。

      3. 當後續日誌中出現“Channel xxxxxxxxxxxxxx is registered”時,表明用戶端經過重試已重新串連到服務端。此時,可以觸發一次新的備份任務,或者等待下次任務調度執行後,觀察備份是否能正常進行。

      4. 如果備份仍然失敗或出現其他錯誤,建議您加入內部支援群或聯絡服務專家(可通過DingTalk發送日誌),以擷取進一步的支援人員。

        • Cloud Backup支援人員群

          快速諮詢費用、功能和使用等問題。點擊加入雲備份線上諮詢(建議使用Chrome開啟)。請搜尋公開群組並加入,DingTalk群號:88650005148。

        • Cloud Backup專家支援

          技術專家現場分析,快速解決產品問題。點擊聯絡雲備份支援(建議使用Chrome開啟)。請添加DingTalk好友,DingTalk號:d37_g935gslgo。

備份Oracle資料時出現增量備份的時間等於或大於全量備份時間如何處理?

  • 問題現象

    增量備份和記錄備份的耗時時間與全量備份接近甚至超過全量備份的時間

  • 解決方案

    建議在 Oracle 資料庫中開啟Block Change Tracking(BCT)。BCT是用於加速RMAN增量備份的功能,通過跟蹤資料區塊的變化來減少備份時間。該配置預設關閉,需要手動啟用該功能以利用其加速 RMAN 增量備份的功能。

    BCT優缺點說明

    優點

    缺點

    • 加速 RMAN 增量備份

      BCT 檔案記錄資料區塊的修改,RMAN 增量備份時無需掃描全庫,僅通過 BCT 檔案定位變化塊,對於大型資料庫,增量備份時間可減少 90% 以上。假設一個 1TB 的資料庫,全庫掃描需要 1 小時,而 BCT 可讓增量備份在幾分鐘內完成。

    • 降低 I/O 負載

      減少物理讀取,備份過程中直接讀取 BCT 檔案,避免全表掃描,降低備份對生產環境的影響。

    • 低資源消耗

      幾乎無額外記憶體開銷,BCT 檔案通常僅需幾百 MB(例如 1TB 資料庫的 BCT 檔案約 100MB-200MB)。

    • 相容性

      支援所有 Oracle 版本(從 10g R2 開始),在 Oracle 12c+ 中支援冗餘配置(多個BCT檔案副本,提升容錯性)。

    • 額外磁碟空間佔用

      • 檔案大小:雖然僅幾百 MB,但需確儲存儲路徑有足夠的空間。

      • 冗餘配置:若配置多副本(如 REUNDANCY 2),磁碟佔用會翻倍。

    • 效能微小影響

      • 寫入操作開銷:每次資料區塊修改時,需更新 BCT 檔案,對高寫入負載的系統可能有輕微效能影響。

      • 測試情境:在每秒數萬次事務的 OLTP 系統中,BCT 的效能影響通常可忽略,但在極端高並發情境需監控。

    • 檔案損壞風險

      • 單點故障:若 BCT 檔案損壞且未配置冗餘,可能導致增量備份失敗。

      • 修複復雜度:需重新啟用 BCT 並重建檔案,可能需要短暫停機。

    推薦啟用 BCT 的情境:

    • 頻繁增量備份:每日或每小時執行 RMAN 增量備份的系統。

    • 大型資料庫:TB 級資料庫的增量備份時間最佳化。

    • 高可用性需求:需要快速恢複且依賴增量備份的生產環境。

    謹慎啟用 BCT 的情境

    • 極小資料庫:如 1GB 以下的資料庫,BCT 帶來的收益可能不明顯。

    • 極端高寫入負載:每秒數萬次事務的 OLTP 系統需權衡效能影響。

    • 儲存空間緊張:若磁碟空間有限,需評估 BCT 檔案的儲存需求。

Oracle增量備份時報錯RMAN reports a non-fatal error如何處理?

  • 問題現象

    Oracle全量備份成功,增量備份時持續失敗。具體報錯如下:

    oracle.phxxdb.18472|RMAN reports a non-fatal error:
    ORA-19505: failed to identify file "/arch/1_5137021_976544044.dbf"
    ORA-27037: unable to obtain file status
    Linux-x86_64 Error: 2: No such file or directory
    Additional information: 3
  • 問題原因

    找不到相關的歸檔日誌,可能被其他指令碼或備份任務備份並移動過。請檢查是否有雲備份之外的指令碼或者軟體在執行備份,導致歸檔日誌位置發生變化,從而使雲備份在執行Oracle增量備份時找不到對應檔案失敗。

  • 解決方案

    強烈建議不要將雲備份與其他備份軟體或備份指令碼同時使用,可能會導致備份失敗或備份無法恢複。

備份SQL Server 2019時出現瀏覽資料庫詳情失敗如何處理?

  • 問題現象

    在為 SQL Server 2019 建立或編輯備份計劃並選擇資料庫執行個體時,控制台顯示錯誤資訊:“Failed to list unibackup instance detail”。

  • 問題原因

    在備份SQL Server 2019時,如果有其他備份軟體或指令碼同時進行備份操作,可能會導致在建立或編輯備份計劃並選擇資料庫執行個體時,出現瀏覽資料庫詳情失敗的情況。

  • 解決方案

    1. 在SQL Server資料庫中查詢有多少資料庫和備份組。

      select count(database_id) from master.sys.databases
      select count(backup_set_id) from msdb.dbo.backupset
    2. 刪除 msdb.dbo.backupset 中的備份記錄。

      重要

      刪除備份記錄會對您造成影響,如果您有自己的備份,會導致備份記錄被清除,並且不能按照正常流程來恢複這些記錄。但是這不會影響到您的資料備份,因為在下一次備份的時候,它會自動轉換為全量備份。需要注意的是,在備份SQL Server 2019時不支援與其他備份軟體或指令碼同時使用。

      use msdb;
      exec sp_delete_backuphistory @oldest_date = '04/10/2024' ---保留4/10,4/9之前都刪,您需要確認保留時間

本機資料庫SQLServer註冊後,雲備份控制台中顯示的IP與本機IP不一致如何處理?

  • 問題現象

    在本地用戶端狀態正常且未修改過本機IP地址的情況下,本機資料庫SQLServer註冊到雲備份後,雲備份控制台顯示的IP地址與本機IP不一致。

  • 問題原因

    在多網卡環境中,雲備份擷取到了本地未投入使用的網卡IP地址。

  • 解決方案

    禁用未投入使用的網卡後,重新安裝用戶端即可。

SQL Server資料庫在開啟透明資料加密 (TDE) 後,可以備份到阿里雲嗎?

不支援。

為SQL Server資料庫部署防勒索服務後,用戶端離線且無法卸載及防勒索策略也刪除失敗如何處理?

  • 問題現象

    為SQL Server資料庫部署防勒索服務後,發現用戶端顯示離線,刪除防勒索策略顯示刪除失敗,用戶端也無法卸載。

    此時,在Windows工作管理員中查看dbackup3-agent服務顯示已停止,agent日誌中會列印類似Stopping all jobs的日誌。

    image

  • 問題原因

    用戶端被殺毒軟體攔截。請在殺毒軟體中查看對應時間點是否有相關的攔截記錄。

  • 解決方案

    在殺毒軟體中對用戶端添加信任,然後重啟用戶端服務(或者重新安裝)即可。

在ECS執行個體從原帳號轉移到新的阿里雲帳號後,發現無法正常安裝或使用Database Backup功能,如何處理?

當ECS執行個體從原帳號轉移到新的阿里雲帳號後,ECS中繼資料資訊不會自動同步至雲備份服務,需要先在雲備份服務後台完成同步,之後再進行安裝和使用。具體操作步驟,建議您聯絡“雲備份支援”或加入DingTalk群組“雲備份線上諮詢”擷取協助。

  • Cloud Backup支援人員群

    快速諮詢費用、功能和使用等問題。點擊加入雲備份線上諮詢(建議使用Chrome開啟)。請搜尋公開群組並加入,DingTalk群號:88650005148。

  • Cloud Backup專家支援

    技術專家現場分析,快速解決產品問題。點擊聯絡雲備份支援(建議使用Chrome開啟)。請添加DingTalk好友,DingTalk號:d37_g935gslgo。

支援備份的MySQL資料庫版本和作業系統是否有限制?

支援的資料庫版本、作業系統和備份功能有限制,例如不支援部署在Windows中的MySQL資料庫。更多資訊,請參見相容系統列表和使用限制

在MySQL中新建立了一個資料庫,如何備份這個新庫?

MySQL備份按照資料庫執行個體進行備份,新增資料庫不需要您手動設定,下次備份會自動備份新增庫。

如何取消Database Backup?

取消MySQLDatabase Backup

準確而完整地取消Database Backup後,不會產生額外費用和佔用資源。

重要

取消Database Backup,您的備份資料會被刪除,已備份資料無法恢複,請謹慎評估後操作。

  1. 刪除備份計劃。

  2. 登出執行個體。ECS執行個體資料庫在登出執行個體時,會自動卸載已安裝的備份用戶端。

  3. 如果是本機伺服器安裝的MySQL資料庫,請登入本地服務,卸載用戶端。

    • Linux:

      • CentOS

        sudo rpm --erase "dbackup3-agent-mysql"
        sudo rpm --erase "dbackup3-agent"
        sudo rpm --erase "dbackup3-common"
      • Ubuntu

        sudo dpkg -r "dbackup3-agent-mysql" "dbackup3-agent" "dbackup3-common"
  4. 刪除以下目錄:

    • Linux:

      /etc/default/dbackup3*
      /opt/scutech
      /var/opt/scutech/
      /var/log/dbackup3/
      /etc/opt/scutech/
  5. 刪除備份庫。

    在左側導覽列,選擇存放庫管理,找到對應備份庫,刪除。

取消OracleDatabase Backup

準確而完整地取消Database Backup後,不會產生額外費用和佔用資源。

重要

取消Database Backup,您的備份資料會被刪除,已備份資料無法恢複,請謹慎評估後操作。

  1. 刪除備份計劃。

  2. 登出執行個體。ECS執行個體資料庫在登出執行個體時,會自動卸載已安裝的備份用戶端。

  3. 如果是本機伺服器安裝的Oracle資料庫,請登入本地服務,卸載用戶端。

    • Windows:

      1. 進入備份用戶端安裝目錄(PowerShell)。例如C:\Program Files\aliyun\unibackup>

      2. 執行命令。

         .\uninstall-unibackup.exe /S /NCRC
    • Linux:

      • CentOS

        sudo rpm --erase "dbackup3-agent-oracle"
        sudo rpm --erase "dbackup3-agent"
        sudo rpm --erase "dbackup3-common"
      • Ubuntu

        sudo dpkg -r "dbackup3-agent-oracle" "dbackup3-agent" "dbackup3-common"
  4. 清理設定檔。

    • Windows:

      刪除位元於c:\programdata\scutech下的所有設定檔。

    • Linux:

      刪除以下目錄:

      /etc/default/dbackup3*
      /opt/scutech
      /var/opt/scutech/
      /var/log/dbackup3/
      /etc/opt/scutech/
  5. 刪除備份庫。

    在左側導覽列,單擊存放庫管理,找到對應備份庫,刪除。

取消SQL ServerDatabase Backup

準確而完整地取消Database Backup後,不會產生額外費用和佔用資源。

重要

取消Database Backup,您的備份資料會被刪除,已備份資料無法恢複,請謹慎評估後操作。

  1. 刪除備份計劃。

  2. 登出執行個體。ECS執行個體資料庫在登出執行個體時,會自動卸載已安裝的備份用戶端。

  3. 如果是本機伺服器安裝的SQL Server資料庫,請登入本地服務,卸載用戶端。

    • Windows:

      1. 請進入備份用戶端安裝目錄(PowerShell)。例如C:\Program Files\aliyun\unibackup>

      2. 執行uninstall-unibackup.exe命令,按照嚮導完成卸載。

  4. 刪除位元於c:\programdata\scutech下的所有設定檔。

  5. 刪除備份庫。

    在左側導覽列,單擊存放庫管理,找到對應備份庫,刪除。

為什麼備份歷史中有一些重複的,或者非預期時間執行的記錄?

這種情況通常是在安裝了Database Backup用戶端的伺服器(本機伺服器或ECS)被複製時發生,或使用包含同一備份用戶端的鏡像建立新的ECS或本機伺服器時發生的。由於複製後的伺服器保留了原伺服器上用戶端的部分資訊,因此可能會產生重複的備份記錄。為瞭解決這一問題,您只需要登入到複製後的伺服器,並執行卸載操作即可。關於如何卸載備份用戶端,請參照以下步驟:

卸載MySQL備份用戶端

ECS執行個體資料庫在登出執行個體時,會自動卸載已安裝的備份用戶端。如果是本機伺服器安裝的MySQL資料庫,請按如下方式卸載用戶端:

  1. 卸載用戶端。

    Linux:

    • CentOS

      sudo rpm --erase "dbackup3-agent-mysql"
      sudo rpm --erase "dbackup3-agent"
      sudo rpm --erase "dbackup3-common"
    • Ubuntu

      sudo dpkg -r "dbackup3-agent-mysql" "dbackup3-agent" "dbackup3-common"
  2. 刪除以下目錄:

    Linux:

    /etc/default/dbackup3*
    /opt/scutech
    /var/opt/scutech/
    /var/log/dbackup3/
    /etc/opt/scutech/

卸載Oracle備份用戶端

ECS執行個體資料庫在登出執行個體時,會自動卸載已安裝的備份用戶端。如果是本機伺服器安裝的Oracle資料庫,請按如下方式卸載用戶端:

  1. 卸載用戶端。

    • Windows:

      1. 進入備份用戶端安裝目錄(PowerShell)。例如C:\Program Files\aliyun\unibackup>

      2. 執行命令。

         .\uninstall-unibackup.exe /S /NCRC
    • Linux:

      • CentOS

        sudo rpm --erase "dbackup3-agent-oracle"
        sudo rpm --erase "dbackup3-agent"
        sudo rpm --erase "dbackup3-common"
      • Ubuntu

        sudo dpkg -r "dbackup3-agent-oracle" "dbackup3-agent" "dbackup3-common"
  2. 清理設定檔。

    • Windows:

      刪除位元於c:\programdata\scutech下的所有設定檔。

    • Linux:

      刪除以下目錄:

      /etc/default/dbackup3*
      /opt/scutech
      /var/opt/scutech/
      /var/log/dbackup3/
      /etc/opt/scutech/

卸載SQL Server備份用戶端

ECS執行個體資料庫在登出執行個體時,會自動卸載已安裝的備份用戶端。如果是本機伺服器安裝的SQL Server資料庫,請按如下方式卸載用戶端:

  1. 卸載用戶端。

    • Windows:

      1. 請進入備份用戶端安裝目錄(PowerShell)。例如C:\Program Files\aliyun\unibackup>

      2. 執行uninstall-unibackup.exe命令,按照嚮導完成卸載。

  2. 清理設定檔。

    • Windows:

      刪除位元於c:\programdata\scutech下的所有設定檔。

為什麼備份失敗且備份計劃的狀態顯示為“錯誤”?

image

如果遇到備份計劃狀態顯示為“錯誤”且備份失敗的情況,請您首先檢查安裝了用戶端的伺服器(本機伺服器或ECS)是否執行過鏡像複製、重新安裝作業系統或重設系統硬碟等操作。這些操作可能會導致備份計劃與用戶端之間的關聯失效。為瞭解決這一問題,請參照以下步驟:

  1. 確保已經卸載了複製伺服器上的用戶端及其設定檔。具體操作,請參見卸載用戶端

  2. 確保當前伺服器上的用戶端狀態為已安裝。

    image

  3. 在完成上述步驟後,通過控制台刪除原有的備份計劃,並建立一個新的備份計劃。

為什麼收到警示的時間和實際錯誤發生時間不一致?

簡訊警示設定了夜間抑制功能,將晚上8點至次日早上8點期間觸發的警示延遲至早上8點之後發送;而郵件警示則不受此限制,會即時發送。

為什麼收到警示失敗的郵件或簡訊,但是查看備份歷史發現同一時間會有備份成功和備份失敗的兩條記錄?

這種情況通常是在安裝了Database Backup用戶端的伺服器(本機伺服器或ECS)被複製時發生,或使用包含同一備份用戶端的鏡像建立新的ECS或本機伺服器時發生的。由於複製後的伺服器保留了原伺服器上用戶端的部分資訊,因此可能會產生重複的備份記錄。為瞭解決這一問題,您只需要登入到複製後的伺服器,並執行卸載操作即可。關於如何卸載備份用戶端,請參照以下步驟:

卸載MySQL備份用戶端

ECS執行個體資料庫在登出執行個體時,會自動卸載已安裝的備份用戶端。如果是本機伺服器安裝的MySQL資料庫,請按如下方式卸載用戶端:

  1. 卸載用戶端。

    Linux:

    • CentOS

      sudo rpm --erase "dbackup3-agent-mysql"
      sudo rpm --erase "dbackup3-agent"
      sudo rpm --erase "dbackup3-common"
    • Ubuntu

      sudo dpkg -r "dbackup3-agent-mysql" "dbackup3-agent" "dbackup3-common"
  2. 刪除以下目錄:

    Linux:

    /etc/default/dbackup3*
    /opt/scutech
    /var/opt/scutech/
    /var/log/dbackup3/
    /etc/opt/scutech/

卸載Oracle備份用戶端

ECS執行個體資料庫在登出執行個體時,會自動卸載已安裝的備份用戶端。如果是本機伺服器安裝的Oracle資料庫,請按如下方式卸載用戶端:

  1. 卸載用戶端。

    • Windows:

      1. 進入備份用戶端安裝目錄(PowerShell)。例如C:\Program Files\aliyun\unibackup>

      2. 執行命令。

         .\uninstall-unibackup.exe /S /NCRC
    • Linux:

      • CentOS

        sudo rpm --erase "dbackup3-agent-oracle"
        sudo rpm --erase "dbackup3-agent"
        sudo rpm --erase "dbackup3-common"
      • Ubuntu

        sudo dpkg -r "dbackup3-agent-oracle" "dbackup3-agent" "dbackup3-common"
  2. 清理設定檔。

    • Windows:

      刪除位元於c:\programdata\scutech下的所有設定檔。

    • Linux:

      刪除以下目錄:

      /etc/default/dbackup3*
      /opt/scutech
      /var/opt/scutech/
      /var/log/dbackup3/
      /etc/opt/scutech/

卸載SQL Server備份用戶端

ECS執行個體資料庫在登出執行個體時,會自動卸載已安裝的備份用戶端。如果是本機伺服器安裝的SQL Server資料庫,請按如下方式卸載用戶端:

  1. 卸載用戶端。

    • Windows:

      1. 請進入備份用戶端安裝目錄(PowerShell)。例如C:\Program Files\aliyun\unibackup>

      2. 執行uninstall-unibackup.exe命令,按照嚮導完成卸載。

  2. 清理設定檔。

    • Windows:

      刪除位元於c:\programdata\scutech下的所有設定檔。

恢複相關問題

僅查看離線執行個體功能說明

僅查看離線執行個體功能適用於以下情境:當安裝用戶端的機器重裝系統,或用戶端進程和配置被惡意程式刪除時,已安裝的用戶端將無法與原執行個體的服務端建立串連,從而無法恢複之前的備份資料。在這些情況下,例如重裝系統後安裝了新的用戶端,系統會分配不同的執行個體ID來區分新的用戶端和已離線的用戶端,確保不會產生混淆。您可將已離線執行個體上的資料恢複到安裝了新用戶端的執行個體上。恢複步驟,請參見恢複MySQL恢複Oracle恢複SQL Server

SQL Server資料庫恢複失敗如何處理?

  1. 登入伺服器,查看備份日誌。

    Windows用戶端日誌路徑:C:\ProgramData\scutech\dbackup3\agent\log\dbackup3-agent.log

  2. 在日誌中,查看失敗任務發生時間附近的日誌。

    備份日誌中如果出現RestoreContainer::ValidateTargetForCreation關鍵字,則表示您在恢複同名庫時,僅修改了路徑而未更改庫名,導致庫名衝突,從而使恢複操作失敗。為成功恢複,建議同時修改庫名和路徑。

SQL Server恢複失敗,Agent日誌中提示檔案無法正確初始化如何處理?

  • 問題描述

    恢複SQL Server失敗時,Agent日誌中提示檔案無法正確初始化。具體日誌如下:

    2025-11-10 11:25:53.967@iZrxhug********@2208@LM_INFO@dbackup3-agent|[SQLSERVER] output: 已處理百分之 100。
    2025-11-10 11:25:53.968@iZrxhug********@2208@LM_INFO@dbackup3-agent|[SQLSERVER] output: 已為資料庫 'xxx',檔案 'xxx' (位於檔案 1 上)處理了 51595000 頁。
    2025-11-10 11:25:53.985@iZrxhug********@2208@LM_INFO@dbackup3-agent|[SQLSERVER] output: 已為資料庫 'xxx',檔案 'xxx_log' (位於檔案 1 上)處理了 3865 頁。
    2025-11-10 11:25:53.987@iZrxhug********@2208@LM_INFO@dbackup3-agent|[SQLSERVER] output: 檔案 "xxx_log" 無法正確初始化。有關詳細資料,請檢查錯誤記錄檔。
    2025-11-10 11:25:53.989@iZrxhug********@2208@LM_INFO@dbackup3-agent|[SQLSERVER] output: RESTORE DATABASE 正在異常終止。

    同時,SQL Server ErrorLog中提示the file "xxx_log" failed to initialize correctly

    image

  • 問題原因

    SQL Server版本2008 R2的源庫如果曾經加密過,則後續取消加密會產生資訊殘留,對取消加密的資料庫進行備份後,將備份組恢複到其他執行個體會出現初始化錯誤。具體分析過程如下:

    說明

    當源庫為 SQL Server 2008 R2 且啟用了 TDE 時,即使目標執行個體為更高版本(如 SQL Server 2014),恢複操作仍會失敗,並報錯“找不到認證”。需手動還原認證及私密金鑰才可完成恢複。

    1. 通過SQL Server ErrorLog確認資料庫的版本。

      image

    2. 初步判斷該問題可能與 TDE(Transparent Data Encryption)相關。請確認來源資料庫是否啟用了 TDE,並核查近期是否執行過禁用加密等操作。

      在資料庫中執行以下SQL語句,確認查詢結果中備份資料庫的key_algorithmkey_length兩個欄位值是否不為NULL。如果不為NULL,則可能曾加密過。

      USE master;
      SELECT 
          d.name,
          d.is_encrypted,
          drs.database_id,
          drs.encryption_state,
          drs.percent_complete,
          drs.key_algorithm,
          drs.key_length
      FROM sys.databases AS d
      LEFT JOIN sys.dm_database_encryption_keys AS drs
          ON d.database_id = drs.database_id;

      查詢結果樣本如下圖所示。

      image

  • 解決方案

    • 將來源資料庫升級至更高版本後重新備份,用新的備份組執行恢複操作,之前的備份組無效。

    • 將源執行個體的私密金鑰以及認證恢複到目標執行個體後,再執行恢複操作。

      恢複完成後刪除目標執行個體的TDE加密認證和資料庫加密金鑰,再對目標執行個體執行備份,後續目標執行個體可正常執行備份與恢複。

      說明

      即使資料備份是在取消TDE加密後執行的,恢複過程中仍需提供私密金鑰以及認證,用於處理備份中殘留的加密中繼資料,但實際恢複出的資料庫為非加密狀態,後續無需認證即可正常使用。

      # 在源執行個體中執行以下操作
      USE master;
      
      # 1. 查詢 TDE 加密資料庫對應的認證名
      SELECT d.name AS DatabaseName,
             k.encryption_state,
             c.name AS CertificateName
      FROM sys.dm_database_encryption_keys AS k
      JOIN sys.certificates AS c
          ON k.encryptor_thumbprint = c.thumbprint
      JOIN sys.databases AS d
          ON k.database_id = d.database_id
      
      # 假設結果中的認證名CertificateName = TDECert ,備份TDE認證和私密金鑰至自訂路徑
      BACKUP CERTIFICATE TDECert
         TO FILE = 'C:\Backup\TDECert.cer'  -- 檔案路徑需自訂
         WITH PRIVATE KEY (
              FILE = 'C:\Backup\TDECert_PrivateKey.pvk',    -- 檔案路徑需自訂
              ENCRYPTION BY PASSWORD = 'Strong_Password_123!'    -- 記住該密碼
         );
      
      -- 將上述路徑下的認證和私密金鑰複製到目標執行個體
      
      # 2. 在目標執行個體中執行以下操作
      USE master;
      
      # 還原主要資料庫密鑰,如果提示 '資料庫中已存在主要金鑰。執行此語句前,請先刪除該主要金鑰。' ,則跳過該步驟
      CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'Another_Strong_Password_456!';
      
      # 還原 TDE 認證
      CREATE CERTIFICATE TDECert -- 自訂認證名,後面刪除時用到
          FROM FILE = 'C:\TDE_Test\TDECert.cer' -- 複製過來的檔案所在路徑
          WITH PRIVATE KEY (
              FILE = 'C:\TDE_Test\TDECert_PrivateKey.pvk',
              DECRYPTION BY PASSWORD = 'Strong_Password_123!'  -- 備份私密金鑰時使用的密碼
          );
      
      
      # 3. 在雲備份控制台正常執行恢複步驟
      
      
      # 4. 恢複後刪除資料庫加密金鑰
      USE TDE_TestDB_Restore -- 目標資料庫名
      DROP DATABASE ENCRYPTION KEY;
      
      # 5. 刪除認證
      USE master;
      DROP CERTIFICATE TDECert;

如何在本機資料庫與ECS資料庫之間進行跨資料庫恢複?

不支援直接相互恢複。您可將ECS上的資料庫註冊至本機資料庫執行個體中,註冊後再進行各本機資料庫執行個體之間相互恢複。

備份庫相關問題

什麼是Database Backup庫?

在建立Database Backup計劃前,您必須建立Database Backup庫。

Database Backup庫,即為儲存您Database Backup資料的儲存容量庫。Database Backup的費用由倉庫租用費、存放庫容量共同決定。更多資訊,請參見計費方式與計費項目

Database Backup庫的到期資料清理機制是怎樣的?

增量備份、累計增量備份和記錄備份依賴完整的前序備份鏈,包括前序的全量備份以及增量備份、累計增量備份、記錄備份。在包含全量+增量、累計增量、記錄備份的備份鏈中,最後一個備份到期前,完整備份鏈依賴的備份都會保留在備份庫中,佔用備份空間。請合理配置備份周期和到期時間。

例如,您9月1號做了全量備份,2號到7號每天做了一次增量,備份保留時間為7天。那麼9月1號到7號的7次備份資料,會等到9月14號資料全部到期後,才會自動刪除。

如何查看Database Backup資料量和備份庫使用量?計費依據是什嗎?

源端資料量表示備份庫已備份資料量,是累計備份過的資料總量。例如1 TB檔案備份兩次後,雲備份會儲存兩份獨立資料拷貝,此數值就計為2 TB,Cloud Backup使用重刪壓縮技術縮減備份庫使用量,為您節省費用。實際佔用的存放庫資料量是計費的依據。可在存放庫管理頁面,查看Database Backup庫的源端資料量存放庫資料量