mongodb的安装
- 下载mongodb www.mongodb.org 下载最新stable版
- 解压文件

3.不用编译,解压之后本身就是编译后的二进制可执行文件
解压之后,目录格式如下

在bin目录可看到以下文件,各个文件作用,解释如下:


注:mongosniff、mongostat、mongotop 三个是用来观察服务器的状态的
4.启动mongod(因为mongod是服务端,所以启动它)服务
./bin/mongod –-dbpath /path/to/database –-logpath /path/to/log/xx.log -–fork -–port 27017 --smallfiles
注意1:如果我们安装的是32位的mongodb,那么我们需要加一个选项 --storageEngine mmapv1,文章最后面有解释原因
注意2:我们在指定--dbpath的时候可以只指定一个文件夹就可以了,但是在指定--logpath的时候,必须指定到某一个xx.log文件,如果没有则启动会报错,如下:
修改之后,启动成功。
5.然后再启动mongo(客户端)
./bin/mongo
4-5操作如下图,显示连接数据成功
6.mongodb非常的占磁盘空间,刚启动后,就需要占3-4G左右,如果用虚拟机联系,可能空间不够,导致无法启动,可以用--smallfiles选项来启动,将会占用较小空间,400M左右
连接数据库成功之后,我们就可以使用命令去操作数据库了
- show dbs命令,显示所有库,可以看到自带的3个库,其中admin和local不要动。test库是练习库,可以随便操作
- 使用use 库名(use test),转换到某一个数据库。
- 使用show tables 显示库下所有表,其中以system开头的表不要动,可能会引起数据崩溃
4.mongodb中的数据库是隐式创建的,直接”use 库名”,然后创建collection,这样数据库就已经创建好了。本来是没有shop这个库的,我们直接use shop,然后show collections,里面是没有表的,我们创建一个表user,创建成功后,数据库shop也就创建好了。再show dbs;可以发现shop库已经存在了
5.我们为表添加数据
主键自动生成,可以自己指定
主键可以自己指定
下面的数据也是创建在user表中,但是数据结构和前两条完全不同,证明了文档型数据库,没有结构的概念。我们在创建表的时候也没有定义表的结构。
collection的意义?刚才我们提到数据库是可以隐式创建的,其实collection(table)也可以隐式创建,如下图中,其实是没有goods这个collection的,但是我们使用db.goods.insert(),一样可以成功的插入数据,并且此时再用show collections命令,就可以看到goods这个表。 其实我们可以理解collection为一个大口袋,或者说是集合,里面就是放各种各样的数据的,里面不能限定文档的格式,所以没必要提前创建
6.删除数据库表
7.删除数据库
8.db.help();可以查看mongodb的帮助
报错:
1.The default storage engine 'wiredTiger' is not available with this build of mongod. Please specify a different storage engine explicitly, e.g. --storageEngine=mmapv1., terminating
2016-01-05T17:44:48.381+0800 I CONTROL [initandlisten] dbexit: rc: 100
32系统位,需要安装32位的mongodb,不能使用 存储引擎wiredTiger,而默认的存储引擎就是wiredTiger,所以需要特别指明一下
浙公网安备 33010602011771号