NOSQL介紹(七)
成都創(chuàng)新互聯(lián)專注于嘉黎企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站設(shè)計(jì),商城網(wǎng)站建設(shè)。嘉黎網(wǎng)站建設(shè)公司,為嘉黎等地區(qū)提供建站服務(wù)。全流程定制開發(fā),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
MongoDB介紹
MongoDB和關(guān)系型數(shù)據(jù)庫的對比
SQL術(shù)語概念 | MongoDB術(shù)語概念 | 解釋說明 |
---|---|---|
database | database | 數(shù)據(jù)庫 |
table | collection | 數(shù)據(jù)庫表/集合 |
row | document | 數(shù)據(jù)記錄行/文檔 |
column | filed | 數(shù)據(jù)字段/域 |
index | index | 索引 |
table joins | 表連接MongoDB不支持 | |
primary key | primary key | 主鍵MongoDB自動將_id字段設(shè)置為主鍵 |
MongoDB安裝
官方安裝文檔 https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/
vim /etc/yum.repos.d/mongodb-org-3.6.repo
[mongodb-org-3.6]
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 list | grep mongodb
yum install -y mongodb-org
MongoDB的連接
systemctl start mongod.service
netstat -tlnp|grep mongod
tcp 0 0 192.168.221.10:27017 0.0.0.0:* LISTEN 1999/mongod
tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN 1999/mongod
mongo --port 27017 --host 192.168.221.10
mongo -uusername -ppasswd --authenticationDatabase db
MongoDB用戶管理
mongo --port 27017 --host 192.168.221.10
> use admin //切換到admin庫
> db.createUser({user:"admin",customData:{description:"superuser"},pwd:"admin",roles:[{role:"root",db:"admin"}]});
> db.system.users.find();
> show users;
> db.createUser({user:"zs",pwd:"zs",roles:[{role:"read",db:"testdb"}]});//創(chuàng)建zs用戶
> db.dropUser('zs');//刪除用戶zs
使用用戶名,密碼連接mongo數(shù)據(jù)庫,需要修改啟動腳本并重啟
vim /usr/lig/systemd/system/mongod.service //在"OPTIONS="后加"--auth"
Environment="OPTIONS=--auth -f /etc/mongod.conf"
systemctl daemon-reload
systemctl restart mongod.service
mongo -u 'admin' -p 'admin' --authenticationDatabase 'admin' //需要指定數(shù)據(jù)庫
在數(shù)據(jù)庫db1中創(chuàng)建用戶test1對db1庫讀寫,對db2庫只讀。
> use db1;
> db.createUser({user:"test1",pwd:"test1",roles:[{role:"readWrite",db:"db1"},{role:"read",db:"db2"}]});
ctrl+d
mongo -u 'test1' -p 'test1' --authenticationDatabase 'db1'
> use db2;
> db.auth("test1","test1");
Error: Authentication failed. //報錯,因?yàn)橛脩魌est1在db1中創(chuàng)建
MongoDB用戶角色
MongoDB創(chuàng)建集合
//db.createCollection(name,options);
name就是集合的名字,iptions可選,用來配置集合的參數(shù),參數(shù)如下:
capped true/false:為true,則啟用封頂集合。封頂集合是固定大小的集合,當(dāng)它達(dá)到其最大大小,會自動覆蓋最早的條目。如果指定true,則也需要指定尺寸參數(shù)。
size (可選)指定最大大小字節(jié)封頂集合。如果封頂為true,還需要指定這個字段
max 指定封頂集合允許在文件的最大數(shù)量。
> db.createCollection('mycol',{capped:true,size:6142800,max:10000});
查看集合
> show tables; 或 show collections
創(chuàng)建集合Account并插入內(nèi)容
> db.Account.insert({AccountID:2,UserName:'lisi',password:'lisi'});
查看集合Account的所有內(nèi)容及條件查詢
> db.Account.find();
> db.Account.find({AccountID:1});
根據(jù)條件刪除Account集合中的一條記錄
> db.Account.remove({AccountID:1});
打印集合狀態(tài)
> db.printCollectionStats();
修改集合中的一條記錄
> db.Account.update({AccountID:2},{"$set":{age:20}});
刪除某個集合
> db.Account.drop();
文章題目:NoSQL介紹(七)
當(dāng)前鏈接:http://chinadenli.net/article10/ppiego.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、網(wǎng)站制作、網(wǎng)頁設(shè)計(jì)公司、、全網(wǎng)營銷推廣、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)