nz manualvacuum 指令
nz manualvacuum 指令會對您的 NPSaaS 執行個體中的所有資料庫執行全面的清理與重新建立索引操作。 此維護操作透過移除過時資料及重建索引,有助於釋放磁碟空間並優化資料庫效能。 此指令首次出現在 nzcli 版本 11.3.1.3 中。
概觀
手動抽真空操作是一項關鍵的維護任務,其目的在於:
- 停止 NPS 系統(
nzstop) - 建立目錄資料的備份
- 對所有資料庫執行清空與重新建立索引操作
- 重新啟動 NPS 系統(
nzstart)
在此操作期間,系統將無法使用;根據您的資料庫大小,此操作可能需要相當長的時間。
必要條件
在執行手動抽真空操作之前,請確保:
- 您擁有對 NPSaaS 實例的管理員存取權限
- 您已下載並設定了
nz命令列工具的版本 11.3.1.3 或更高版本 - 您已設定所需的環境變數(
APISERVER_URL、NZ_USER、NZ_PASSWORD),或已準備好將其作為命令選項提供 - 您已排定維護時段,因系統在維護期間將無法使用
- 您有足夠的磁碟空間來備份目錄
語法
nz manualvacuum [options]
選項
| 選項 | 說明 |
|---|---|
-apiserver <APISERVER> |
API 伺服器的 URL。 可透過 APISERVER_URL 環境變數進行設定。(必填) |
-u <USER> |
NPS 使用者名稱。 可透過 NZ_USER 環境變數進行設定。(必填) |
-pw <PASSWORD> |
NPS 密碼。 可透過 NZ_PASSWORD 環境變數進行設定。(必填) |
-force |
跳過確認提示,並立即執行操作 |
-format <FORMAT> |
指令結果的輸出格式 |
-host <HOST> |
API 伺服器的 URL。 可透過 NZ_HOST 環境變數進行設定 |
範例
執行手動真空操作並顯示確認提示
./nz manualvacuum -apiserver <apiserver-url> -u <nps-admin-user> -pw <nps-admin-user-password>
此指令會顯示一則警告,並要求確認:
WARNING: Manual Vacuum Operation
=====================================
This operation will:
1. Stop NPS (nzstop)
2. Run nz_manual_vacuum
3. Start NPS (nzstart)
This process may take significant time and will restart the system.
The system will be unavailable during this operation.
Do you want to continue? (yes/no):
在未經確認的情況下執行手動抽真空
請使用 -force 選項來跳過確認提示:
./nz manualvacuum -force -apiserver <apiserver-url> -u <nps-admin-user> -pw <nps-admin-user-password>
使用環境變數
設定環境變數,以避免在指令中指定憑證:
export APISERVER_URL=<apiserver-url>
export NZ_USER=<nps-admin-user>
export NZ_PASSWORD=<nps-admin-user-password>
./nz manualvacuum -force
操作工作流程
當您執行 nz manualvacuum 指令時,系統會執行以下工作流程。 在內部,此指令會呼叫 NPS 主機上的 nz_manual_vacuum 系統二進位檔。
- 系統停止:已使用
nzstop指令停止 NPS 系統 - 目錄備份:會於以下位置建立目錄資料的備份:
/nz/manual_vacuum/nz_manual_vacuum.<timestamp>.tar.gz - 執行真空清理與重新建立索引:此操作將對以下項目執行真空清理與重新建立索引:
_T_OBJECT系統表- 依序列出所有使用者與系統資料庫
- 系統啟動:使用
nzstart指令重新啟動 NPS 系統 - 完成:操作完成後,將顯示結果摘要
輸出與日誌
手動真空操作會產生:
- 日誌檔案:
/nz/manual_vacuum/nz_manual_vacuum.<timestamp>.log - 備份檔案:
/nz/manual_vacuum/nz_manual_vacuum.<timestamp>.tar.gz - 主控台輸出:詳細的進度資訊,包括:
- 操作處理程序與時間戳記
- 指令執行狀態
- 各資料庫的時序資訊
- 尺寸對比(前後)
- 完成狀態
範例輸出
Manual vacuum completed successfully
Output:
================================================================================
Manual Vacuum Workflow Started
Handle: nzrest.68n6kkr8.manual_vacuum
User: admin
Timestamp: 2026-06-09 14:08:12,790
================================================================================
# Database 1 of 19 SYSTEM
TIMINGS (vacuum ): Elapsed Time: 0.21
TIMINGS (reindex ): Elapsed Time: 0.39
...
###############################################################################
Size Before Size After Pathname
=============== =============== =========================================================
3924887043 3915646467 /data/catalog/data.1.0
###############################################################################
log file: /nz/manual_vacuum/nz_manual_vacuum.20260609_140932.log
backup file: /nz/manual_vacuum/nz_manual_vacuum.20260609_140932.tar.gz
================================================================================
Manual Vacuum Workflow Completed Successfully
All commands executed without errors
================================================================================
最佳作法
- 請在系統可離線的維護時段內,安排手動抽真空作業
- 在執行此操作之前,請先檢查磁碟空間,以確保有足夠的空間進行目錄備份
- 完成後請檢視日誌檔案,以確認執行是否成功
- 在規劃維護時段時,請考量資料庫的大小,因為較大的資料庫需要更多時間
- 請將備份檔案保留以供還原之用,直到您確認操作已成功完成為止