主页 > 新闻资讯 > 大数据学习:MongoDB Shell的数据库操作

大数据学习:MongoDB Shell的数据库操作

作者:张老师 浏览次数: 2021-04-06 17:28
在使用MongoDB数据库的过程当中,对于Shell命令的掌握是最基本的要求。对于一般的增删改查,都能够熟练地运用Shell解决,这才是学习MongoDB的正确姿势。今天的大数据学习分享,我们就主要来讲讲MongoDB Shell的数据库操作。

大数据学习:MongoDB Shell的数据库操作

1、创建数据库

语法

use DATABASE_NAME

如果DATABASE_NAME库不存在,则创建数据库,否则切换到DATABASE_NAME库。

示例
> use 111
switched to db 111
> db
111
>

如果想查看所有数据库,可以使用 show dbs 命令:

> show dbs
admin   0.000GB
config  0.000GB
local   0.000GB

我们刚才创建的111库不在列表里面,那是因为我们要向111库里面插入数据后才能显示

> use 111
switched to db 111
> db.test.insert({name:"数字"})
WriteResult({ "nInserted" : 1 })
>
> show dbs
111     0.000GB
admin   0.000GB
config  0.000GB
local   0.000GB

2、删除数据库

语法

db.dropDatabase()

删除当前数据库,默认为 test,你可以使用 db 命令查看当前数据库名。

示例
> show dbs
111     0.000GB
admin   0.000GB
config  0.000GB
local   0.000GB
>
> use 111
switched to db 111
> db.dropDatabase()
{ "dropped" : "111", "ok" : 1 }
>
> show dbs
admin   0.000GB
config  0.000GB
local   0.000GB

3、Shell脚本中执行MongoDB命令

对于平常经常使用 MongoDB 的用户来讲,势必会经常进行查询、维护等操作。一般情况下,我们会使用图形化界面的客户端工具来操作,例如 Studio 3T for MongoDB。
那万一因为某种原因你只能在封闭环境(外网不可达或未暴漏 MongoDB 服务端口)上操作,并且是大量操作。这就需要在shell 脚本中执行了。

示例:

#! /bin/bash

./mongo 127.0.0.1:27017/test <<EOF
  var cursor = db.UserInfo.find();
  while(cursor.hasNext()){
    var item = cursor.next();
    print(item.userAccount);
  }
EOF

shell脚本说明:

•./mongo mongo可执行程序,即登录的命令行命令
•127.0.0.1:27017 MongoDB服务的IP和端口
•test 要操作的MongoDB数据库名
•<<EOF ... EOF 待执行的命令。注意最后一个EOF必须在行首,前面不要加任何字符。并且EOF可以替换成任意的字符串(两个需要保持一致)。等多的shell子命令的知识您可以再自行翻阅下资料,这里就不多讲了。

4、MongoDB语句作为一个js脚本来执行

准备两个文件:

•test.js

var cursor = db.UserInfo.find();
while(cursor.hasNext()){
  var item = cursor.next();
  print(item.userAccount);
}
•shell脚本

#! /bin/bash

./mongo 127.0.0.1:27017/test ./test.js
shell脚本说明:

•./mongo mongo可执行程序,即登录的命令行命令
•127.0.0.1:27017 MongoDB服务的IP和端口
•test 要操作的MongoDB数据库名

您也可以在会话中使用如下方式执行:

./mongo 127.0.0.1:27017/test ./test.js

如上就是两种简单的在shell下执行MongoDB的方式。通过上面的方法,您可以将脚本的输出重定向到一个文件,或使用管道命令结合其他命令行工具的方式来进行二次分析,以达到事半功倍的效果。

关于大数据学习,MongoDB Shell的数据库操作,以上就为大家做了简单的介绍了。MongoDB的数据库操作,尤其是遇到需要在Shell当中去执行的情况下,建议多练习才能熟能生巧。成都加米谷大数据,专业大数据培训机构,大数据开发、数据分析与挖掘,零基础班本月正在招生中,课程大纲及学习视频,可联系客服获取!
热点排行
推荐文章
立即申请>>