数据库迁移,可视化工具NoSQLBooster for MongoDB 付费版才具备数据导入功能.代价太高,索性采取命令行
备份命令
mongodump -h dbhost -d dbname -o dbdirectory
-h:
MongDB所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017
-d:
需要备份的数据库实例,例如:test
-o:
备份的数据存放位置,例如:c:\data\dump,当然该目录需要提前建立,在备份完成后,系统自动在dump目录下建立一个test目录,这个目录里面存放该数据库实例的备份数据。
示例
mongodump -h 127.0.0.1:27017 -d 数据库名称 -o 备份文件目录 -u username -p password
数据库如有认证,后面需加上 -u -p
mongorestore -h <:port> -d dbname --drop
–host <:port>, -h <:port>:
MongoDB所在服务器地址,默认为: localhost:27017
–db , -d :
需要恢复的数据库实例,例如:test,当然这个名称也可以和备份时候的不一样,比如test2
–drop:
恢复的时候,先删除当前数据,然后恢复备份的数据。就是说,恢复后,备份后添加修改的数据都会被删除,慎用哦!
:
mongorestore 最后的一个参数,设置备份数据所在位置,例如:c:\data\dump\test。
你不能同时指定 和 --dir 选项,–dir也可以设置备份目录。
–dir:
指定备份的目录
你不能同时指定 和 --dir 选项。
示例
mongorestore -h 127.0.0.1:27017 -d 数据库名称 --dir 备份文件所在目录 --drop -u username -p password
数据库如有认证,后面需加上 -u -p
数据库添加管理员.
mongodb开启授权登录 参见添加链接描述
开始数据库授权后,需要先设置admin数据库的账号密码
//使用admin数据库
use admin
//给admin数据库添加管理员用户名和密码,用户名和密码请自行设置
db.createUser({user:"admin",pwd:"123456",roles:["root"]})
//验证是否成功,返回1则代表成功
db.auth("admin", "123456")
//切换到要设置的数据库,以test为例
use test
//为test创建用户,用户名和密码请自行设置。
db.createUser({user: "test", pwd: "123456", roles: [{ role: "dbOwner", db: "test" }]})
此时如若操作test数据库 备份/还原数据 后面需要加参数 -u test -p 123456
即可.
./mongoimport --db taobao --collection dress --file /home/test/taobao.json
在mongodb的安装目录bin目录下执行以上命令.
–db 后跟数据库名
–clollection 后跟集合名(表名)
–file 后跟json文件的路径
如果数据库需要授权,则需要加上 -u 用户名 -p 密码