MongoDB(三十九)

目錄

一、概述

(一)相關概念

(二)特性

二、應用場景

三、安裝

(一)編譯安裝

(二)yum安裝

1、首先制作repo源

2、軟件包名:mongodb-org

3、啟動服務:systemctl start mongod

4、監聽端口:mongod

5、端口號:27017

四、目錄結構

(一)rpm -ql mongodb-org-server

1、MongoDB的配置文件

2、MongoDB的運行目錄

3、MongoDB的可執行文件

4、MongoDB的系統服務文件

5、MongoDB的文檔目錄

6、MongoDB的許可協議文件

7、MongoDB的許可協議文件

8、MongoDB的README文件

9、MongoDB的第三方許可通知文件

10、MongoDB的man手冊文件

11、MongoDB的數據目錄,存儲數據庫文件

12、MongoDB的日志目錄,存儲日志文件

13、MongoDB的日志文件,記錄MongoDB的運行日志

(二)rpm -ql mongodb-org-shell

1、MongoDB客戶端工具的可執行文件路徑(客戶端命令)

2、MongoDB客戶端工具的man手冊文件路徑?

(三)rpm -ql mongodb-org-tools

1、將BSON文件轉換為JSON格式的工具

2、用于安裝MongoDB Compass的工具

3、用于從MongoDB數據庫中導出數據的工具

4、用于將數據從MongoDB導出為JSON、CSV或TSV格式的工具

5、用于在MongoDB GridFS中存儲和檢索文件的工具

6、用于將數據導入MongoDB數據庫的工具

7、用于從mongodump創建的備份文件中恢復數據的工具

8、用于監視MongoDB服務器狀態的工具

9、用于監視MongoDB實例中的操作的工具

10、包含MongoDB工具集的文檔

11、包含MongoDB工具集的第三方軟件許可證通知

12、bsondump工具的man頁

13、mongodump工具的man頁

14、mongoexport工具的man頁

15、mongofiles工具的man頁

16、mongoimport工具的man頁

17、mongoldap工具的man頁

18、mongoreplay工具的man頁

19、mongorestore工具的man頁

20、mongostat工具的man頁

21、mongotop工具的man頁

(四)rpm -ql mongodb-org-mongos

1、存放系統范圍的可執行文件

2、mongos的手冊頁文件

五、默認數據庫

1、admin

2、local

3、config

六、數據庫操作

(一)庫操作

1、查看數據庫

2、顯示當前所在數據庫

3、切換數據庫

4、數據庫創建

4.1、隱式創建

4.2、刪除數據庫

(二)文檔操作

1、創建集合

2、查看集合

3、刪除

3.1、刪除數據庫

3.2、刪除集合

4、插入數據(文檔)

4.1、單行

4.2、多行

5、查詢數據

5.1全集合查詢

5.2、條件查詢

5.3、查詢集合中有多少文檔

6、刪除數據

6.1、全文刪除

6.2、條件刪除

7、更新數據

7.1、所有滿足條件的文檔都進行更新

7.2、更新文檔進行數值遞增

七、MongoDB數據庫備份

(一)備份命令

1、mongodump

2、mongoexport

?(二)恢復命令

1、mongorestore

2、mongoimport


一、概述

? ? ? ?mongodb是一個nosql數據庫,它有高性能、無模式、文檔型的特點。是nosql數據庫中功能最豐富,最像關系數據庫的。數據庫格式為BSON

(一)相關概念

? ? 實例:系統上運行的mongodb的進程,類似于mysql實例;

? ? 庫:每個數據庫都是獨立的,有自己的用戶,權限,獨立存儲集合,類似于mysql的庫;

? ? ?集合:由一組文檔構成,類似于mysql的表;

? ? ?文檔:mongodb數據庫的最小數據集,是由多個鍵值對有序組合的數據單元,類似于mysql的數據記錄;

? ? 主鍵:唯一標識一行數據

(二)特性

? ? ? ? ? ? 1、面向集合文檔存儲,適合存儲json形式的數據;

