日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mongodb mysql配置_Nosql_MongoDB数据库配置以及基本指令

發布時間:2024/7/23 数据库 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mongodb mysql配置_Nosql_MongoDB数据库配置以及基本指令 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

數據庫(database)

-數據庫的服務器

-服務器用來保存數據

-mongod用來啟動服務器

-數據庫的客戶端

-客戶端用來操作服務器,對數據進行增刪改查的操作

-mongo用來啟動客戶端

(不能關閉啟動的服務器,否則新開的客戶端無法連接)

擴展:將mongodb設置為系統服務,可以自動在后臺啟動,不需要每次收到啟動(http://docs.mongodb.com/manual/tutorial/install-mongodb-on-windows/)

①-在C盤根目錄data文件夾中創建log文件夾

②-創建配置文件

在目錄 (你安裝MongoDB的路徑)下添加一個配置文件

mongod.cfg

(內容:

systemLog:

destination:filepath: c:\data\log\mongod.logstorage:

dbPath: c:\data\db

)

③-以管理員的身份打開命令行窗口

④-執行如下命令

sc.exe create MongoDB binPath= "\"C:\MongoDB\bin\mongod.exe\" --service --config=\"C:\MongoDB\mongod.cfg\"" DisplayName= "MongoDB" start= "auto"

備注:sc.exe create MongoDB binPath= "\"mongod的bin目錄\mongod.exe\" --service --config=\"mongo的安裝目錄\mongod.cfg\"" DisplayName= "MongoDB" start= "auto"

⑤-啟動mongodb服務

⑥-如果啟動失敗,證明上邊的操作有誤,

在控制臺輸入 sc delete MongoDB 刪除之前配置的服務

然后從第一步再來一次

-- 基本概念

數據庫(database)

集合 (collection)

文檔(document)

-在MongoDB中,數據庫和集合都不需要手動創建

當我們創建文檔時,如果文檔所在的集合或者數據庫不存在會自動創建數據庫和集合

-- 基本指令

show dbs

show databases

- 顯示當前的所有數據庫

use 數據庫名

- 進入到指定的數據庫中

db

- db表示的是當前所處的位置

show collections

- 顯示數據庫中所有的集合

-- 數據庫的CRUD(增刪改查)的操作

- 向數據庫中插入文檔

db..insert(doc)

- 向集合中插入一個文檔

- 例子: 向test數據庫中的,stus集合中插入一個新的學生對象

{name:"孫悟空",age:12,gender:"男"}

db.stus.insert({name:"孫悟空",age:12,gender:"男"})

db..find()

- 查詢當前集合中所有的文檔

①-插入數據

向數據庫中插入文檔

db..insert()

- 向集合中插入一個或多個文檔

- 當我們向集合中插入文檔時,如果沒有給文檔指定_id屬性,則數據庫會自動為文檔添加_id,該屬性用來作為文檔的唯一標

- _id我們可以自己指定,如果我們指定了數據庫就不會再添加了,如果自己指定_id 也必須確保它的唯一性

db..insertOne()

- 插入一個文檔對象

db..insertMany()- 插入多個文檔對象

②-查詢

查詢

db.collention.find()- find()用來查詢集合中所有符合條件的文檔

- find()可以接收一個對象作為條件參數 {}表示查詢集合中所有的文檔 {屬性:值} 查詢屬性是指定值的文檔

db.collection.findOne()- 用來查詢集合中符合條件的第一個文檔

- findOne()返回的是一個文檔對象

db.collection.find({}).count()- 查詢所有結果的數量

③-修改

修改

db.collection.update(查詢條件,新對象)- update()默認情況下使用新對象替換舊對象

- 如果需要修改指定的屬性,而不是替換需要使用"修改操作符"來完成修改

$set可以用來修改文檔中的指定屬性

$unset 可以用來刪除文檔中的指定屬性- update()默認修改一個

db.collection.updateOne()- 修改一個符合條件的文檔

db.collection.updateMany()- 同時修改多個符合條件的文檔

db.collection.replaceOne()- 替換一個文檔

④-刪除

刪除

db.collection.remove()-刪除符合條件的所有文檔(默認情況下會刪除多個)

如果remove()第二個參數傳遞一個true,則只會刪除一個

- 如果只傳遞一個空對象作為參數,則會刪除集合中的所有文檔

db.collection.deleteOne()

db.collection.deleteMany()-remove()可以根據條件來刪除文檔,傳遞的條件的方式和find()一樣

db.collection.drop();-刪除集合

db.dropDatabase()- 刪除數據庫

文檔(document)

文檔是MongoDB中數據的基本單元,類似關系數據庫的行,多個鍵值對有序的放置在一起便是文檔

MongoDB中以文檔的方式存取記錄,如一條記錄格式如下:

{“username”:“sunsu”,“age”:12,email:'damowang@huohu.com','sex':女}

{“username”:“sunsu”,“age”:12}

{“Username”:“sunsu”,“age”:12}

{“Username”:“sunsu”}

注意:

(1)以上是幾個不同的文檔,MongoDB區分大小寫的數據類型,第一個age字段是數字類型,第二個age是字符串類型

(2)每一個文檔尺寸不能超過16M

(3)MongoDB的文檔不能有重復的鍵

(4)文檔的鍵是字符串。除了少數例外情況,鍵可以使用任意UTF-8字符

文檔之間的關系:

一對一(one to one)

-? ? 夫妻 (一個丈夫 對應 一個妻子)

-? ?在MongoDB,可以通過內嵌文檔的形式來體現出一對一的關系

一對多(one to many)/多對一(many to one)

-? ?父母 - 孩子

用戶 - 訂單

文章 - 評論

- 也可以通過內嵌文檔來映射一對多的關系

多對多(many to many)

-? 分類 - 商品

老師 - 學生

舉例:

//一對一

db.wifeAndHusband.insert([{

name:"黃蓉",

husband:{ name:"郭靖" }

}, {

name:"潘金蓮",

husband:{ name:"武大" }

}]);

db.wifeAndHusband.find();

//一對多 用戶(users)和訂單(orders)

db.users.insert([{

username:"孫悟空"},{

username:"豬八戒"}]);

db.order.insert({list:["蘋果","香蕉","大鴨梨"],user_id:ObjectId("5d2bd20b782eae7ac9b5b5be")

});

db.users.find();

db.order.find();//查找用戶孫悟空的訂單var user_id =db.users.findOne({

username:"孫悟空"})._id;

