天天看点

Mongodb基础操作、自动备份和还原

Mongodb基础操作、自动备份和还原

准备条件:已下载绿色版MongoDB服务软件,本人以3.2的版本操作。

1、 基础操作

1-在系统变量path中加上 mongodb的bin路径

;D:\dgm\MongoDB\Server\3.2\bin;

2-新建文件夹路径

mongodb数据库存储路径 dbpath--- D:\dgm\AutoBack\mongodbData\db 

mongodb日志存储路径 logpath--- D:\dgm\AutoBack\mongodbData\log\MongoDB.log

3-1新建未授权的bat启动文件:startMongoDbNoAuth.bat文件(对应的dbpath,logpath路径), 文件内容:

mongod --dbpath F:\developSoftWare\MongoDBData\db --logpath F:\developSoftWare\MongoDBData\log\MongoDb.log

3-2新建授权的bat启动文件:startMongoDb.bat文件(对应的dbpath,logpath路径),文件内容:

mongod --dbpath F:\developSoftWare\MongoDBData\db --logpath F:\developSoftWare\MongoDBData\log\MongoDb.log --auth

4-启动未授权的服务startMongoDbNoAuth.bat

5-1:启动服务后,新建startMongoDbClient.bat,文件内容:

mongo.exe --port=27017 --host=localhost

5-启动客户端startMongoDbClient后,修改账号密码

db.system.version.find();

use admin

db.createUser(

{

user: "tlb",

pwd: "tlb",

roles: [ { role: "userAdminAnyDatabase", db: "admin" },{

                          role : "root",

                          db : "admin"

                  } ]

}

)

db.system.users.find();

db.createUser(

{

user: "tlb",

pwd: "tlb",

roles: [ { role: "readWrite", db: "dgm" } ]

}

)

db.auth('tlb','tlb')

6-启动授权的服务startMongoDb.bat

7-启动服务后,启动客户端startMongoDbClient,用账号密码连接数据库

参考命令网址: http://www.jianshu.com/p/5844fdfa9511

2、 自动备份脚本

 REM 参数配置(参数前后不能有空格)在path中添加mongodb的bin路径

REM 设置dbhost为主机名或IP地址

SET dbhost=127.0.0.1

REM 设置dbport为端口

SET dbport=27017

REM 设置登陆mysql数据库的用户名。如果用户名中有"号,请用""代替。

SET dbuser=tlb

REM 设置登陆mysql的密码。如果密码中有"号,请用""代替。

SET dbpwd=tlb

REM 设置backupPath为备份文件存放的路径。注意:文件夹名存在空格不需要引号括起来。警告:此文件夹应为专用目录,最好独立使用,避免删除历史备份时误删数据。

SET backupPath=D:/xmsa/DataBackup/Mongodbbackup/Mongodbback

REM 设置%myDate%为当前日期(2013-01-02)。因为日期后可能跟一个空格和星期几,并且日期中可能是”/"分割,所以要去除掉星期几和斜线。

FOR /F "tokens=1,2* delims= " %%i IN ('ECHO %date:/=-%') DO SET "myDate=%%i"

REM 设置%MyTime%为当前时间。格式:20.56.30.99

SET myTime=%TIME::=.%

SET myTime=%myTime: =0%

SET dbbase=xmsa_manage

mongodump --host="%dbhost%" --port="%dbport%"  -u"%dbuser%" -p"%dbpwd%" --db=%dbbase% -o %backupPath%%myDate%_%MyTime%

3、 还原脚本

 REM 参数配置(参数前后不能有空格)在path中添加mongodb的bin路径

REM 设置dbhost为主机名或IP地址

SET dbhost=localhost

REM 设置dbport为端口

SET dbport=27017

REM 设置登陆mysql数据库的用户名。如果用户名中有"号,请用""代替。

SET dbuser=tlb

REM 设置登陆mysql的密码。如果密码中有"号,请用""代替。

SET dbpwd=tlb

REM 设置backupPath为备份文件存放的路径。注意:文件夹名存在空格不需要引号括起来。警告:此文件夹应为专用目录,最好独立使用,避免删除历史备份时误删数据。

SET directoryperdbPath=F:/developSoftWare/Mongodbbackup/Mongodbback/2017-11-30_10.06.09.23/jf

SET dbbase=jf

REM mongorestore --host="%dbhost%" --port="%dbport%"  -u"%dbuser%" -p"%dbpwd%" -d=%dbbase% --directoryperdb %directoryperdbPath%

REM mongorestore --host="%dbhost%" --port="%dbport%"  -u="%dbuser%" -p="%dbpwd%" -d=%dbbase% --dir=%directoryperdbPath%

mongorestore -h 127.0.0.1:27017 -u tlb -p tlb -djf F:/developSoftWare/Mongodbbackup/Mongodbback/2017-11-30_10.06.09.23/jf