成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

Yum安裝MongoDB及數(shù)據(jù)庫管理-創(chuàng)新互聯(lián)

MongoDB簡(jiǎn)介

MongoDB 是由C++語言編寫的,是一個(gè)基于分布式文件存儲(chǔ)的開源數(shù)據(jù)庫系統(tǒng)。在高負(fù)載的情況下,添加更多的節(jié)點(diǎn),可以保證服務(wù)器性能。MongoDB旨在為WEB應(yīng)用提供可擴(kuò)展的高性能數(shù)據(jù)存儲(chǔ)解決方案。MongoDB將數(shù)據(jù)存儲(chǔ)為一個(gè)文檔,數(shù)據(jù)結(jié)構(gòu)由鍵值(key=>value)對(duì)組成。MongoDB文檔類似于JSON對(duì)象。字段值可以包含其他文檔,數(shù)組及文檔數(shù)組。

我們提供的服務(wù)有:成都做網(wǎng)站、成都網(wǎng)站建設(shè)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、云陽ssl等。為上千余家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的云陽網(wǎng)站制作公司

MongoDB主要特點(diǎn)

  • MongoDB 是一個(gè)面向文檔存儲(chǔ)的數(shù)據(jù)庫,操作起來比較簡(jiǎn)單和容易
  • 在MongoDB記錄中設(shè)置任何屬性的索引來實(shí)現(xiàn)更快的排序
  • 通過本地或者網(wǎng)絡(luò)創(chuàng)建數(shù)據(jù)鏡像,使得MongoDB有更強(qiáng)的擴(kuò)展性
  • 如果負(fù)載的增加(需要更多的存儲(chǔ)空間和更強(qiáng)的處理能力),它可以分布在計(jì)算機(jī)網(wǎng)絡(luò)中的其他節(jié)點(diǎn)上這就是所謂的分片
  • Mongo支持豐富的查詢表達(dá)式。查詢指令使用JSON形式的標(biāo)記,可輕易查詢文檔中內(nèi)嵌的對(duì)象及數(shù)組
  • MongoDb 使用update()命令可以實(shí)現(xiàn)替換完成的文檔(數(shù)據(jù))或者一些指定的數(shù)據(jù)字段
  • Mongodb中的Map/reduce主要是用來對(duì)數(shù)據(jù)進(jìn)行批量處理和聚合操作
  • Map和Reduce。Map函數(shù)調(diào)用emit(key,value)遍歷集合中所有的記錄,將key與value傳給Reduce函數(shù)進(jìn)行處理
  • Map函數(shù)和Reduce函數(shù)是使用Javascript編寫的,并可以通過db.runCommand或mapreduce命令來執(zhí)行MapReduce操作
  • GridFS是MongoDB中的一個(gè)內(nèi)置功能,可以用于存放大量小文件
  • MongoDB允許在服務(wù)端執(zhí)行腳本,可以用Javascript編寫某個(gè)函數(shù),直接在服務(wù)端執(zhí)行,也可以把函數(shù)的定義存儲(chǔ)在服務(wù)端,下次直接調(diào)用即可
  • MongoDB支持各種編程語言:RUBY,PYTHON,JAVA,C++,PHP,C#等多種語言
  • MongoDB安裝簡(jiǎn)單

MongoDB的安裝

配置YUM源倉庫
cd /etc/yum.repos.d/
vim mongodb-org.repo
//創(chuàng)建yum倉庫,寫入如下內(nèi)容
[mongodb-org]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.6/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc
yum安裝
yum  install -y mongodb-org
配置文件修改

配置文件的修改包括path、dbpath、port和bindIp,如果只在本機(jī)使用,完全可以不做更改直接使用,也可簡(jiǎn)單修改其監(jiān)聽地址(bindIp),為其他地址使用提供方便。
Yum安裝MongoDB及數(shù)據(jù)庫管理

關(guān)閉防火墻及selinux
systemctl disable firewalld.service
systemctl stop firewalld.service
setenforce 0
開啟數(shù)據(jù)庫
systemctl start mongod.service
netstat -anpt | grep mongod

Yum安裝MongoDB及數(shù)據(jù)庫管理

進(jìn)入數(shù)據(jù)庫
mongo                 //進(jìn)入數(shù)據(jù)庫
db.version()          //查看數(shù)據(jù)庫版本
show dbs              //查看所有庫
db.getMongo()         //查看當(dāng)前數(shù)據(jù)庫機(jī)器的連接地址

