"小王啊,咱们新项目要用MongoDB了,你MySQL不是挺熟的吗?这周把环境搭起来研究下!"——上周五下班前,技术总监拍了拍我的肩膀,作为有三年MySQL开发经验的"老DBA",我对着这个陌生的名字一脸懵。
别慌!经过一个周末的摸索,我发现从MySQL转向MongoDB其实就像老司机换新车——虽然操作界面不同,但驾驶逻辑是相通的,下面就把我的实战经验分享给大家,保证你用MySQL的基础知识,30分钟内就能搞定MongoDB的安装配置!
和MySQL有社区版、企业版一样,MongoDB也有多个版本:
新手建议从社区版开始,目前稳定版本是7.0(2025年8月数据),对Windows/macOS/Linux支持都很完善。
配置项 | MySQL最低要求 | MongoDB最低要求 | 建议开发配置 |
---|---|---|---|
CPU | 1核 | 1核 | 2核+ |
内存 | 512MB | 1GB | 4GB+ |
磁盘 | 100MB | 200MB | SSD 20GB+ |
注:MongoDB对内存需求稍高是因为其内存映射存储引擎的设计
.msi
格式小技巧:和MySQL安装一样,建议把安装路径设为简单目录如C:\mongodb
,避免中文和空格
双击安装包后:
对比MySQL:MongoDB没有像MySQL那样繁琐的配置向导,更像绿色软件的直接安装
和MySQL一样,我们需要把bin目录加入PATH:
C:\mongodb\bin\
验证是否成功:
mongod --version
应该能看到版本信息输出(类似MySQL的mysql --version
)
MongoDB需要手动创建数据目录,就像MySQL要初始化data目录:
md C:\data\db
两种启动方式,任选其一:
临时启动(开发测试用)
mongod --dbpath=C:\data\db
看到[initandlisten] waiting for connections
表示启动成功
安装为Windows服务(生产推荐)
mongod --install --dbpath=C:\data\db --logpath=C:\data\log\mongod.log net start MongoDB
对比MySQL:mongod
相当于mysqld
,都是服务端进程
新开命令行窗口输入:
mongo
这就进入了交互式Shell(相当于MySQL的mysql -u root -p
)
操作 | MySQL命令 | MongoDB命令 |
---|---|---|
显示数据库 | SHOW DATABASES; | show dbs |
使用数据库 | USE dbname; | use dbname |
显示表 | SHOW TABLES; | show collections |
查询记录 | SELECT * FROM table; | db.collection.find() |
来试试创建一个测试数据库:
use testdb db.users.insert({name: "张三", age: 28, skills: ["MySQL","JavaScript"]}) db.users.find() // 查看刚插入的数据
Q:MongoDB的root密码在哪设置? A:MongoDB默认不开启认证,需要手动配置(和MySQL 5.7前的空密码情况类似),生产环境务必配置auth,开发可以先跳过。
Q:没有SQL语句怎么备份恢复?
A:用mongodump/mongorestore
工具,相当于MySQL的mysqldump
:
mongodump -d testdb -o backup/ mongorestore backup/
Q:我的.ini配置文件在哪? A:MongoDB使用YAML格式配置文件,默认路径:
/etc/mongod.conf
C:\Program Files\MongoDB\Server\7.0\bin\mongod.cfg
从MySQL切到MongoDB的第一天,我最大的感受是:"原来不用写CREATE TABLE语句这么爽!"虽然查询语言从SQL变成了JavaScript风格的语法,但数据库的核心概念是相通的。
现在你的MongoDB已经跑起来了,接下来我会继续分享如何用MySQL思维快速掌握MongoDB的查询和索引技巧,有什么问题欢迎评论区交流,咱们一起从SQL老司机变身NoSQL多面手!
本文由 丙明旭 于2025-08-01发表在【云服务器提供商】,文中图片由(丙明旭)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://vps.7tqx.com/wenda/506700.html
发表评论