? ? ? ? ? ? 2、格式自由,數據格式不固定,數據結構發生變更的同時不會影響程序運行;

? ? ? ? ? ? 3、面向對象的sql查詢語句,基本涵蓋關系型數據庫的所有查詢語句;

? ? ? ? ? ? 4、有索引的支持,查詢效率更快;

? ? ? ? ? ? 5、支持復制和自動故障轉移;

? ? ? ? ? ? 6、可以使用分片集群提升查詢性能

面向對象:

? ? ? ?在MongoDB中,數據以文檔(documents)的形式存儲,文檔是一種類似于JSON格式的數據結構,它可以包含鍵值對、數組和嵌套文檔。文檔是MongoDB中的基本數據單元,類似于關系型數據庫中的行(row)。

MongoDB的面向對象概念具有以下特點:

? ? ? ?文檔模型:MongoDB使用文檔模型來表示數據,文檔可以嵌套和包含各種類型的數據,這使得MongoDB非常適合存儲半結構化數據。

? ? ? ?動態模式:相比關系型數據庫,MongoDB的文檔模型是動態的,即同一集合中的不同文檔可以具有不同的結構。這樣可以更容易地適應數據模式的變化和靈活性要求。

繼承和多態:MongoDB支持文檔之間的繼承關系,一個文檔可以從另一個文檔繼承屬性。同時,MongoDB還支持多態,即一個字段可以包含不同類型的值。

? ? ? ?引用關聯:MongoDB支持使用引用關聯文檔,即一個文檔中可以包含對其他文檔的引用。這種引用關聯可以用來建立文檔之間的關系和查詢數據。

? ? ? ?MongoDB的面向對象概念使得它更適合存儲和處理半結構化數據,同時提供了靈活性和擴展性,方便開發者處理不同類型的數據和建立數據之間的關聯。

索引概念:

? ? ? ?MongoDB索引是MongoDB中用于提高查詢性能的數據結構。它類似于關系數據庫中的索引,可以按照特定字段或字段組合進行排序和搜索。

? ? ? ?MongoDB索引通常使用B樹數據結構實現。它可將數據存儲在內存中,以加快查詢速度。當查詢需要訪問大量數據時,索引可以幫助減少磁盤IO操作,提高查詢性能。

? ? ? ?索引可以在單個字段上創建,也可以在多個字段上創建組合索引。創建索引后,MongoDB將使用這些索引來加速查詢過程。索引可以按升序或降序排序,還可以設置唯一性約束,確保索引字段的唯一性。

? ? ? ?索引的創建和使用需要權衡考慮。創建過多的索引會增加存儲空間和寫入操作的開銷,同時也會增加更新數據的復雜性。此外,索引的選擇要基于實際查詢模式和性能需求進行評估。

? ? ? ?總結來說,MongoDB索引是用于提高查詢性能的數據結構,它可以按照特定字段或字段組合進行排序和搜索,并使用B樹數據結構進行實現。索引的創建和使用需要考慮存儲空間、寫入操作開銷和查詢需求等因素。

二、應用場景

? ? ? ?大數據存儲和分析:由于MongoDB的靈活性和可擴展性,它非常適合用于存儲和分析大規模數據集。它可以處理海量的數據,并支持數據聚合、數據分析和實時查詢。

? ? ? ?實時分析和日志處理:MongoDB可以快速地存儲和索引生成的數據,使其適用于實時分析和日志處理。它可以輕松處理大量實時數據,并提供快速的查詢和聚合功能。

? ? ? ?內容管理和博客平臺:MongoDB的文檔模型非常適合存儲和管理文本和多媒體內容。它支持動態模式,可以輕松地適應不同類型和格式的內容。

? ? ? ?社交網絡和實時應用:MongoDB對于實時應用和高并發的場景具有很好的性能。它可以處理大量的讀寫操作,并提供可擴展性和高可用性。

? ? ? ?互聯網應用程序:MongoDB適合用于構建Web應用程序,如電子商務平臺、內容管理系統和在線游戲。它可以處理復雜的數據模型和高并發的訪問請求。

