2018-08-09Mongodb安装、数据库命令、数据类型

启动问题:
遇到了启动不成功,最后一句报错的结尾是terminating,就创建一个当前目录下的mongod文件。

问题1. exception in initandlisten 29 data directory /data/db not found

解决思路:用root权限创建db文件。sudo mkdir -p /data/db

不需要占用一个终端的启动:
sudo service mongod start
查看是否启动成功:
ps ajx|grep mongod
如果启动成功会显示:


启动成功显示

此时如果再启动便会报错:
sudo mongod
原因在于地址被占用,已经有一个终端占用了端口。

配置文件在/etc/mongod.conf
查看:vi /etc/mongod.conf
发现默认端口是27017
*启动服务器端命令是mongod,启动客户端命令是mongo
*MySQL的客户端和服务端都是一个命令,Mongo要分开

开启Mongo,显示的界面:


2018-08-09Mongodb安装、数据库命令、数据类型_第1张图片
默认数据库是test

解压一个命令tar -zxvf 文件名开头+Tab

Mongo中创建数据库只要use就行了,不需要create,这时候在物理上还是不存在的,只在逻辑上存在。

集合创建

  • 语法
db.createCollection(name, options)

  • name是要创建的集合的名称
  • options是一个文档,用于指定集合的配置
  • 选项​​参数是可选的,所以只需要到指定的集合名称。以下是可以使用的选项列表:
  • 例1:不限制集合大小
db.createCollection("stu")

  • 例2:限制集合大小,后面学会插入语句后可以查看效果
  • 参数capped:默认值为false表示不设置上限,值为true表示设置上限
  • 参数size:当capped值为true时,需要指定此参数,表示上限大小,当文档达到上限时,会将之前的数据覆盖,单位为字节
db.createCollection("sub", { capped : true, size : 10 } )

查看当前数据库的集合

  • 语法
show collections

删除

  • 语法
db.集合名称.drop()

数据类型

  • 下表为MongoDB中常用的几种数据类型:
  • Object ID:文档ID(作用是用来做唯一标识的,不需要我们来维护,每个文档中都有,自己来维护也可以,但不能保证不重复)
  • String:字符串,最常用,必须是有效的UTF-8
  • Boolean:存储一个布尔值,true或false
  • Integer:整数可以是32位或64位,这取决于服务器
  • Double:存储浮点值
  • Arrays:数组或列表,多个值存储到一个键
  • Object:用于嵌入式的文档,即一个值为一个文档(我们在Nosql中是无法存储关系的,但可以嵌入一个文档用以保存关系)
  • Null:存储Null值
  • Timestamp:时间戳
  • Date:存储当前日期或时间的UNIX时间格式

object id

  • 每个文档都有一个属性,为_id,保证每个文档的唯一性
  • 可以自己去设置_id插入文档
  • 如果没有提供,那么MongoDB为每个文档提供了一个独特的_id,类型为objectID
  • objectID是一个12字节的十六进制数
    • 前4个字节为当前时间戳
    • 接下来3个字节的机器ID
    • 接下来的2个字节中MongoDB的服务进程id
    • 最后3个字节是简单的增量值

你可能感兴趣的:(2018-08-09Mongodb安装、数据库命令、数据类型)