您好,登錄后才能下訂單哦!
(1)MongoDB是一個基于分布式文件存儲的數據庫。由C++語言編寫。旨在為WEB應用提供可擴展的高性能數據存儲解決方案。
(2)MongoDB是一個介于關系數據庫和非關系數據庫之間的產品,是非關系數據庫當中功能最豐富,最像關系數據庫的。它支持的數據結構非常松散,是類似json的bson格式,因此可以存儲比較復雜的數據類型。Mongo最大的特點是它支持的查詢語言非常強大,其語法有點類似于面向對象的查詢語言,幾乎可以實現類似關系數據庫單表查詢的絕大部分功能,而且還支持對數據建立索引。
(3)特點:
[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 install mongodb-org -y
vim /etc/mongod.conf
bindIp: 0.0.0.0 //監聽地址
port: 27017 //監聽端口
systemctl start mongod.service
#查看服務啟動情況
netstat -natp | grep 27017
cp -p /etc/mongod.conf /etc/mongod2.conf
vim /etc/mongod2.conf
//修改以下代碼:
path: /data/mongodb/mongod2.log //日志文件目錄
dbPath: /data/mongodb/mongo //數據存儲目錄
port: 27018 //服務器端口
mkdir -p /data/mongodb/
cd /data/mongodb/
mkdir mongo
#創建日志文件
touch mongod2.log
#給于權限
chmod 777 mongod2.log
mongod -f /etc/mongod2.conf
mongo --port 27018 //指定實例的端口
netstat -ntap
(1)文檔 : 相當于關系數據庫的 行 (多個文檔組成集合)
(2)集合 : 相當于關系數據庫的 表 (多個集合組成數據庫)
(3)數據庫名特殊作用:
mongo //進入數據庫
> db.version() //查看版本
> show dbs; // 查看數據庫
> db.getMongo() //查看當前數據庫機器的連接地址
> db.集合名.help //顯示集合操作命令
> show users //顯示用戶
(4)具體操作:
> use school; //打開school數據庫, 不存在會創建,不建立集合又會刪除
> db.createCollection('info') //創建集合
> db.info.insert({"id":1,"name":"zhangsan","hobby":["game","talk"]}) //添加數據
> db.info.find() //查看info集合中所有文檔
> show collections //查看數據庫中所有集合
> db.info.update({"id":10},{$set:{"name":"tom"}}) //更改數據
> db.info.remove({"id":2}) //移除info集合中的id2的數據
> db.info.drop() //刪除info集合
> db.dropDatabase() //刪除數據庫 先use到要刪的數據庫里在刪
> db.info.count() //統計有多少條數據
(5)MongoDB 數據類型:
(6)查看數據類型:
> a=db.info.findOne({"id":1}) //查找指定記錄并賦予別名a
> typeof(a.id) //查看屬性類型
(1)導入導出:
for(var i=1;i<=100;i++)db.info.insert({"id":i,"name":"jack"+i}) //循環寫入100條數據
mongoexport -d school -c info -o /opt/info.json //導出
mongoimport -d school -c info1 --file /opt/info.json //導入到info1集合
mongoexport -d school -c info1 -q '{"id":{"$eq":10}}' -o /opt/top10.json //條件導出指定第10行
(2)備份與恢復:
mkdir /backup //創建存放目錄
mongodump -d school -o /backup/ //備份school數據庫
mongorestore -d school1 --dir=/backup/school //恢復到school1數據庫
④ 復制數據庫:
db.copyDatabase("school","school2") //復制數據庫school 到school2中
⑤ 克隆數據庫:
把數據庫school的info集合 克隆到實例2
先進入實例2的MongoDB
mongo --port 27018
db.runCommand({"cloneCollection":"school.info","from":"192.168.126.130:27017"})
auth=true //添加
mongo
> use admin
> db.createUser({"zkc":"root","pwd":"123","roles":["root"]})
//創建用戶zkc 密碼123 分配到root角色
> db.auth("root","123") //驗證用戶
> db.currentOp() //查看
> db.killOp(4872) //終止4872進程
vim /etc/mongod.conf
httpinterface=true
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。