? ? ? ?總結來說,MongoDB適用于處理大規模數據、實時分析、內容管理、社交網絡和互聯網應用程序等各種場景。它提供高性能、可擴展性和靈活性,使開發人員能夠構建出功能強大的應用程序。

三、安裝

(一)編譯安裝

(二)yum安裝

1、首先制作repo源

vim /etc/yum.repos.d/mongodb.repo

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

2、軟件包名:mongodb-org

3、啟動服務:systemctl start mongod

4、監聽端口:mongod

5、端口號:27017

四、目錄結構

(一)rpm -ql mongodb-org-server

1、MongoDB的配置文件

vim /etc/mongod.conf
port: 27017監聽端口號
bindIp: 127.0.0.1監聽地址

2、MongoDB的運行目錄

/run/mongodb

3、MongoDB的可執行文件

/usr/bin/mongod

4、MongoDB的系統服務文件

/usr/lib/systemd/system/mongod.service

5、MongoDB的文檔目錄

/usr/share/doc/mongodb-org-server-4.2.24

6、MongoDB的許可協議文件

/usr/share/doc/mongodb-org-server-4.2.24/LICENSE-Community.txt

7、MongoDB的許可協議文件

/usr/share/doc/mongodb-org-server-4.2.24/MPL-2

8、MongoDB的README文件

/usr/share/doc/mongodb-org-server-4.2.24/README

9、MongoDB的第三方許可通知文件

/usr/share/doc/mongodb-org-server-4.2.24/THIRD-PARTY-NOTICES

10、MongoDB的man手冊文件

/usr/share/man/man1/mongod.1.gz

11、MongoDB的數據目錄,存儲數據庫文件

/var/lib/mongo

12、MongoDB的日志目錄,存儲日志文件

/var/log/mongodb

13、MongoDB的日志文件,記錄MongoDB的運行日志

/var/log/mongodb/mongod.log

(二)rpm -ql mongodb-org-shell

1、MongoDB客戶端工具的可執行文件路徑(客戶端命令)

/usr/bin/mongo

2、MongoDB客戶端工具的man手冊文件路徑?

/usr/share/man/man1/mongo.1.gz

?

(三)rpm -ql mongodb-org-tools

1、將BSON文件轉換為JSON格式的工具

/usr/bin/bsondump

2、用于安裝MongoDB Compass的工具

/usr/bin/install_compass

3、用于從MongoDB數據庫中導出數據的工具

/usr/bin/mongodump

4、用于將數據從MongoDB導出為JSON、CSV或TSV格式的工具

/usr/bin/mongoexport

5、用于在MongoDB GridFS中存儲和檢索文件的工具

/usr/bin/mongofiles

6、用于將數據導入MongoDB數據庫的工具

/usr/bin/mongoimport

7、用于從mongodump創建的備份文件中恢復數據的工具

/usr/bin/mongorestore

8、用于監視MongoDB服務器狀態的工具

/usr/bin/mongostat

9、用于監視MongoDB實例中的操作的工具

/usr/bin/mongotop

10、包含MongoDB工具集的文檔

/usr/share/doc/mongodb-org-tools-4.2.24

11、包含MongoDB工具集的第三方軟件許可證通知

/usr/share/doc/mongodb-org-tools-4.2.24/THIRD-PARTY-NOTICES.gotools

12、bsondump工具的man頁

/usr/share/man/man1/bsondump.1.gz

13、mongodump工具的man頁

/usr/share/man/man1/mongodump.1.gz

14、mongoexport工具的man頁

/usr/share/man/man1/mongoexport.1.gz

15、mongofiles工具的man頁

/usr/share/man/man1/mongofiles.1.gz

16、mongoimport工具的man頁

/usr/share/man/man1/mongoimport.1.gz

17、mongoldap工具的man頁

/usr/share/man/man1/mongoldap.1.gz

18、mongoreplay工具的man頁

/usr/share/man/man1/mongoreplay.1.gz

19、mongorestore工具的man頁

