mongodb的详细使用教程

标题MongoDB使用教程

一、安装

1 下载 MongoDB 的安装包
在这里插入图片描述
选择安装包类型为msi,点击下载
在这里插入图片描述

配置环境变量
在这里插入图片描述

二、设置

1.win+S搜索cmd右键命令提示符,注意这里必须以管理员身份打开,否则后续配置服务会出错误:Error connecting to the Service Control Manager
在这里插入图片描述

2.输入以下命令,设置服务

1.	D:
2.	cd D:\MongoDB\Server\4.0\bin
3.	mongod --dbpath "D:\MongoDB\Server\4.0\bin" --logpath "D: \MongoDB\Server\4.2\log\MongoDB.log" --install --serviceName "MongoDB"

3.使用以下命令启动/关闭服务

1.	NET start MongoDB
2.	NET stop MongoDB
三、进入shell 命令
 mongo

在这里插入图片描述
就可以执行一系列数据库操作了

基本操作
show dbs;                  #查看全部数据库

show collections;          #显示当前数据库中的集合(类似关系数据库中的表)

show users;                #查看当前数据库的用户信息

use <db name>;             #切换数据库跟mysql一样

db;或者db.getName();        #查看当前所在数据库

db.help();                 #显示数据库操作命令,里面有很多的命令 
db.foo.help();             #显示集合操作命令,同样有很多的命令,foo指的是当前数据库下,一个叫foo的集合,并非真正意义上的命令 
db.foo.find();             #对于当前数据库中的foo集合进行数据查找(由于没有条件,会列出所有数据) 
db.foo.find( { a : 1 } );  #对于当前数据库中的foo集合进行查找,条件是数据中有一个属性叫a,且a的值为1
创建一个数据库
> use test;             #创建数据库
switched to db test
> db;               
test
> show dbs;           #检查数据库
admin 0.000GB
local 0.000GB

> db.test.insert({"_id":"520","name":"xiaoming"})         #创建表

WriteResult({ "nInserted" : 1 })

> db.createUser({user:"xiaoming",pwd:"123456",roles:[{role:"userAdmin",db:"test"}]})        #创建用户
Successfully added user: {
"user" : "xiaoming",
"roles" : [
{
"role" : "userAdmin",
"db" : "test"
}
]
}db.removeUser("userName");         #删除用户show users;                        #显示当前所有用户
db.dropDatabase(); #删除当前使用数据库
> show dbs;
admin 0.000GB
local 0.000GB
test 0.000GB
test_1 0.000GB

> db;
test_1

> db.dropDatabase();
{ "dropped" : "test_1", "ok" : 1 }


> show dbs;
admin 0.000GB
local 0.000GB
test 0.000GB
db.stats(); #显示当前db状态
> db.stats();
{
    "db" : "test_1",
    "collections" : 0,
    "views" : 0,
    "objects" : 0,
    "avgObjSize" : 0,
    "dataSize" : 0,
    "storageSize" : 0,
    "numExtents" : 0,
    "indexes" : 0,
    "indexSize" : 0,
    "fileSize" : 0,
    "ok" : 1
}
db.version(); #当前db版本
db.getMongo(); #查看当前db的链接机器地址
mongodb find查询文档
基本语法:

db.表名.find({'key':'value'});

实例:

> show dbs;
admin 0.000GB
easy-mock 0.001GB
local 0.000GB
> use easy-mock
switched to db easy-mock
> db
easy-mock
> show collections;
groups
mock_counts
mocks
projects
user_group
user_project
users
> db.users.find({'name':'xiaoming'});
{ "_id" : ObjectId("5bc859307e81d95b15f67c5c"), "head_img" : "//img.souche.com/20161230/png/fd9f8aecab317e177655049a49b64d02.png", "nick_name" : "1539856688465", "password" : "$2a$08$7mAecPo6N8ATesAxfKrPG.wb10Ns.LfntUNkce7p2pAJ0kAvW3fPm", "name" : "xiaoming", "create_at" : ISODate("2018-10-18T09:58:08.465Z"), "__v" : 0 }
mongodb update修改文档
# 查找name为xiaoming的用户,将用户的密码更改

> db.users.update({'name':'xiaoming'},{$set:{'password':'$2a$08$UIEXZ7uK1opggCsTkmE2buE.EuWjchH42GYDnPcEn0PL/Y5dVT7l2'}})
 > db.users.find({'name':'xiaoming'});{ "_id" : ObjectId("5bc859307e81d95b15f67c5c"), "head_img" : "//img.souche.com/20161230/png/fd9f8aecab317e177655049a49b64d02.png", "nick_name" : "1539856688465", "password" : "$2a$08$UIEXZ7uK1opggCsTkmE2buE.EuWjchH42GYDnPcEn0PL/Y5dVT7l2", "name" : "xiaoming", "create_at" : ISODate("2018-10-18T09:58:08.465Z"), "__v" : 0 }
开启远程访问
编辑配置文件:vi /etc/mongod.conf
bindIp: 172.16.40.205      #数据库所在服务器IP地址
保存重启数据库!
本地登录:mongo 172.16.40.205/admin -uadmin -p123456
远程登录:
1. 下载mongodb压缩包
mongodb-linux-x86_64-3.4.10.tgz
2. 解压
> tar zxvf mongodb-linux-x86_64-3.4.10.tgz
3. 进入bin目录
> cd mongodb-linux-x86_64-3.4.10/bin
4. 连接远程数据库
> ./mongo 172.16.40.205:27017/admin  -u user  -p  password
mongodDB备份与恢复

一、mongodDB备份

【语法】:mongodump -h <dbhost> -d <dbname> -o <dbdirectory>
-h:
MongDB所在服务器地址,例如:127.0.0.1或localhost,当然也可以指定端口号:127.0.0.1:27017

-d:
需要备份的数据库实例名,例如:users

-o:
指定备份的数据存放的目录位置,例如:/root/mongdbbak/,当然该目录需要提前建立,在备份完成后,系统自动在/root/mongdbbak/目录下建立一个users目录,这个目录里面存放该数据库实例的备份数据。数据形式是以JSON的格式文件存储。

例如: 
mongodump -h localhost -d users -o /root/mongdbbak/

二、mongodDB恢复

【语法】:mongorestore -h <hostname><:port> -d dbname <path>
--host <:port>, -h <:port>:
MongoDB所在服务器地址,默认为:localhost:27017

-d :
需要恢复的数据库实例名,例如:users,当然这个名称也可以和备份时候的不一样,比如user2

--drop:
恢复的时候,先删除当前数据,然后恢复备份的数据。就是说,恢复后,备份后添加修改的数据都会被删除,谨慎使用!

--dir:
指定备份的目录。

例如:
mongorestore -h localhost -d users --dir /root/mongdbbak/users
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

那就可爱多一点点

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值