mongodb安装笔记 --下面大部分都是参考网上资料,仅仅作为笔记使用 参考链接 Mongodb官网安装 Mongodb官网对比 相关文档 我的mongodb安装在[d:\Java\mongodb] 所以需要根目录手动创建文件夹【e:\data\db】 mongodb使用服务方式安装 D:\Java\mongodb\bin\mong
mongodb安装笔记
--下面大部分都是参考网上资料,仅仅作为笔记使用
参考链接
Mongodb官网安装
Mongodb官网对比
相关文档
我的mongodb安装在[d:\Java\mongodb]
所以需要根目录手动创建文件夹【e:\data\db】
mongodb使用服务方式安装
'D:\Java\mongodb\bin\mongod.exe --bind_ip 127.0.0.1 --logpath d:\\Java\\mongodb \\logs\\MongoLog.log --logappend --dbpath d:\\data --directoryperdb --service' Fri Jan 10 09:17:45.050 Service can be started from the command line with 'net s tart MongoDB'日志需要指定具体的文件,比如MongoLog.log 之前没有置顶就报错【服务没有及时响应或控制请求】
安装、删除服务指令
mongod --install
mongod --service
mongod --remove
mongod --reinstall
或者
C:\mongodb\bin\mongod.exe --remove
启动服务
net start Mongodb停止服务
net stop Mongodb测试简单JavaScript语句
> 3+3 6 > db test > // the first write will create the db: > db.foo.insert( { a : 1 } ) > db.foo.find() { _id : ..., a : 1 } mongo.exe的详细的用法可以参考mongo.exe --help
下面从官网摘抄下来的普通sql跟MongoDB的区别
Create and Alter
The following table presents the various SQL statements related totable-level actions and the corresponding MongoDB statements.
SQL Schema Statements | MongoDB Schema Statements | Reference |
---|---|---|
CREATE TABLE users ( id MEDIUMINT NOT NULL AUTO_INCREMENT, user_id Varchar(30), age Number, status char(1), PRIMARY KEY (id) ) |
Implicitly created on first insert() operation. The primary key_idis automatically added if_id field is not specified. db.users.insert( { user_id: "abc123", age: 55, status: "A" } ) However, you can also explicitly create a collection: db.createCollection("users") |
Seeinsert() anddb.createCollection()for more information. |
ALTER TABLE users ADD join_date DATETIME |
Collections do not describe or enforce the structure of itsdocuments; i.e. there is no structural alteration at thecollection level. However, at the document level, update() operations can add fields to existingdocuments using the$set operator. db.users.update( { }, { $set: { join_date: new Date() } }, { multi: true } ) |
See the Data Modeling Concepts, update(), and$set for moreinformation on changing the structure of documents in acollection. |
ALTER TABLE users DROP COLUMN join_date |
Collections do not describe or enforce the structure of itsdocuments; i.e. there is no structural alteration at the collectionlevel. However, at the document level, update() operations can remove fields fromdocuments using the$unset operator. db.users.update( { }, { $unset: { join_date: "" } }, { multi: true } ) |
See Data Modeling Concepts, update(), and$unset for more information on changing the structure ofdocuments in a collection. |
CREATE INDEX idx_user_id_asc ON users(user_id) |
db.users.ensureIndex( { user_id: 1 } ) |
See ensureIndex()andindexes for more information. |
CREATE INDEX idx_user_id_asc_age_desc ON users(user_id, age DESC) |
db.users.ensureIndex( { user_id: 1, age: -1 } ) |
See ensureIndex()andindexes for more information. |
DROP TABLE users |
db.users.drop() |
See drop() formore information. |
Insert
The following table presents the various SQL statements related toinserting records into tables and the corresponding MongoDB statements.
SQL INSERT Statements | MongoDB insert() Statements | Reference |
---|---|---|
INSERT INTO users(user_id, age, status) VALUES ("bcd001", 45, "A") |
db.users.insert( { user_id: "bcd001", age: 45, status: "A" } ) |
See insert() for more information. |
Select
The following table presents the various SQL statements related toreading records from tables and the corresponding MongoDB statements.
SQL SELECT Statements | MongoDB find() Statements | Reference |
---|---|---|
SELECT * FROM users |
db.users.find() |
See find()for more information. |
SELECT id, user_id, status FROM users |
db.users.find( { }, { user_id: 1, status: 1 } ) |
See find()for more information. |
SELECT user_id, status FROM users |
db.users.find( { }, { user_id: 1, status: 1, _id: 0 } ) |
See find()for more information. |
SELECT * FROM users WHERE status = "A" |
db.users.find( { status: "A" } ) |
See find()for more information. |
SELECT user_id, status FROM users WHERE status = "A" |
db.users.find( { status: "A" }, { user_id: 1, status: 1, _id: 0 } ) |
See find()for more information. |
SELECT * FROM users WHERE status != "A" |
db.users.find( { status: { $ne: "A" } } ) |
See find()and$ne for more information. |
SELECT * FROM users WHERE status = "A" AND age = 50 |
db.users.find( { status: "A", age: 50 } ) |
See find()and$and for more information. |
SELECT * FROM users WHERE status = "A" OR age = 50 |
db.users.find( { $or: [ { status: "A" } , { age: 50 } ] } ) |
See find()and$or for more information. |
SELECT * FROM users WHERE age > 25 |
db.users.find( { age: { $gt: 25 } } ) |
See find()and$gt for more information. |
SELECT * FROM users WHERE age < 25 |
db.users.find( { age: { $lt: 25 } } ) |
See find()and$lt for more information. |
SELECT * FROM users WHERE age > 25 AND age <= 50 |
db.users.find( { age: { $gt: 25, $lte: 50 } } ) |
See find(),$gt, and $lte formore information. |
SELECT * FROM users WHERE user_id like "%bc%" |
db.users.find( { user_id: /bc/ } ) |
See find()and$regex for more information. |
SELECT * FROM users WHERE user_id like "bc%" |
db.users.find( { user_id: /^bc/ } ) |
See find()and$regex for more information. |
SELECT * FROM users WHERE status = "A" ORDER BY user_id ASC |
db.users.find( { status: "A" } ).sort( { user_id: 1 } ) |
See find()andsort()for more information. |
SELECT * FROM users WHERE status = "A" ORDER BY user_id DESC |
db.users.find( { status: "A" } ).sort( { user_id: -1 } ) |
See find()andsort()for more information. |
SELECT COUNT(*) FROM users |
db.users.count() or db.users.find().count() |
See find()andcount() formore information. |
SELECT COUNT(user_id) FROM users |
db.users.count( { user_id: { $exists: true } } ) or db.users.find( { user_id: { $exists: true } } ).count() |
See find(),count(), and$exists for more information. |
SELECT COUNT(*) FROM users WHERE age > 30 |
db.users.count( { age: { $gt: 30 } } ) or db.users.find( { age: { $gt: 30 } } ).count() |
See find(),count(), and$gt for more information. |
SELECT DISTINCT(status) FROM users |
db.users.distinct( "status" ) |
See find()anddistinct()for more information. |
SELECT * FROM users LIMIT 1 |
db.users.findOne() or db.users.find().limit(1) |
See find(),findOne(),andlimit()for more information. |
SELECT * FROM users LIMIT 5 SKIP 10 |
db.users.find().limit(5).skip(10) |
See find(),limit(), andskip() formore information. |
EXPLAIN SELECT * FROM users WHERE status = "A" |
db.users.find( { status: "A" } ).explain() |
See find()andexplain()for more information. |
Update Records
The following table presents the various SQL statements related toupdating existing records in tables and the corresponding MongoDBstatements.
SQL Update Statements | MongoDB update() Statements | Reference |
---|---|---|
UPDATE users SET status = "C" WHERE age > 25 |
db.users.update( { age: { $gt: 25 } }, { $set: { status: "C" } }, { multi: true } ) |
See update(),$gt, and $set for moreinformation. |
UPDATE users SET age = age + 3 WHERE status = "A" |
db.users.update( { status: "A" } , { $inc: { age: 3 } }, { multi: true } ) |
See update(),$inc, and $set for moreinformation. |
Delete Records
The following table presents the various SQL statements related todeleting records from tables and the corresponding MongoDB statements.
SQL Delete Statements | MongoDB remove() Statements | Reference |
---|---|---|
DELETE FROM users WHERE status = "D" |
db.users.remove( { status: "D" } ) |
See remove()for more information. |
DELETE FROM users |
db.users.remove( ) |
See remove()for more information. |