/usr/share/man/man1/mongorestore.1.gz

20、mongostat工具的man頁

/usr/share/man/man1/mongostat.1.gz

21、mongotop工具的man頁

/usr/share/man/man1/mongotop.1.gz

(四)rpm -ql mongodb-org-mongos

1、存放系統范圍的可執行文件

/usr/bin/mongos

2、mongos的手冊頁文件

/usr/share/man/man1/mongos.1.gz

五、默認數據庫

進入MongoDB數據庫命令

mongo

1、admin

? ? 從權限的角度來看,這是"root"數據庫。要是將一個用戶添加到這個數據庫,這個用戶自動繼承所有數據庫的權限。

一些特定的服務器端命令也只能從這個數據庫運行,比如列出所有的數據庫或者關閉服務器。

2、local

? ? 這個數據庫永遠不會被復制,可以用來存儲限于本地單臺服務器的任意集合。

3、config

? ? 當Mongo用于分片設置時,config數據庫在內部使用,用于保存分片的相關信息。

六、數據庫操作

(一)庫操作

1、查看數據庫

注:以下命令二選一即可,均可正常使用。

show databases
show dbs

?

2、顯示當前所在數據庫

db

?

3、切換數據庫

use?zn

?

4、數據庫創建

4.1、隱式創建

? ? ? ?不用主動創建,使用use newDB,會自動創建不存在的數據庫,只有在庫中創建集合后才會保存,并使用show dbs查看到

4.2、刪除數據庫

? ? ? ? use dbName

? ? ? ? db.dropdatabase()

(二)文檔操作

1、創建集合

db.createCollection('wjy')

2、查看集合

show tables

?

3、刪除

3.1、刪除數據庫

db.dropDatabase()

?

?注:在刪除數據庫時,一定要先進入要刪除的數據庫

3.2、刪除集合

? ? ? ? db.需要刪除的集合名稱.drop()

db.wjy.drop()

? ? ? ?db["123"].drop()是指在數據庫中刪除名為"123"的集合(collection)或表(table)。

其中,db是數據庫對象,["123"]表示要操作的集合或表的名稱,drop()表示刪除該集合或表。?

db.getCollection("123").drop()

4、插入數據(文檔)

4.1、單行

? ? ? ? db.集合名稱.insert({key:value})

db.wjy.insert({'a':'123'})

?查看命令:

db.wjy.find({})

?內容解析:

{ "_id" : ObjectId("64da1f759aabd69ea17751d8"), "a" : "123" }

這是一個MongoDB的文檔數據,結構如下:

{ "_id" : ObjectId("64da1f759aabd69ea17751d8"), "a" : "123" }

其中:

_id?是文檔的唯一標識符,由MongoDB自動生成,用于唯一標識該文檔。

a?是文檔中的一個字段,它的值是字符串 "123"。

4.2、多行

? ? ? ? db.集合名稱.insertmany([{key:value},{key:value},{key:value}])

db.wjy.insertMany([{'b':'1234'},{'c':'12345'},{'d':'123456'}])

?內容解析:

這是一個MongoDB的操作結果,對應的內容解析如下:

  • acknowledged?表示操作是否被MongoDB服務器確認執行。如果值為true,表示操作已被成功確認。
  • insertedIds?表示插入操作成功后生成的文檔的唯一標識符(ObjectIds)的列表。在這個例子中,三個文檔被成功插入,它們的唯一標識符分別是:
    • ObjectId("64da20c76fb9e74578a149d1")
    • ObjectId("64da20c76fb9e74578a149d2")
    • ObjectId("64da20c76fb9e74578a149d3")

這個操作的結果說明在執行插入操作后,MongoDB服務器已經成功確認了操作,并且返回了生成的插入文檔的唯一標識符列表。

db.wjy.find({})

??? ? ? ? mongodb默認數字的數據類型float浮點型,若要改變為整型:NumberInt(數字)兩種方式:

db.wjy.insert({'_id':'1','a':'123','phone':'111111'})

db.wjy.insert({'_id':NumberInt(2),'b':'1234','phone':'222222'})

