mongo shell
程序员文章站
2022-04-18 18:01:35
mongo shell mongo 连接 本地 远程 带认证的方式 复制集 SSL方式 mongo shell 操作 当插入数据时会自动创建集合 在mongo第一次显示提示之前,会自动运行 目录下的 文件,如果不想加载,可以使用 参数 配置shell Date Date() 返回string new ......
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
参数
配置shell
cmdcount = 1; prompt = function() { return (cmdcount++) + "> "; } # 显示行数
date
- date() 返回string
- new date() 返回isodate
-
isodate() 返回isodate
objectid
_id的类型
numberlong
mongo shell中,默认认为数字为浮点型,为表示64位int型数据,可以用numberlong
如果用$inc作用于numberlone,将把此数转为浮点型数字比较
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进行比对
db.inventory.find( { price: { $type: "decimal" } } )
shell操作指南
~/.dbshell
:操作 记录show dbs
:查看 所有 数据库,不同的访问权限会有不同的结果use <db>
:使用show collections
:查看所有集合show users
:查看当前所有用户show roles
:查看当前数据库所有角色,包括内建的show profile
:打印耗时1毫秒以上的操作5个show databases
:查看可访问的所有数据库