MongoDB數據庫新手入門

windows安裝mongodb 5.0.2

官網下載msi文件

自定義安裝到 d:/apptoools/mongodb/

不要勾選mongodb compass

報錯:verify that you have sufficient privileges to install system services
權限不足

解決辦法:

1.默認C盤安裝路徑

2.其它磁盤根目錄,D:/mongodb/

配置環境變量

bin目錄添加到path環境變量裏面

創建數據庫存儲文件 D:/mongoDatabase/

指定數據庫存儲文件
mongod --dbpath D:/mongoDatabase/

啟動

mongo

或者指定連接本地數據庫 mongo 127.0.0.1:27017

show dbs
use admin
show collections
db.product.insert({'title': 'aaa'})
db.product.drop() // 刪除集合
db.dropDatabase() 刪除數據庫
db.createCollection("runoob")

使用SQL命令強迫關閉mongo服務

use admin
db.shutdownServer()

創建管理員:

use admin
show users
db.createUser({user:"root",pwd:"123456",roles:["root"]}) //添加管理員

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

指定數據庫創建用戶

use grade
db.createUser({user:"gradeAdmin",pwd:"123456",roles:[{role: 'dbOwner',db: 'grade'}]})

Mongodb數據庫角色

  1. 數據庫用戶角色:

read、 readWrite

  1. 數據庫管理角色:

dbAdmin、 dbOwner、 userAdmin

  1. 集群管理角色:

clusterAdmin, clusterManager, clusterMonitor, hostManager

  1. 備份恢復角色:

backup、 restore;

  1. 所有數據庫角色:

readAnyDatabase, readWriteAnyDatabase、 userAdminAnyDatabase, dbAdminAnyDatabase

  1. 超級用戶角色:

root

開啟認證之後連接數據庫:

use admin
db.auth('root','123456')

nodejs連接數據庫

通過client對象連接到MongoDB

通過實例化一個MongoClient對象連接MongoDB數據庫是最常用也是最佳的方式。

創建MongoClient對象實例的語法:

MongoClient( server, options );
  • server : 一個serverd對象;

  • options : 數據庫連接選項;

通過一個連接字符串連接到MongoDB

調用MongoClient類的connect()方法

MongoClient.connect(connString, options, callback)

connString:mongodb://username:password@host:port/database?opations

nosqlbooster連接mongodb

linux 安裝mongodb,配置以及使用

安裝

官網下載tar包,上傳到服務器目錄: /usr/local/mongodb
解壓,tar -zxvf mongodb-linux-x86_64-xxx 並重命名

創建mongodb數據存儲文件和日誌文件

cd /usr/local/mongodb/
mkdir data
mkdir logs
cd ./logs
touch mongodb.log
cd ../
mkdir etc
cd etc
touch mongodb.conf

mongodb.conf配置文件:

#數據庫路徑
dbpath=/usr/local/mongodb/data
#日誌輸出文件路徑
logpath=/usr/local/mongodb/logs/mongodb.log
#錯誤日誌採用追加模式
logappend=true
#啟用日誌文件,默認啟用
journal=true
#這個選項可以過濾掉一些無用的日誌信息,若需要調試使用請設置為false
quiet=true
#端口號 默認為27017
port=27017
#允許遠程訪問
bind_ip=0.0.0.0
#開啟子進程
fork=true
#開啟認證,必選先添加用戶,先不開啟(不用驗證賬號密碼)
#auth=true

配置環境變量

  1. vi /etc/profile

  2. 寫入: export PATH=/usr/local/mongodb/bin:$PATH
    保存退出

  3. 執行 source /etc/profile

啟動mongodb服務

  1. 方式一

bin目錄下執行:

./mongod --config /usr/local/mongodb/etc/mongodb.conf
  1. 方式二

把上面的命令寫成腳本文件,我把它放到 ~/restartMongo 中,如下:

cd ~
vim restartMongo

#寫入:
mongod --config /usr/local/mongodb/etc/mongodb.conf

# 保存退出

# 執行腳本啟動
./restartMongo

查看進程

mongodb默認端口號27017

執行命令查看:

netstat -ltunp

或者使用如下命令

netstat -lanp | grep "27017"

啟動之後就可以連接mongo server

操作mongo數據庫

mongo (或者指定ip:port: mongo ip:port)

admin數據庫添加用戶、安全認證

use admin
show users
db.createUser({user:"root",pwd:"123456",roles:[{role:"root",db:"admin"}]})
show users
關閉mongo server
db.shutdownServer()

啟用安全認證

  1. 修改etc/mongodb.conf
#開啟認證,必選先添加用戶
auth=true
  1. 重新開啟mongo server
mongod --config /usr/local/mongodb/etc/mongodb.conf

此時show dbs查看不到任何數據庫

use admin
db.auth('root', '123456') # 輸出1標記訪問數據庫成功
show dbs

客戶端鏈接

開放防火牆端口號,不再贅述。

開機啟動

配置開機啟動腳本文件: /etc/rc.d/init.d/mongod

start() {
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/etc/mongodb.conf
}  

stop() {
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/etc/mongodb.conf --shutdown
}  
case "$1" in  
start)  
start  
;;  

stop)  
stop  
;;  

restart)  
stop  
start  
;;  
*)  
echo  
$"Usage: $0 {start|stop|restart}"  
exit 1  
esac

我是 甜點cc

熱愛前端開發,也喜歡專研各種跟本職工作關係不大的技術,技術、產品興趣廣泛且濃厚。本號主要致力於分享個人經驗總結,希望可以給一小部分人一些微小幫助。

希望能和大家一起努力營造一個良好的學習氛圍,為了個人和家庭、為了我國的互聯網物聯網技術、數字化轉型、數字經濟發展做一點點貢獻。數風流人物還看中國、看今朝、看你我。