?刪除數據

db.wjy.deleteMany({})

5、查詢數據

5.1全集合查詢

? ? ? ? ? ? db.集合名稱.find({})

db.wjy.find({})

?? ? ? ? ? ? db.集合名稱.find()

db.wjy.find()

5.2、條件查詢

? ? ? ? ? ? db.info.find({查詢條件1key:value,查詢條件2,...},{key1:1|0,key2:1|0,...})

db.wjy.find({'a':'123'})

db.wjy.find({'a':'123'},{'a':0})

?

?命令解析:

  • db.wjy?表示在數據庫中選擇集合?wjy?進行查詢。db?是數據庫對象,wjy?是集合名稱。
  • find({'a':'123'})?表示查詢集合中的文檔,其中字段?a?的值為?'123'
  • {'a':0}?表示設置查詢結果中不包含字段?a。在查詢結果中,其他字段將會被返回,而字段?a?不會被返回。

這個查詢操作的意思是,在集合 wjy 中查找字段 a 的值為 '123' 的文檔,并返回這些文檔中除了字段 a 以外的其他字段。

? ? ? ? ? ? key:1 顯示,key:0 不顯示

? ? ? ? ? ? 當顯示的key只有一個時,key:1 只顯示該key及對應value,key:0 顯示除了該key之外其他所有keyvalue

5.3、查詢集合中有多少文檔

? ? ? ? ? ? db.集合名稱.count()

db.wjy.count()

?

6、刪除數據

6.1、全文刪除

? ? ? ? ? ? db.集合名稱.remove({})

db.wjy.remove({})

6.2、條件刪除

? ? ? ? ? ? db.集合名稱.remove({key:value})

db.wjy.remove({'b':'1234'})

7、更新數據

db.wjy.update({_id:'1'},{$set:{'phone':'222222'}})

7.1、所有滿足條件的文檔都進行更新

? ? ? ? ? ? db.info.update({userid:"1003"},{$set:{nickname:"tom"}},{multi:true})

7.2、更新文檔進行數值遞增

? ? ? ? ? ? db.info.update({userid:"1003"},{$inc:{likenum:NumberInt(1000)}})

先創建5個同名,方面更改完成查看

?第一個:

db.wjy.update({userID:NumberInt(1)},{$inc:{userID:NumberInt(10)}})

?第二個:

db.wjy.update({userID:NumberInt(1)},{$inc:{userID:NumberInt(20)}})

?第三個:

db.wjy.update({userID:NumberInt(1)},{$inc:{userID:NumberInt(30)}})

第四個:

db.wjy.update({userID:NumberInt(1)},{$inc:{userID:NumberInt(-20)}})

?第五個:

db.wjy.update({userID:NumberInt(1)},{$inc:{userID:NumberInt(-10)}})

七、MongoDB數據庫備份

(一)備份命令

1、mongodump

? ? ? ? 選項

? ? ? ? ? ? -h=hostname:port

? ? ? ? ? ? -u=<username>

? ? ? ? ? ? -p=<password>

? ? ? ? ? ? --authenticationDatabase=<dbname>

? ? ? ? ? ? -d=<database>

? ? ? ? ? ? -o=<path>

? ? ? ? 語法

? ? mongodump -d dbName -h hostName:port -u userName -p Password -o backupDirectory

mkdir /bak
mongodump -d zn -o /bak

?

2、mongoexport

? ? ? ? 選項

? ? ? ? ? ? -h=hostname:port

? ? ? ? ? ? -u=<username>

? ? ? ? ? ? -p=<password>

? ? ? ? ? ? --authenticationDatabase=<dbname>

? ? ? ? ? ? -d=<database>

? ? ? ? ? ? -o=<path>

? ? ? ? 語法

? ? ? ? ? ? mongoexport -d dbName -c tableName -h hostName:port -u userName -p Password -o backupDirectory/jsonFile.json

mongoexport -d zn -c wjy -o /bak/zn_wjy-bak.json

?

?(二)恢復命令

