欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

NoSQL--Mongodb安裝使用副本集備份恢-創(chuàng)新互聯(lián)

NoSQL -- Mongodb 安裝 使用 副本集 備份恢

成都創(chuàng)新互聯(lián)公司從2013年創(chuàng)立,先為太平等服務(wù)建站,太平等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為太平企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。

Mongodb 是由c++編寫的基于分布式文件存儲(chǔ)的開(kāi)源數(shù)據(jù)庫(kù)系統(tǒng),介于關(guān)系數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)庫(kù)之間,支持查詢語(yǔ)言很強(qiáng)大。高負(fù)載情況下,添加多個(gè)節(jié)點(diǎn)保證服務(wù)器性能,旨在為web應(yīng)用提供可擴(kuò)展的高性能存儲(chǔ);mongodb將數(shù)據(jù)存儲(chǔ)為一個(gè)文檔,由鍵值對(duì)(key=>value)組成,類似json對(duì)象。

官網(wǎng):https://www.mongodb.com/

應(yīng)用:

CERN,著名的粒子物理研究所,歐洲核子研究中心大型強(qiáng)子對(duì)撞機(jī)的數(shù)據(jù)使用MongoDB;

Craiglist,上使用MongoDB的存檔數(shù)十億條記錄;

Shutterfly,以互聯(lián)網(wǎng)為基礎(chǔ)的社會(huì)和個(gè)人出版服務(wù),使用MongoDB的各種持久性數(shù)據(jù)存儲(chǔ)的要求;

Intuit公司,一個(gè)為小企業(yè)和個(gè)人的軟件和服務(wù)提供商,為小型企業(yè)使用MongoDB的跟蹤用戶的數(shù)據(jù);

NoSQL -- Mongodb 安裝 使用 副本集 備份恢

NoSQL -- Mongodb 安裝 使用 副本集 備份恢

 mongodb 安 裝

www.apelearn.com/bbs/data/download/mongodb-org-3.0.tar.gz //rpm包,大家 可以用

官方提供的源只支持64位系統(tǒng),安裝的epel擴(kuò)展源,可以安裝mongodb2.4版本,此次我們安裝3.0版本

vim /etc/yum.repos.d/mongodb-org-3.0.repo //加入如下內(nèi)容
[mongodb-org-3.0]
name=MongoDB Repository
baseurl=http://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.0/x86_64/
gpgcheck=0
enabled=1
安裝:yum install -y mongodb-org
編輯:vim /etc/mongod.conf
fork: true
pidFilePath: /var/run/mongodb/mongod.pid

bind_ip: 192.168.1.1,192.168.1.2,192.168.1.3 # 留空的話表示監(jiān)聽(tīng)所有

注:把這兩行后面#開(kāi)頭的注釋刪掉,否則重啟的時(shí)候會(huì)有問(wèn)題
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
vim /etc/security/limits.conf //加入
mongod soft nofile 64000
mongod hard nofile 64000
mongod soft nproc 32000
mongod hard nproc 32000
啟動(dòng):service mongod start  # 啟動(dòng)的過(guò)程會(huì)比較慢,這是它在寫數(shù)據(jù) /var/lib/mongo

啟動(dòng)失敗的話,可用下面方式啟動(dòng):mongod -f /etc/mongod.conf

mongodb 的 使 用
mongodb 連接:

mongo  //直接進(jìn)入mongo的shell

mongo --port 27018  //指定監(jiān)聽(tīng)端口進(jìn)入

mongo --host 127.0.0.1  //連接遠(yuǎn)程mongo

mongo -uusername -ppasswd  //設(shè)置驗(yàn)證時(shí)指定用戶名密碼,和mysql類似

mongodb 用戶管理:

use admin   //切換到admin庫(kù)下,admin和test是默認(rèn)自帶的倆庫(kù)

use teng12  //切換到teng12庫(kù),不存在會(huì)自動(dòng)創(chuàng)建

show users  //查看當(dāng)前庫(kù)下所有的用戶

db.system.users.find()  //列出所有用戶,需要切換到admin庫(kù)

db.createUser({user:"admin",pwd:"123456",roles:[{role:'dbOwner',db:'userdb'}]})  //創(chuàng)建用戶

db.dropUser('admin') //刪除用戶

用戶角色:http://bbs.51cto.com/thread-1146654-1.html

mongodb 庫(kù)管理:

db.stats()   //查看當(dāng)前庫(kù)的信息

db.version()  //查看版本

show teng12 //查看庫(kù),該庫(kù)是空的所以無(wú)userdb,創(chuàng)建個(gè)集合就可看到

db.createCollection('clo1')  //創(chuàng)建集合clo1,在當(dāng)前庫(kù)下面創(chuàng)建

db.dropDatabase()  //刪除當(dāng)前庫(kù),要想刪除某個(gè)庫(kù),必須切換到那個(gè)庫(kù)下

db.serverStatus()  //查看mongodb服務(wù)器的狀態(tài)

mongodb 集合:

db.createCollection("mycol", { capped : true, autoIndexID : true, size : 6142800, max : 10000 } ) 

//語(yǔ)法:db.createCollection(name,options)

name:集合的名字。options可選,用來(lái)配置集合的參數(shù),參數(shù)如下

autoindexID true/false (可選)如果為true,自動(dòng)創(chuàng)建索引_id字段的默認(rèn)值是false;

capped true/false (可選)如果為true,則啟用封頂集合。達(dá)其大值就會(huì)覆蓋最早條目;

