MongoDB那些事-安裝與入門

Centos 7 安裝 MongoDB

先創(chuàng)建 mongobg 源文件

sudo vi /etc/yum.repos.d/mongodb-org.repo

按 i 輸入內容

[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc

編輯完按 esc,然后按 :wq 保存退出,接著執(zhí)行

yum repolist

會看到


image.png

然后執(zhí)行

sudo yum install mongodb-org

安裝完成后,啟動 mongodb

sudo systemctl start mongod

開啟外網訪問

vi /etc/mongod.conf

修改 bindIp 為 0.0.0.0

mongodb 基本操作

在mongodb中是通過數據庫、集合、文檔的方式來管理數據,下邊是mongodb與關系數據庫的一些概念對比:


image.png
連接數據庫

命令格式

mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?
options]]
  • mongodb:// 固定前綴
  • username:賬號,可不填 password:密碼,可不填 host:主機名或ip地址,只有host主機名為必填項。
  • port:端口,可不填,默認27017 /database:連接某一個數據庫
  • ?options:連接參數,key/value對
mongodb://localhost //連接本地數據庫27017端口
mongodb://root:123456@localhost //使用用戶名root密碼為123456連接本地數據庫27017端口
mongodb://localhost,localhost:27018,localhost:27019,//連接三臺主從服務器,端口為27017、27018、27019
查詢數據庫

查詢全部數據庫

show dbs 

顯示當前數據庫

db
創(chuàng)建數據庫

該數據庫若存在,則使用這個數據庫,沒有就創(chuàng)建,新創(chuàng)建的數據庫,如果沒有一個集合,那么在 show dbs 的時候不會顯示,但這個數據庫是存在的。

use DATABASE_NAME
刪除數據庫

刪除當前使用的數據庫

db.dropDatabase()
創(chuàng)建集合
db.createCollection(name, options) 
// name: 新創(chuàng)建的集合名稱
// options: 創(chuàng)建參數
刪除集合
db.集合名.drop()
插入文檔

mongodb 中文檔的格式是 json 格式

db.集合名.insert(document)

例如

db.ohome.insert({"name":"dane","age":18})
查詢文檔
db.集合名.find(query,projection)
//query:查詢條件,可不填 
//projection:投影查詢key,可不填,就是顯示哪些字段

例如

db.ohome.find({"age":18})

得到,_id 是自動生成的

{ "_id" : ObjectId("5deb9f34a61cc86a0ef69de8"), "name" : "dane", "age" : 18 }

不想顯示 _id,可以這樣,1 代表顯示,0 不顯示

db.ohome.find({"age":18},{name:1,age:1,_id:0})

得到

{ "name" : "dane", "age" : 18 }
更新文檔
db.集合名.update(
      <query>,
      <update>,
      <options> )
//query:查詢條件,相當于sql語句的where 
//update:更新文檔內容
//options:選項

例如

db.ohome.update({"name":"dane"},{"name":"dane","age":20})
刪除文檔
db.student.remove(<query>) 
//query:刪除條件,相當于sql語句中的where
創(chuàng)建用戶
db.createUser(
   { user: "<name>",
     pwd: "<cleartext password>",
     customData: { <any information> },
     roles: [
       { role: "<role>", db: "<database>" } | "<role>",
... ]}
)

例如

db.createUser({user:"root",pwd:"123456",roles:[{role:"root",db:"admin"}]})

內置角色如下:

1. 數據庫用戶角色:read、readWrite;
2. 數據庫管理角色:dbAdmin、dbOwner、userAdmin;
3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4. 備份恢復角色:backup、restore;
5. 所有數據庫角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase 
6. 超級用戶角色:root
查詢用戶
show users
刪除用戶
db.dropUser("用戶名")
修改密碼
db.changeUserPassword("用戶名","newPasswd")
修改用戶
db.updateUser(
     "<username>",
     {
       customData : { <any information> },
       roles : [
                 { role: "<role>", db: "<database>" } | "<role>",
... ],
       pwd: "<cleartext password>"
       },
       writeConcern: { <write concern> })

例子:

db.updateUser("root",{roles:[{role:"readWriteAnyDatabase",db:"admin"}]})
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • NoSql數據庫優(yōu)缺點 在優(yōu)勢方面主要體現在下面幾點: 簡單的擴展 快速的讀寫 低廉的成本 靈活的數據模型 在不足...
    dreamer_lk閱讀 2,875評論 0 6
  • 一、MongoDB簡介 1.概述 ? MongoDB是一個基于分布式文件存儲的數據庫,由C++語言編寫。旨在為WE...
    鄭元吉閱讀 1,122評論 0 2
  • 安裝 MongoDB Windowns、Ubuntu17.10 下安裝 MongoDB教程在此 MongoDB 幫...
    Kangvcar閱讀 2,194評論 0 13
  • MongoDB 1. MongoDB 是一個基于分布式文件存儲的數據庫。由 C++ 語言編寫。旨在為 WEB 應用...
    Kevinr閱讀 1,716評論 0 3
  • 1.MongDB 簡介 MongoDB(來自于英文單詞“Humongous”,中文含義為“龐大”)是可以應用于各種...
    zwb_jianshu閱讀 489評論 0 1

友情鏈接更多精彩內容