注:在恢復備份前,我們先刪除 zn 數據庫,不然無法體現出恢復效果

1、mongorestore

? ? ? ? 選項

? ? ? ? ? ? -h=hostname:port

? ? ? ? ? ? -u=<username>

? ? ? ? ? ? -p=<password>

? ? ? ? ? ? --authenticationDatabase=<dbname>

? ? ? ? ? ? -d=<database>

? ? ? ? ? ? --drop 當目標數據庫中存在同名集合則刪除再恢復

? ? ? ? 語法

? ? ? ? ? ? mongorestore -h hostName -u username -p password -d dbName -c tableName bakcupDirector/bsonFile

mongorestore -d zn -c wjy /bak/zn/wjy.bson

?內容解析:

? ? ?checking for collection data in /bak/zn/wjy.bson:檢查備份文件/bak/zn/wjy.bson中是否有集合數據。

? ? ?reading metadata for zn.wjy from /bak/zn/wjy.metadata.json:從備份文件/bak/zn/wjy.metadata.json中讀取集合"zn.wjy"的元數據信息。

? ? ?restoring zn.wjy from /bak/zn/wjy.bson:從備份文件/bak/zn/wjy.bson中恢復集合"zn.wjy"的數據。

? ? ?no indexes to restore:沒有索引需要恢復。

? ? ?finished restoring zn.wjy (5 documents, 0 failures):成功完成集合"zn.wjy"的數據恢復,總共恢復了5個文檔,沒有失敗的文檔。

? ? ?5 document(s) restored successfully. 0 document(s) failed to restore.:成功恢復了5個文檔,沒有失敗的文檔。

mongo
show dbs
use zn
show tables
db.wjy.find({})

?現在已經驗證備份已經恢復完畢

2、mongoimport

注:在恢復備份前,我們先刪除 zn 數據庫下的 wjy 集合,不然無法體現出恢復效果

db.wjy.drop()

?

?? ? ? ? 選項

? ? ? ? ? ? -h=hostname:port

? ? ? ? ? ? -u=<username>

? ? ? ? ? ? -p=<password>

? ? ? ? ? ? --authenticationDatabase=<dbname>

? ? ? ? ? ? -d=<database>

? ? ? ? ? ? --drop 當目標數據庫中存在同名集合則刪除再恢復

? ? ? ? 語法

? ? ? ? ? ? mongoimport -d dbName -c tableName -h hostName:port -u userName -p Password ?backupDirectory/jsonFile.json

mongoimport -d zn -c wjy /bak/zn_wjy-bak.json 

?內容解析:

2023-08-14T23:05:48.974+0800 ? ?connected to: mongodb://localhost/
2023-08-14T23:05:48.982+0800 ? ?5 document(s) imported successfully. 0 document(s) failed to import.

?進入數據庫查看驗證

mongo
show dbs
show tables
db.wjy.find({})

?經過查看,數據庫集合內容已經成功進行恢復

總結

? ? ? ?MongoDB是一種強大的非關系型數據庫,具有高性能、靈活的數據模型和豐富的功能。它適用于各種應用場景,包括大數據、實時分析和Web應用程序等。盡管使用MongoDB需要一些學習和配置,但它提供的性能和可擴展性使得它成為許多開發者和組織的首選數據庫管理系統。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/42459.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/42459.shtml
英文地址,請注明出處:http://en.pswp.cn/news/42459.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Java工程師修煉手冊:Java數據結構面試題

Java數據結構面試題一直都是面試官喜歡問到的問題&#xff0c;在我們去面試Java的相關崗位時&#xff0c;肯定會被提問到&#xff0c;所以我們就需要提前做好準備&#xff0c;輕松的去應對&#xff1a; 1. 數據結構定義 數據結構是計算機存儲、組織數據的方式。數據結構是指相…

asp.net core讀取request內容

在Startup.cs中定義Middleware&#xff0c;設置緩存Http請求的Body數據。代碼如下。自定義Middleware請放到Configure方法的最前面。 app.Use(next > new RequestDelegate(async context > {context.Request.EnableBuffering();await next(context);})); GET請求 HttpC…