db.order.find({user_id:user_id});

//多對多

db.teachers.insert([{

name:"洪七公"},{

name:"黃藥師"},{

name:"龜仙人"}]);

db.stus.insert([{

name:"郭靖",

tech_ids:[

ObjectId("5d2bd518782eae7ac9b5b5c4"),

ObjectId("5d2bd518782eae7ac9b5b5c5")]},{

name:"孫悟空",

tech_ids:[ObjectId("5d2bd518782eae7ac9b5b5c4"),

ObjectId("5d2bd518782eae7ac9b5b5c5"),

ObjectId("5d2bd518782eae7ac9b5b5c6")]}]);

db.teachers.find();

db.stus.find();

集合(collection)

集合就是一組文檔,多個文檔組成一個集合,集合類似于mysql里面的表,

無模式是指,在同一個集合中可以包含不同格式的文檔,如:

{“Name”:“Mongodb”,“Type”:“Nosql”}

{“UserName”:“Sunsu”,“age”:12,“Gender”:“male”}

以上兩個文檔可以放在同一個集合中

在mysql需要先建表再插入數據

模式自由:意思是集合里面沒有行和列的概念

注意:MongoDB中的集合不用創建、沒有結構,所有可以放不同格式的文檔

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的mongodb mysql配置_Nosql_MongoDB数据库配置以及基本指令的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。