mongo shell

mongo shell

mongo 链接

本地

mongo # 链接127.0.0.1:27017

远程

mongo "mongodb://mongodb0.example.com:28015"

带认证的方式

mongo "mongodb://alice@mongodb0.examples.com:28015/?authSource=admin"

复制集

mongo "mongodb://mongodb0.example.com.local:27017,mongodb1.example.com.local:27017,mongodb2.example.com.local:27017/?replicaSet=replA"
mongo "mongodb+srv://server.example.com/" # DNS Seedlist Connection Format

SSL方式

mongo "mongodb://mongodb0.example.com.local:27017,mongodb1.example.com.local:27017,mongodb2.example.com.local:27017/?replicaSet=replA&ssl=true"

mongo shell 操做

db # 查看当前数据库
use <database> #使用数据库

当插入数据时会自动建立集合
在mongo第一次显示提示以前,会自动运行HOME目录下的.mongorc.js文件,若是不想加载,能够使用--norc参数mongodb

配置shell

cmdCount = 1;
prompt = function() {
             return (cmdCount++) + "> ";
         }
# 显示行数

Date

  • Date() 返回string
  • new Date() 返回ISODate
  • ISODate() 返回ISODateshell

    ObjectId

    _id的类型数据库

    NumberLong

    mongo shell中,默认认为数字为浮点型,为表示64位int型数据,能够用NumberLong
    若是用$inc做用于NumberLone,将把此数转为浮点型code

    数字比较

Query Results
{ “val”: 9.99 } { “_id”: 2, “val”: 9.99, “description”: “Double” }
{ “val”: NumberDecimal( “9.99” ) } { “_id”: 1, “val”: NumberDecimal( “9.99” ), “description”: “Decimal” }
{ val: 10 } { “_id”: 3, “val”: 10, “description”: “Double” }{ “_id”: 4, “val”: NumberLong(10), “description”: “Long” }{ “_id”: 5, “val”: NumberDecimal( “10.0” ), “description”: “Decimal” }
{ val: NumberDecimal( “10” ) } { “_id”: 3,“val”:10, “description”: “Double” }{ “_id”: 4, “val”: NumberLong(10), “description”: “Long” }{ “_id”: 5, “val”: NumberDecimal( “10.0” ), “description”: “Decimal” }

当double类型的数据进行比较时,会转换double的数据类型为decimal,并且会有偏差
能够用type进行比对orm

db.inventory.find( { price: { $type: "decimal" } } )

shell操做指南

~/.dbshell:操做 记录
show dbs:查看 全部 数据库,不一样的访问权限会有不一样的结果
use <db>:使用 数据库
show collections:查看全部集合
show users:查看当前全部用户
show roles:查看当前数据库全部角色,包括内建的
show profile:打印耗时1毫秒以上的操做5个
show databases:查看可访问的全部数据库
server

相关文章
相关标签/搜索