詳解23種設計模式優缺點以及解決方案

1. 單例模式&#xff08;Singleton Pattern&#xff09;&#xff1a; 優點&#xff1a;確保一個類只有一個實例&#xff0c;提供全局訪問點&#xff0c;節省資源。缺點&#xff1a;可能引入全局狀態&#xff0c;難以擴展和測試。解決方法&#xff1a;使用依賴注入來替代直接訪…

通過 Amazon SageMaker JumpStart 部署 Llama 2 快速構建專屬 LLM 應用

來自 Meta 的 Llama 2 基礎模型現已在 Amazon SageMaker JumpStart 中提供。我們可以通過使用 Amazon SageMaker JumpStart 快速部署 Llama 2 模型&#xff0c;并且結合開源 UI 工具 Gradio 打造專屬 LLM 應用。 Llama 2 簡介 Llama 2 是使用優化的 Transformer 架構的自回歸語…

【JavaEE基礎學習打卡04】JDBC之MySQL數據庫安裝

目錄 前言一、JDBC與數據庫二、MySQL數據庫1.MySQL數據庫2.MySQL服務下載安裝3.MySQL服務啟動停止4.MySQL命令 三、MySQL客戶端安裝總結 前言 &#x1f4dc; 本系列教程適用于JavaWeb初學者、愛好者&#xff0c;小白白。我們的天賦并不高&#xff0c;可貴在努力&#xff0c;堅持…

【 Cocos Creator 項目實戰】益智游戲《2048》(附帶完整源碼工程)

本文乃Siliphen原創&#xff0c;轉載請注明出處 目錄 游戲介紹 概述 游戲整體流程 游戲框架設計 主要流程控制類 本文項目的代碼組織結構 構建游戲世界 數字方塊 地圖 觸摸手勢識別 防觸摸抖動 判斷用戶輸入的方向 地圖 任意大小的地圖 初始化地圖大小 地圖繪制…

數據結構----結構--線性結構--棧,隊列

數據結構----結構–線性結構–棧&#xff0c;隊列 一.棧&#xff1a;Stack 1.棧的特點&#xff1a; ? 先進后出&#xff1a;FILO&#xff08;對一組數據有倒敘要求時可以用棧&#xff09; 2.棧的實現 順序存儲&#xff1a;數組實現&#xff1a; ? 缺點&#xff1a;空間…

無涯教程-Perl - sysread函數

描述 該函數等效于C /操作系統函數read(),因為它繞過了諸如print,read和seek之類的函數所采用的緩沖系統,它僅應與相應的syswrite和sysseek函數一起使用。 它從FILEHANDLE中讀取LENGTH個字節,并將輸出放入SCALAR中。如果指定了OFFSET,則將數據從OFFSET字節寫入SCALAR,從而有效…

IC流程中 DFT 學習筆記(2)

引言 DFT是ASIC芯片設計流程中不可或缺的環節。其主要目的是在芯片前端設計驗證完成后插入一些諸如寄存器鏈等可供測試的邏輯&#xff0c;算是IC后端設計的范疇&#xff0c;屬于結構測試而非功能測試。主要是在ASIC芯片流片完成后&#xff0c;通過這些已插入的邏輯&#xff0c…

手機照片誤刪怎么辦,電腦照片誤刪怎么辦怎么才能找回,EasyRecovery來幫您

手機照片誤刪怎么辦&#xff0c;電腦照片誤刪怎么辦怎么才能找回&#xff0c;EasyRecovery 2023來幫您&#xff01;&#xff01;&#xff01; EasyRecovery 2023是一款操作安全、價格便宜、用戶自主操作的 數據恢復 方案&#xff0c;它支持從各種各樣的 存儲介質 恢復刪除 或者…

Vue3.X 創建簡單項目

一、環境安裝與檢查 首先&#xff0c;我們要確保我們安裝了構建vue框架的環境&#xff0c;不會安裝的請自行百度&#xff0c;有很多安裝教程。檢查環境 node -v # 如果沒有安裝nodejs請安裝&#xff0c;安裝教程自行百度 vue -V# 沒有安裝&#xff0c;請執行npm install -g v…

