## BookCMS如何搬家此教程適用于商業版和站群版
### 1、首先登錄ssh 備份`mongodb`數據庫 備份前請確保你的備份目錄有足夠大的空間例如進入 `cd /www/` 目錄
運行 `mongodump -h 127.0.0.1:27017 -d bookcms -o bookcms_db`
`-h` 參數是備份本地mongodb 數據庫
`-d` 參數是所需要備份的數據庫名稱
`-o` 參數是備份到 `bookcms_db` 這個目錄 也就是完整的 `/www/bookcms_db` 目錄下面
備份完成如下圖

然后運行命令 `tar cvzf - bookcms_db | split -d -b 8192m - bookcms_db.tar.gz` 這句話表示壓縮 `bookcms_db` 這個文件夾 成 tar.gz 格式 并且 以每個 `8GB` 的大小的壓縮包分卷,打包完成后如下圖

然后用寶塔后臺文件管理移動到你的網站`web`訪問目錄下載 或者 用 `mv` 命令移動都可以 總之下載到本地就可以
### 2、然后備份 `mysql` 數據庫 進入寶塔數據庫管理選擇 `bookcms` 的數據庫點擊 管理

`book_task_log` 日志表沒什么用 可以點擊 清空按鈕 減小 sql 的大小

然后點擊 `導出 -> 執行` 按鈕會提示保存 `sql` 文件,下載剛才的sql文件保存好

### 3、壓縮 `BookCMS` 文件夾 執行命令 `cd /www` 進入 `www` 文件夾
然后執行 `tar cvzf - BookCMS | split -d -b 8192m - BookCMS.tar.gz`
這句話 和上面壓縮命令一樣無需過多解釋 ,如果 `data/txt` 下的 文件很大很多 后面在出其他搬家教程 打包完成后如果有多個tar.gz的壓縮包則需要都選中 移動到 網站web目錄 然后通過http 下載 如果不下載請修改權限為 `www` 用戶

### 4、在新的服務器上還原 `mongodb` 數據庫
登陸新的 服務器 進入 `cd /www` 目錄 運行 `wget http://www.xxx.com/bookcms_db.tar.gz00` 命令下載,如果有多個壓縮包則需要都下載到新的機器上 如下圖

然后等待所有壓縮包下載完畢 執行 `cat bookcms_db.tar.gz00* | tar zxv` 命令 來解壓 `mongodb` 數據庫壓縮包

解壓完成后 運行 命令 `cd bookcms_db` 然后執行命令 `mongorestore -h 127.0.0.1:27017 -d bookcms ./bookcms` 還原 `mongodb` 數據庫 這句話意思就是 還原 ./bookcms 目錄的數據 到 `bookcms` 數據庫 如果期間不出其他情況就可以順利完成數據庫還原數據庫越大時間越長等待即可

### 5、在新的服務器上還原 `mysql` 先新建個 `bookcms` 的mysql數據庫 選中剛才下載的 `mysql` 上傳執行

### 6、在新的服務器上還原 `BookCMS` 后臺
運行命令 `cd /www` 來進入目錄 執行 `wget http://www.xxx.com/BookCMS.tar.gz00` 下載BookCMS后臺 多個壓縮包請挨個下載 然后執行命令 `cat BookCMS.tar.gz00* | tar zxv` 來解壓,然后修改`mysql` 鏈接密碼 和授權 既可 啟動方式按照部署方式 執行命令既可無需重復 執行命令 `chown www:www -R BookCMS` 修改文件夾 為www 用戶組文件多等待時間長


## 2、 MongoDb 數據庫備份方式二 推薦
下面命令是備份命令
`--db bookcms` 是備份 bookcms數據庫 `--archive=./bookcms_db.archive` 是當前路徑下的 保存的文件名
```
mongodump -h 127.0.0.1:27017 --db bookcms --gzip --archive=./bookcms_db.archive
```
下面命令是還原命令 請將備份的數據庫 解壓在新服務器上執行剛才備份的 `--db bookcms` 還原回去的時候也是這個名字請確認你mongodb 上沒有這個數據庫 `--drop` 參數則會刪除之前的數據庫 在重新導入備份
```
mongorestore -h 127.0.0.1:27017 --gzip --archive=./bookcms_db.archive
```