mongodb安装Windows服务、数据备份还原、数据失效、建立索引、主从配置
程序员文章站
2024-03-16 22:08:34
...
一、操作步骤
①准备一个mongodb安装包
②在安装目录下创建文件夹、修改配置项
③安装、卸载windows服务
④导入(还原)、导出(备份)数据(单集合、整个库)
⑤创建索引
⑥设置数据自动失效
⑦DDL语句
⑧mongodb可视化工具-Robomongo
⑨ mongodb主从配置、加入连接权限
二、详细步骤
1、准备一个mongodb安装包
mongodb-win32-x86_64-2008plus-ssl-3.4.0-signed.msi
2、在安装目录下创建文件夹、修改配置项
我的安装路径是:D:\mongodb\bin
1. 创建文件夹data,data里创建db和logs文件夹,
2. logs文件夹下创建mongodb.log
3. 创建配置文件mongo.config、修改mongo.config
完成后如下图所示
3、安装、卸载windows服务
进入bin目录下安装Windows服务
mongod --logpath "D:\mongodb\data\logs\mongodb.log" --logappend --dbpath "D:\mongodb\data" --directoryperdb --serviceName "MongoDB" --serviceDisplayName "MongoDB" --install
参数说明:
--logpath:日志文件
--dbpath:数据文件
--serviceName:windows服务名
安装windows服务
启动用Robomongo 工具连接测试
删除服务
SC DELETE MongoDB
4、导入(还原)、导出(备份)数据
(1)准备数据,创建集合:student、subject
(2)执行整个库导出:导出后我们删除这个库
创建文件夹
执行导出
导出命令-整个库:图1
mongodump -h 127.0.0.1:27017 -d test_import -o d:\mongodb\back
参数说明:-d 后面是导出数据库名
-o 后面是导出存储路径
导出命令-单个集合:
mongoexport --host 127.0.0.1 --port 27017 --collection student --db test_import --out d:\mongodb\back\student.json
参数说明:
--collection 后面是集合名字
--db 后面是导出数据库名
--out 后面是备份集合的存储位置、文件名称
图1
导出数据:
删除数据库
执行导入
导入命令-整个库:图1
mongorestore -h 127.0.0.1:27017 -d test_import --dir d:\mongodb\back\test_import
导入命令-单个集合:
参数说明:
-d 后面是设置数据库名
--dir后面是要导入的数据库路径
导入命令-单个集合:
mongoimport --host 127.0.0.1 --port 27017 --collection logPolicy --db test_import --file d:\mongodb\back\student.json
导入命令-单个集合:
参数说明:
--collection 后面是新集合名字
--db 后面是入到的数据库名
--file 后面是导入数据的存放路径和文件名
图1
5、创建索引
语法:
db.getCollection('student').ensureIndex({"id" : 1},{name:'student_id',background:true})
6、设置数据失效时间10秒
示例:
db.testCollection.insert({"Date" : new Date(),"name":"zs","age":18})
db.testCollection.ensureIndex( { "Date": 1 }, { expireAfterSeconds: 10 } )
语法:如下图所示
db.student.ensureIndex( { "Date": 1 }, { expireAfterSeconds: 10} )
7、DDL语句
切换/创建数据库, 当创建一个集合(table)的时候会自动创建当前数据库
use test_import
创建集合:
db.createCollection("student")
集合插入数据
db.student.insert({"Date" : new Date(),"name":"lisi","age":28})
db.subject.insert({"Date" : new Date(),"sid":"2","sname":"数学"})
查询
db.getCollection('student').find({'name':'zhangsan'})
8、Robomongo 工具使用
9、mongodb主从配置