Cesium for unity 1.5.0使用注意事項

Cesium for Unity Quickstart – Cesium 1.Unity版本僅支持Unity2021.3.2f1以后版 2.僅支持 3D (URP)和3D (HDRP)渲染管線 3.如果Package Manager中不出現My Registries選項&#xff0c;請在 Edit > Project Settings...>Package Manager中重命名或刪除重新添加Packag…

深入淺出PHP封裝根據商品ID獲取淘寶商品詳情數據方法

要通過淘寶的API獲取商品詳情&#xff0c;您可以使用淘寶開放平臺提供的接口來實現。以下是一種使用PHP編程語言實現的示例&#xff0c;展示如何通過淘寶開放平臺API獲取商品詳情&#xff1a; 首先&#xff0c;確保您已注冊成為淘寶開放平臺的開發者&#xff0c;并創建一個應用…

【微服務實戰】01-工程結構概覽

文章目錄 工程結構概覽:定義應用分層及依賴關系1.應用分層2.定義Entity3.倉儲層3.1 工作單元&#xff1a;事務管理3.2 倉儲層 4.領域事件5.APIController最佳實踐 工程結構概覽:定義應用分層及依賴關系 1.應用分層 領域模型層基礎設施層 ? 倉儲應用層 ? Api、后臺任務Job共…

TCP服務器實現—多進程版,多線程版,線程池版

目錄 前言 1.存在的問題 2.多進程版 3.多線程版 4.線程池版 總結 前言 在上一篇文章中使用TCP協議實現了一個簡單的服務器&#xff0c;可以用來服務端和客戶端通信&#xff0c;但是之前的服務器存在一個問題&#xff0c;就是當有多個客戶端連接服務器的時候&#xff0c;服…

002-Spring boot 自動配置相關分析

目錄 自動配置 EnableAutoConfiguration開啟自動配置讀取配置提前過濾自動配置配置包 AutoConfigurationPackage 自動配置 EnableAutoConfiguration 開啟自動配置 在Spring 啟動類上的 SpringBootApplication 中有 EnableAutoConfiguration 讀取配置 Import(AutoConfigurat…

后端返回圖片,前端接收并顯示的解決方案

后端圖片數據返回 后端通過二進制流的形式&#xff0c;寫入response中 controller層 /*** 獲取簽到二維碼*/GetMapping("/sign-up-pict")public void signUpPict(Long id, Long semId, HttpServletResponse response) throws NoSuchAlgorithmException {signUpServ…

musl libc ldso 動態加載研究筆記:01

前言 musl 是一個輕量級的標準C庫&#xff0c;建立在系統調用之上&#xff0c;可以認為是【用戶態】的C 庫&#xff0c;與 glibc 或者 uClibc 屬于同一類。 基于 musl 的 gcc 工具鏈包括交叉編譯工具鏈&#xff0c;可以用于編譯 Linux 或者其他的操作系統&#xff0c;如當前 L…

深入解析 MyBatis 中的 <foreach> 標簽:優雅處理批量操作與動態 SQL

在當今的Java應用程序開發中&#xff0c;數據庫操作是一個不可或缺的部分。MyBatis作為一款頗受歡迎的持久層框架&#xff0c;為我們提供了一種優雅而高效的方式來管理數據庫操作。在MyBatis的眾多特性中&#xff0c;<foreach>標簽無疑是一個強大的工具&#xff0c;它使得…

構建可遠程訪問的企業內部論壇

文章目錄 前言1.cpolar、PHPStudy2.Discuz3.打開PHPStudy&#xff0c;安裝網頁論壇所需軟件4.進行網頁運行環境的構建5.運行Discuz網頁程序6.使用cpolar建立穿透內網的數據隧道&#xff0c;發布到公網7.對云端保留的空白數據隧道進行配置8.Discuz論壇搭建完畢 前言 企業在發展…