MySQLBLOBshavelimits:TINYBLOB(255bytes),BLOB(65,535bytes),MEDIUMBLOB(16,777,215bytes),andLONGBLOB(4,294,967,295bytes).TouseBLOBseffectively:1)ConsiderperformanceimpactsandstorelargeBLOBsexternally;2)Managebackupsandreplicationcarefully;3)Usepathsinst

The best tools and technologies for automating the creation of users in MySQL include: 1. MySQLWorkbench, suitable for small to medium-sized environments, easy to use but high resource consumption; 2. Ansible, suitable for multi-server environments, simple but steep learning curve; 3. Custom Python scripts, flexible but need to ensure script security; 4. Puppet and Chef, suitable for large-scale environments, complex but scalable. Scale, learning curve and integration needs should be considered when choosing.

Yes,youcansearchinsideaBLOBinMySQLusingspecifictechniques.1)ConverttheBLOBtoaUTF-8stringwithCONVERTfunctionandsearchusingLIKE.2)ForcompressedBLOBs,useUNCOMPRESSbeforeconversion.3)Considerperformanceimpactsanddataencoding.4)Forcomplexdata,externalproc

MySQLoffersvariousstringdatatypes:1)CHARforfixed-lengthstrings,idealforconsistentlengthdatalikecountrycodes;2)VARCHARforvariable-lengthstrings,suitableforfieldslikenames;3)TEXTtypesforlargertext,goodforblogpostsbutcanimpactperformance;4)BINARYandVARB