size (可選)指定大大小字節(jié)封頂集合。封頂如果是 true,那么你還需要指定這個(gè)字段。單位B

max (可選)指定封頂集合允許在文件的大數(shù)量

mongodb 數(shù)據(jù)管理:

db.Account.insert({AccountID:1,UserName:"123",password:"123456"})  //創(chuàng)建集合

db.Account.update({AccountID:1},{"$set":{"Age":20}})  //更新

show collections  //查看集合,或者使用show tables

db.Account.find()  //查看所有文檔

db.Account.drop()  //刪除所有文檔,即刪除集合

db.printCollectionStats() // 然后查看集合狀態(tài)

db.Account.find({AccountID:1})  //根據(jù)條件查詢

db.Account.remove({AccountID:1}) //根據(jù)條件刪除

 副 本 集
早期版本使用一主一從,類似mysql,但slave在此架構(gòu)為只讀,主宕機(jī)后,從無(wú)法自動(dòng)切為換主;

目前已由主從改為副本集,為一主(primary)多從(secondary,只讀),支持以權(quán)重切換從為主,此架構(gòu)中可建立一個(gè)仲裁(arbiter)角色,只負(fù)責(zé)裁決,不存儲(chǔ)數(shù)據(jù),此架構(gòu)中讀寫數(shù)據(jù)都在主上,若實(shí)現(xiàn)負(fù)載均衡需要手動(dòng)指定從庫(kù)的目標(biāo)server。

NoSQL -- Mongodb 安裝 使用 副本集 備份恢

primary
secondary
secondary
192.168.1.1
192.168.1.2
192.168.1.3

編輯:vim /etc/mongod.conf  # 之后重啟三臺(tái)機(jī)器

replication: ##oplog大小   oplogSizeMB: 20 ##復(fù)制集名稱   replSetName: teng

連接主,在主上運(yùn)行命令mongo
> use admin
> config={_id:"teng",members:[{_id:0,host:"192.168.1.1:27017"},{_id:1,host:"192.168.1.2:27017"},{_id:2,host:"192.168.1.3:27017"}]}
> rs.initiate(config)
> rs.add("192.168.1.2")
> rs.add("192.168.1.3")
rs.status() //查看狀態(tài)
如果兩個(gè)從上的狀態(tài)為"stateStr" : "STARTUP", 則需要進(jìn)行如下操作
> var config=config={_id:"teng",members:[{_id:0,host:"192.168.1.1:27017"},{_id:1,host:"192.168.1.2:27017"},{_id:2,host:"192.168.1.3:27017"}]}

> rs.reconfig(config)

此時(shí)再次查看rs.status()會(huì)發(fā)現(xiàn)從的狀態(tài)變?yōu)镾ECONDARY

主上建庫(kù),建集合
> use mydb
> db.acc.insert({AccountID:1,UserName:"123",password:"123456"})
> show dbs
從上查看
> show dbs
若出現(xiàn)錯(cuò)誤Error: listDatabases failed:{ "note" : "from execCommand", "ok" : 0, "errmsg" : "not master" },需要執(zhí)行
> rs.slaveok()   

更改權(quán)重模仿主宕機(jī):

默認(rèn)三臺(tái)機(jī)器權(quán)重都為1,如果任何一個(gè)權(quán)重設(shè)置為比其他的高,則該臺(tái)機(jī)器馬上切換為primary角色,所以我們預(yù)設(shè)三臺(tái)機(jī)器的權(quán)重分別為:1:3,2:2,3:1
在主上執(zhí)行
cfg = rs.conf()
cfg.members[0].priority = 3
cfg.members[1].priority = 2
cfg.members[2].priority = 1
rs.reconfig(cfg)
這樣的話,第二個(gè)節(jié)點(diǎn)將會(huì)成為候選主節(jié)點(diǎn)。
主上執(zhí)行:iptables -I INPUT -p tcp --dport 27017 -j DROP

 mongodb 備 份 恢 復(fù)

備份指定庫(kù):mongodump -h ip -d dbname -o dir  //-o后指定備份到哪里,它是一個(gè)目錄

備份所有庫(kù):mongodump -h ip -o dir  //不加數(shù)據(jù)庫(kù)dbname,則備份所有庫(kù)

備份指定集合:mongodump -d mydb -c testc -o /tmp/testc  //-c指定集合名字

導(dǎo)出指定集合:mongoexport -d mydb -c testc -o /tmp/testc.json  //-o后面跟的是一個(gè)文件名字

恢復(fù)指定庫(kù):mongorestore -d mydb dir/  //-d 恢復(fù)庫(kù)的名字,dir就是該庫(kù)備份時(shí)所在的目錄

恢復(fù)所有庫(kù):mongorestore --drop dir/   //--drop可選,指恢復(fù)之前刪除之前數(shù)據(jù),不建議使用

恢復(fù)集合:mongorestore -d mydb -c testc dir/mydb/testc.bson // -c 集合名,bson文件的路徑

導(dǎo)入集合:mongoimport -d mydb -c testc --file /tmp/testc.json

-------------------------------------------------------------------------------------------------

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+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)景需求。

新聞名稱:NoSQL--Mongodb安裝使用副本集備份恢-創(chuàng)新互聯(lián)
分享鏈接:http://chinadenli.net/article26/cdjocg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄標(biāo)簽優(yōu)化ChatGPT靜態(tài)網(wǎng)站移動(dòng)網(wǎng)站建設(shè)手機(jī)網(wǎng)站建設(shè)

廣告

聲明:本網(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í)需注明來(lái)源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化