溫馨提示×

Ubuntu MongoDB數據備份與恢復方法

小樊
50
2025-05-14 04:07:20
欄目: 云計算

在Ubuntu系統中,可以使用mongodumpmongorestore命令來備份和恢復MongoDB數據庫。以下是詳細的步驟和命令示例:

備份MongoDB數據庫

  1. 使用mongodump命令備份整個數據庫

    mongodump --db 數據庫名 --out 備份目錄
    

    例如,要備份名為mydb的數據庫到/backup目錄,可以執行:

    mongodump --db mydb --out /backup
    
  2. 使用mongodump命令備份指定數據庫

    mongodump --db 數據庫名 --out 備份目錄
    

    例如,要備份名為test的數據庫到/backup/testdb目錄,可以執行:

    mongodump --db test --out /backup/testdb
    
  3. 使用mongodump命令備份指定集合

    mongodump --db 數據庫名 --collection 集合名 --out 備份目錄
    

    例如,要備份名為test的數據庫中的users集合到/backup/testdb/users目錄,可以執行:

    mongodump --db test --collection users --out /backup/testdb/users
    
  4. 使用mongodump命令備份指定查詢條件的文檔

    mongodump --db 數據庫名 --collection 集合名 --query "查詢條件" --out 備份目錄
    

    例如,要備份名為test的數據庫中age大于30的文檔到/backup/testdb/old_users目錄,可以執行:

    mongodump --db test --collection users --query '{ "age" : { "$gt" : 30 } }' --out /backup/testdb/old_users
    
  5. 使用mongodump命令備份并壓縮

    mongodump --db 數據庫名 --out 備份目錄 --archive .gz --gzip
    

    例如,要備份名為mydb的數據庫并壓縮為mydb.gz,可以執行:

    mongodump --db mydb --out /backup/mydb --archive .gz --gzip
    

恢復MongoDB數據庫

  1. 使用mongorestore命令恢復整個數據庫

    mongorestore --db 數據庫名 備份目錄
    

    例如,要從/backup目錄恢復名為mydb的數據庫,可以執行:

    mongorestore --db mydb /backup/mydb
    
  2. 使用mongorestore命令恢復指定數據庫

    mongorestore --db 數據庫名 備份目錄/數據庫名
    

    例如,要從/backup/testdb目錄恢復名為test的數據庫,可以執行:

    mongorestore --db test /backup/testdb/test
    
  3. 使用mongorestore命令恢復指定集合

    mongorestore --db 數據庫名 備份目錄/數據庫名/集合名
    

    例如,要從/backup/testdb/test目錄恢復名為users的集合,可以執行:

    mongorestore --db test /backup/testdb/test/users
    
  4. 使用mongorestore命令恢復指定查詢條件的文檔

    mongorestore --db 數據庫名 備份目錄/查詢條件
    

    例如,要恢復名為test的數據庫中age大于30的文檔,可以執行:

    mongorestore --db test /backup/testdb/old_users
    
  5. 使用mongorestore命令恢復并刪除現有數據(慎用):

    mongorestore --db 數據庫名 備份目錄 --drop
    

    例如,要恢復名為mydb的數據庫并刪除現有數據,可以執行:

    mongorestore --db mydb /backup/mydb --drop
    

請注意,在執行備份和恢復操作時,確保MongoDB服務器是可訪問的,并且具有足夠的權限。對于大型數據庫,備份和恢復可能需要較長時間,建議在系統負載較低的時段執行這些操作。定期測試恢復流程,以確保在緊急情況下能夠快速且正確地恢復數據。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女