Yum安裝MongoDB及數(shù)據(jù)庫管理

開啟多實(shí)例

創(chuàng)建path,dbpath目錄
mkdir -p  /data/mongodb/                      //*保留原文件屬性進(jìn)行復(fù)制
mkdir /data/mongodb/mongo
touch /data/mongodb/mongod2.log
chmod 777 /data/mongodb/mongod2.log
復(fù)制并修改配置文件配置文件
path: /data/mongodb/mongod.log
dbPath: /data/mongodb/mongo
port: 27018
bindIp: 0.0.0.0

Yum安裝MongoDB及數(shù)據(jù)庫管理

啟動(dòng)新實(shí)例
mongod -f /etc/mongod2.conf

Yum安裝MongoDB及數(shù)據(jù)庫管理

進(jìn)入新實(shí)例數(shù)據(jù)庫
mongo --port 27018
netstat -anpt | grep mongod

Yum安裝MongoDB及數(shù)據(jù)庫管理

數(shù)據(jù)庫管理

數(shù)據(jù)庫基本操作

mongodb中創(chuàng)建庫是和表緊密聯(lián)系在一起的,要?jiǎng)?chuàng)建庫,只需要use使用即可,當(dāng)你沒有在庫中創(chuàng)建集合(表),則該庫便不會(huì)存在,當(dāng)你創(chuàng)建了集合之后,庫也相應(yīng)的同時(shí)存在。

> use python    //若不存在則會(huì)自動(dòng)創(chuàng)建python庫,若是不創(chuàng)建集合,又會(huì)自行刪除
> db.createCollection('a')          //創(chuàng)建名稱為a的集合
> db.a.insert({“name”:“zhangsan”,"score":90,"hobby":["game","talk","sport"]})
//集合中插入數(shù)據(jù);字符串使用雙引號(hào);數(shù)值不加雙引號(hào);字符串?dāng)?shù)組使用[]括起來
> db.users.update()             //更改數(shù)據(jù)
> show collections               //查看集合
> db.a.drop()                       //刪除集合
> db.dropDatabase()          //刪除數(shù)據(jù)庫

Yum安裝MongoDB及數(shù)據(jù)庫管理
Yum安裝MongoDB及數(shù)據(jù)庫管理

實(shí)例演示

> use stady                     //使用庫
switched to db stady
> db.createCollection('school') //創(chuàng)建school集合
{ "ok" : 1 }
> db.school.insert({"id":1,"name":"lisi","score":90})   //向集合中插入數(shù)據(jù)
WriteResult({ "nInserted" : 1 })
> db.school.find()                                  //查看集合中數(shù)據(jù)
{ "_id" : ObjectId("5b4843900edf47ef3aa006f3"), "id" : 1, "name" : "lisi", "score" : 90 }
> for(var i=2;i<=5;i++)db.school.insert({"id":i,"name":"tom"+i})
//向集合中插入多條數(shù)據(jù)
WriteResult({ "nInserted" : 1 })
> db.school.find()                //查看集合數(shù)據(jù)
{ "_id" : ObjectId("5b4843900edf47ef3aa006f3"), "id" : 1, "name" : "lisi", "score" : 90 }
{ "_id" : ObjectId("5b4844e70edf47ef3aa006f4"), "id" : 2, "name" : "tom2" }
{ "_id" : ObjectId("5b4844e70edf47ef3aa006f5"), "id" : 3, "name" : "tom3" }
{ "_id" : ObjectId("5b4844e70edf47ef3aa006f6"), "id" : 4, "name" : "tom4" }
{ "_id" : ObjectId("5b4844e70edf47ef3aa006f7"), "id" : 5, "name" : "tom5" }
> db.school.findOne({"id":3})      //查看集合中第三條數(shù)據(jù)
{ "_id" : ObjectId("5b4844e70edf47ef3aa006f5"), "id" : 3, "name" : "tom3" }
> a=db.school.findOne({"id":3})    //查看第三條記錄,并將其賦予別名a
{ "_id" : ObjectId("5b4844e70edf47ef3aa006f5"), "id" : 3, "name" : "tom3" }
> typeof(a.id)           //查看屬性類型
number                   //屬性為數(shù)字
> typeof(a.name)         //查看屬性類型
string                   //屬性為字符串
> db.school.update({"id":3},{$set:{"name":"jack"}})      //修改數(shù)據(jù)
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.school.findOne({"id":3})
{ "_id" : ObjectId("5b4844e70edf47ef3aa006f5"), "id" : 3, "name" : "jack" }
> db.school.count()                  //統(tǒng)計(jì)集合中有多少條記錄
5
> db.createCollection('tea')         //創(chuàng)建新集合
{ "ok" : 1 }
> show tables                        //查看庫中集合
school
tea
> db.tea.drop()                      //刪除集合
true
> show tables                    
school                               //集合已刪除
> show dbs                           //查看庫
admin   0.000GB
config  0.000GB
local   0.000GB
python  0.000GB
stady   0.000GB
> use python
switched to db python
> db.dropDatabase()                  //刪除python數(shù)據(jù)庫,首先必須先進(jìn)數(shù)據(jù)庫,在選擇刪除
{ "dropped" : "python", "ok" : 1 }
> show dbs
admin   0.000GB
config  0.000GB
local   0.000GB
stady   0.000GB
>

