Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

Installation of MongoDB online yum source and detailed explanation of basic commands

2025-02-23 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Database >

Share

Shulou(Shulou.com)06/01 Report--

MongoDB简介1)Mongodb属于非关系性数据库 ,数据记录以文档形式(键值对)进行存储,即bson格式2)不再有"行"(row)的概念,其运行方式主要基于两个概念:集合(collection)与文档(document)3)支持各种编程语言:Ruby,Python,Java,C++,PHP,C#等多种语言逻辑结构对比关系型:数据库------》表------------》记录,字段非关系型:数据库-----------》集合----------》键值对何为键值对书写格式:{键值:值}键值对:如{"name":"zhangsan"} 键值必须双引号,值如果是数值(int)可以不用双引号引起来,如果是字符串(string)必须用双引号引起来。本次实验在CentOS7系统上进行实施,首先配置网络YUM源,baseurl(下载路径)指定为mongodb官网提供的yum仓库

vim /etc/yum.repos.d/mongodb.repo

[mongodb-org]

name=MongoDB Repository

baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.6/x86_64/ #指定获得下载的路径

gpgcheck=1 #表示对从这个源下载的rpm包进行校验

enabled=1 #表示启用这个源。

gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc

重新加载yum源,并使用yum命令下载安装mongodb

yum list

yum -y install mongodb-org

等待下载好之后,修改配置文件,指定监听IP,端口默认为27017

vim /etc/mongod.conf

..........

bindIp:0.0.0.0 #监听任意地址

port:27017 #默认监听端口

启动mongodb服务,并进入mongodb。mongodb服务的启动,关闭有两种方式

(1)systemctl start mongod.service #启动

systemctl stop mongod.service #关闭

(2) mongod -f /etc/mongod.conf #启动

mongod -f /etc/mongod.conf --shutdown #关闭

开启服务后,查看mongodb进程

netstat -antp | grep mongod

tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 16540/mongod

下面主要讲解Mongodb的基本操作及语句应用,mongodb十分人性化自带Tab键补全功能不需要使用密码直接使用mongo命令进入服务

查看版本信息

> db.version()

3.6.7

查看数据库

> show dbs

admin 0.000GB

config 0.000GB

local 0.000GB

myschool 0.000GB

school 0.000GB

进入数据库(如果创建集合则自动创建数据库,如果没有创建集合则数据库没有被创建),

> use yun

switched to db yun

创建集合;插入数据信息,并同时创建集合info

> db.createCollection("abc")

{ "ok" : 1 }

> db.info.insert({"id":1,"name":"jack1"})

WriteResult({ "nInserted" : 1 })

查看集合

> show tables

info

> show collections

info

使用循环批量添加用户

> for (var i=2;i db.abc.find()

查看单条数据

db.abc.findOne({"id":10})

{

"_id" : ObjectId("5b972d38fb89e57a63998a84"),

"id" : 10,

"name" : "jack10"

> a=db.abc.findOne({"id":10}) #把这条记录定义别名为a

{

"_id" : ObjectId("5b9a6f39e80a2611eecb6f7b"),

"id" : 10,

"name" : "jack10"

查看类型

> typeof(a.id)

number

> typeof(a.name)

String

修改数据:

db.info.update({"id":10},{$set:{"name":"tom10"}}) 格式:条件在前,修改在后

db.info.findOne({"id":10})

{

"_id" : ObjectId("5b972d38fb89e57a63998a84"),

"id" : 10,

"name" : "tom10"

聚合函数统计记录

db.info.count()

100

删除集合,数据

db.info.remove({"id":12}) //删除数据

Db.info.drop() //删除集合

先进入该数据库,再用下面的命令删除数据库

Use school

db.dropDatebase() //删除数据库

数据跨实例克隆集合:db.runCommand({"clonecollection":"school.info","from":"192.168.195.137:27017"})数据的备份与恢复,导入与导出,是在linux的shell环境进行操作数据导出mongoexport -d school -c info -o /opt/school.jason条件导出 -q '{"id":{"$eq":10}}'mongoexport -d school -c info -q '{"id":{"$eq":10}}' -o /opt/school10.jason数据导入mongoimport -d school -c infos --file /opt/school.jason数据库备份与恢复,都不需要额外创建数据库和目录数据库备份mongodump -d yunwei(库名) -o /opt(路径)数据库恢复mongorestore -d yunjisuan2 --dir=/opt/yunjisuan授权启动在mongodb中进行授权

> use admin

switched to db admin

> db.createUser({"user":"root","pwd":"abc123","roles":["root"]})

Successfully added user: { "user" : "root", "roles" : [ "root" ] }

退出mongodb,修改配置文件 指定auth=true,否则授权不起作用

vim /etc/mongod.conf

auth=true

重启服务,再进入mongodb,只有通过授权验证才可以查看数据信息

vim mongodb.conf

> use admin

switched to db admin

> db.auth("root","abc123")

1

> show dbs

admin 0.078GB

local 0.078GB

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Database

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report