mongodb: 安装 建/删 库,表
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,所以需要特别指明一下
mongodb: 安装 建/删 库,表的更多相关文章
- mongoDB学习手记2--建库、删库、插入、更新
上一篇 讲了在windows系统下的安装和启动,本文主要讲怎么建库.删库.插入.更新 在讲之前我们说一下mongoDB的一些基本概念,我们对比关系型数据库能更直观的理解 SQL术语/概念 Mongo ...
- MongoDB安装、CURD增改查删操作、应用场景
NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL".非关系型的数据存储 MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 ...
- MongoDB动态建表方案(官方原生驱动)
MongoDB动态建表方案(官方原生驱动) 需求前提:表名动态,表结构静态,库固定 1.导入相关依赖 <dependency> <groupId>org.mongodb< ...
- mongodb安装&简单使用
转自Mac下使用brew安装mongodb,按着步骤已成功安装. brew常用命令 1.更新brew本身 brew update 2.使用brew安装软件 1 brew install soft_na ...
- mysql数据库从删库到跑路之mysql其他
一 IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便测试,可以使用IDE工具 下载链接:https://pan.baidu.com/s/1bpo5mqj 掌握: #1. 测试+链接数据 ...
- MongoDB自建和阿里云RDS备份还原
MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功 ...
- (一)MongoDB安装
(一)MongoDB安装 mongodb 2018年03月06日 15时53分29秒 安装准备 启动mongodb 1.命令行参数启动 2.从配置文件启动 使用服务启动mongodb 参数解释 用户授 ...
- Mysql 库表操作初识
Mysql 库表操作初识 终端登录mysql 这里只演示win下, cmd 终端. 至于怎么在win下, linux, mac安装, 感觉这是一个入门级的百度搜索问题, 安装都搞不定, 确实有点尴尬, ...
- MongoDB安装部署(一)
前言 MongoDB是一个由C++语言编写的基于分布式文件存储的数据库,是当前NoSQL数据库中比较热门的一种,旨在为Web应用提供可扩展的高性能数据存储解决方案. MongoDB 简介 MongoD ...
随机推荐
- hibernate运行常见错误
错误一: Exception in thread "main" org.hibernate.MappingException: Could not determine type f ...
- 练级(train)
练级(train) 试题描述 cxm 在迷宫中练级.迷宫可以看成一个有向图,有向图的每个边上都有怪物.通过每条边并消灭怪物需要花费 \(1\) 单位时间.消灭一个怪物可以得到一定数量的经验值.怪物被消 ...
- 自制wifi信号放大器
自制wifi信号放大器 只要家里安装了一台无线路由器,在家里的任何地方都可以使用带上网功能的电子产品上网,但是由于距离的问题,WiFi信号有强弱之分,离无线路由器稍微远点,信号就有所降低,上网速度受影 ...
- BestCoder 2nd Anniversary/HDU 5718 高精度 模拟
Oracle Accepts: 599 Submissions: 2576 Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 262144/26 ...
- 更新yum 源
CentOS系统自带的更新源的速度实在是慢,为了让CentOS6使用速度更快的YUM更新源,可以选择163(网易)的更新源. 1.下载repo文件 wget http://mirrors.163.co ...
- Cannot map 'XXXController.Create' bean method
[转 :http://www.fanfanyu.cn/news/staticpagefile/2351.html] 最近在开发项目的过程中SpringMVC抛了个"Ambiguous map ...
- pat甲级 团体天梯赛 L2-022. 重排链表
L2-022. 重排链表 时间限制 500 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 给定一个单链表 L1→L2→...→Ln-1→Ln,请 ...
- 【HDOJ5951】Winning an Auction(博弈DP)
题意:A和B两个人做一个拍卖游戏.每一轮两人分别给出一个价格,出价高者获得该轮的物品,出价相同则奇数轮A优先,偶数轮B优先. 两个人的目标都是最大化自己的商品数量,给定轮数n与两人分别的总资金a,b, ...
- 【jetty】Jetty与Tomcat的区别
Jetty 的架构从前面的分析可知,它的所有组件都是基于 Handler 来实现,当然它也支持 JMX.但是主要的功能扩展都可以用 Handler 来实现.可以说 Jetty 是面向 Handler ...
- 学习总结——JMeter做http接口压力测试
JMeter做http接口压力测试 测前准备 用JMeter做接口的压测非常方便,在压测之前我们需要考虑这几个方面: 场景设定 场景分单场景和混合场景.针对一个接口做压力测试就是单场景,针对一个流程做 ...