數(shù)據(jù)的導(dǎo)入導(dǎo)出

導(dǎo)出庫中數(shù)據(jù)
[root@Nginx mongodb]#mongoexport -d stady -c school -o /opt/school.json   
//導(dǎo)出stady庫中的school集合到/opt下,命名為school.json 注意:文件名一定是.json結(jié)尾,要在linux模式操作

Yum安裝MongoDB及數(shù)據(jù)庫管理

導(dǎo)入數(shù)據(jù)到庫中
[root@Nginx mongodb]#mongoimport -d stady -c school2 --file /opt/school.json

Yum安裝MongoDB及數(shù)據(jù)庫管理

條件篩選導(dǎo)出
[root@Nginx mongodb]# mongoexport -d stady -c school -q '{"id":{"$eq":3}}' -o /opt/top3.json

Yum安裝MongoDB及數(shù)據(jù)庫管理

備份數(shù)據(jù)庫

mkdir /backup     //創(chuàng)建備份文件夾
mongodump -d stady -o /backup/

Yum安裝MongoDB及數(shù)據(jù)庫管理

恢復(fù)數(shù)據(jù)庫

mongorestore -d chen --dir=/backup/stady

Yum安裝MongoDB及數(shù)據(jù)庫管理

復(fù)制數(shù)據(jù)庫

db.copyDatabase()   //復(fù)制數(shù)據(jù)庫

####實(shí)例演示

db.copyDatabase("stady","stady2")      //將stady庫復(fù)制一個(gè)副本stady2
show dbs                                              //查看所有庫
show tables                                          //查看庫中所有集合

Yum安裝MongoDB及數(shù)據(jù)庫管理

復(fù)制集合到新實(shí)例

實(shí)例演示
mongo -port 27018       //進(jìn)入新實(shí)例
db.runCommand({"cloneCollection":"stady.school","from":"172.16.10.27:27017"})

Yum安裝MongoDB及數(shù)據(jù)庫管理

進(jìn)程管理

實(shí)例演示
db.currentOp()
db.killOp(1689)

當(dāng)你覺得某個(gè)進(jìn)程占用資源量特別大時(shí),可以將其結(jié)束,當(dāng)你結(jié)束其之后,它又會(huì)重新加載,相當(dāng)于進(jìn)程初始化

Yum安裝MongoDB及數(shù)據(jù)庫管理

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

分享標(biāo)題:Yum安裝MongoDB及數(shù)據(jù)庫管理-創(chuàng)新互聯(lián)
網(wǎng)頁網(wǎng)址:http://jinyejixie.com/article16/dieodg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版定制網(wǎng)站、域名注冊(cè)、虛擬主機(jī)、品牌網(wǎng)站設(shè)計(jì)、小程序開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名
乌鲁木齐县| 微山县| 墨玉县| 祁连县| 芜湖市| 久治县| 和顺县| 且末县| 冀州市| 通州区| 三穗县| 镇康县| 西平县| 介休市| 广水市| 佳木斯市| 讷河市| 运城市| 郴州市| 通海县| 石家庄市| 柞水县| 乐东| 井冈山市| 中宁县| 临武县| 息烽县| 南和县| 集贤县| 余干县| 郧西县| 柳州市| 绿春县| 松潘县| 水富县| 珠海市| 鹰潭市| 长宁区| 江华| 平远县| 本溪市|