前言
自己对mongoDB的认知一直停留在它是个nosql数据库(非关系型的数据库)存储的是key-value形式,连它的一些基本的CRUD都不会,也不知道它是怎么个"key-value"。想一下,自己对关系型数据库mysql,oracle也不是说什么大神,至少自己知道里面能存些什么,怎么操作它。然后觉得应该对mongoDB也应该至少去了解了下它的数据结构,然后掌握一些操作(至少CRUD会吧)。
安装
自己的环境是centos7+mongodb(在windows环境下对mongodb的操作是差不多的类似mysql,oracle也有windows版本和linux版本)。
步骤:(网上有很多,这里我就做个简单的笔记,自己用来以后看了)
1.上传下载好的mongoDB的压缩包到linux中并解压
2.在安装目录下新建data文件夹,再在data里面新建db文件夹
3.启动:(进入安装目录下的bin目录)
./mongod -dbpath=/home/admin/programs/mongodb/data/db -logpath=/home/admin/programs/mongodb/mongodb.log -fork
4.停止:
查看mongoDB占用的端口(默认是27017),用kill杀死进程(不能使用kill -9)
5.服务配置成开启自启动(不单单是mongo,你想开机启动什么都可以往里加,实际就是把启动命令加入到 /etc/rc.local 中)
在/etc/rc.local 中加入mongodb启动命令:
/home/admin/programs/mongodb/bin/mongod -dbpath=/home/admin/programs/mongodb/data/db -logpath=/home/admin/programs/mongodb/mongodb.log -fork -auth
图形化操作界面
类似navcait,也有专门的mongoDB的图形化操作界面,网上很多随便找一款吧。(我用的是叫NoSQLBooster for MongoDB,这好像还不用激活就能用)
基础知识
1.mongoDB是文档形式数据库,存入的数据是类似json的数据
2.mongoDB的数据库结构对应到关系型数据库:
关系型数据库 | 【数据库】 | 【集合】 | 【文档(json字符串)】 |
mongoDB | 【数据库】 | 【表】 | 【行(每一行的数据)】 |
collection: => document: => {name:"jack",age:20} {bookname:"mongodb",date:"2015-12-19"} 第一个文档和第二个文档毫无关系,【无模式的概念】
基础操作
1.操作客户端
操作可以通过图形化界面和mongoDB自带的命令模式客户端操作
在安装的bin目录中有mongo这个脚本,运行它就可以启动客户端:
2.CRUD
这个我不总结,因为只需要记住help命令(很方便的,再结合网上的实例)就好了~