TomasterMySQLBLOBs,followthesesteps:1)ChoosetheappropriateBLOBtype(TINYBLOB,BLOB,MEDIUMBLOB,LONGBLOB)basedondatasize.2)InsertdatausingLOAD_FILEforefficiency.3)Storefilereferencesinsteadoffilestoimproveperformance.4)UseDUMPFILEtoretrieveandsaveBLOBsco

BlobdatatypesinmysqlareusedforvoringLargebinarydatalikeImagesoraudio.1) Useblobtypes (tinyblobtolongblob) Basedondatasizeneeds. 2) Storeblobsin Perplate Petooptimize Performance.3) ConsidersxterNal Storage Forel Blob Romana DatabasesizerIndimprovebackupupe

ToadduserstoMySQLfromthecommandline,loginasroot,thenuseCREATEUSER'username'@'host'IDENTIFIEDBY'password';tocreateanewuser.GrantpermissionswithGRANTALLPRIVILEGESONdatabase.*TO'username'@'host';anduseFLUSHPRIVILEGES;toapplychanges.Alwaysusestrongpasswo

MySQLofferseightstringdatatypes:CHAR,VARCHAR,BINARY,VARBINARY,BLOB,TEXT,ENUM,andSET.1)CHARisfixed-length,idealforconsistentdatalikecountrycodes.2)VARCHARisvariable-length,efficientforvaryingdatalikenames.3)BINARYandVARBINARYstorebinarydata,similartoC


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

Zend Studio 13.0.1
Powerful PHP integrated development environment

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

Notepad++7.3.1
Easy-to-use and free code editor

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft
