zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

MongoDB(3)- Database 数据库相关

2023-09-27 14:25:57 时间
DatabaseMongoDB 将数据记录存储为文档 特别是 BSON 文档 这些文档在集合中聚集在一起数据库存储一个或多个文档集合。在 MongoDB 里面存在数据库的概念 但没有模式

 

Shell

MongoDB 自带了一个功能强大的 JavaScript Shell 可以用于管理或操作 MongoDB

 

默认数据库MongoDB 数据库初始安装完成后 默认的数据库是 test学习时可以在默认 test 数据库上进行各种练习操作

 

MongoDB 数据库的命名规则

MongoDB 数据库的命名要符合 UTF-8 标准的字符串


序号注意事项1不能为空2不得含有 /、\、?、$、空格、空字符等 基本只能使用 ASCII 中的字母和数字3区分大小写 建议全部小写4少于64个字符5不得使用保留的数据库名 如 admin、local、config

 

重点

数据库最终会成为文件 数据库名就是文件的名称

由于数据库名称在 MongoDB 中区分大小写 因此数据库名称不能仅仅区别于字符对于在 Windows 上运行的 MongoDB 数据库名称不能包含以下字符 /\. $* :|? 对于在 UNIX 和 Linux 系统上运行的 MongoDB 数据库名称不能包含以下字符 /\. $ 虽然 UTF-8 可以提供很多国家的语言的命名格式 在 MongoDB 数据库命名时也可以使用汉字作为数据库名 但是最好尽量采用英文字母、数字、字符等为主的命名格式

 

正确的命名格式

myDB、my_NewDB、myDB12

 

错误的命名格式

.myDB、/123

 

保留数据库

MongoDB 安装成功后就有的数据库

库名作用admin权限数据库 添加用户到该数据库中 该用户会自动继承数据库的所有权限local数据库中的数据永远不会被复制config分片时 config 数据库在内部使用 保存分子信息test默认数据库 可以用来做各种测试等

但现在新版的 貌似没有 test 数据库了

 

查看数据库

MongoDB 使用 show 命令查看当前数据库列表

show dbs        //可以在任意当前数据库上执行该命令

admin 0.000GB    //保留数据库 admin

myDB 0.000GB     //自定义数据库 myDB,该数据库里已经插入记录 没有记录的自定义数据库不会显示 

local 0.000GB    //保留数据库 local

test 0.000GB     //保留数据库 test

 

重点MongoDB 默认的数据库为 test 如果没有创建新的数据库 集合 Collections 将存储在 test 数据库中如果自定义数据库没有插入记录 则用户在 show dbs 时是不会显示该自定义数据库的 只有存在数据的数据库才会显示

 

使用数据库

use database_name

如果数据库已经存在则连接数据库 然后可以在该数据库进行各种操作如果数据库不存在 则在第一次为该数据库存储数据时 MongoDB 会创建该数据库

 

小栗子
 show dbs // 查看数据库

admin 0.000GB

config 0.000GB

local 0.000GB

 use test // 使用 test 数据库

switched to db test

 show dbs // 查看数据库 还是没有 test 数据库

admin 0.000GB

config 0.000GB

local 0.000GB

 db.myNewCollection1.insertOne( { x: 1 } ) // 插入一条数据到 test 数据库的 myNewCollection1 集合中

 acknowledged : true,

 insertedId : ObjectId( 60b340d196a866c106d3c564 )

 show dbs // 查看数据库 添加数据之后 test 数据库可以查看到了

admin 0.000GB

config 0.000GB

local 0.000GB

test 0.000GB


统计数据库信息

注意对某个数据库进行操作之前 一定要用 use 切换至数据库 否则会出错

 db.stats()

 db : test ,

 collections : 1, // 集合数量

 views : 0, // 视图数量

 objects : 1, // 文档数量

 avgObjSize : 33, // 每个文档的平均大小 以字节为单位 

 dataSize : 33, // 此数据库中保存的未压缩数据的总大小

 storageSize : 20480, // 为此数据库中的集合分配的用于文档存储的总空间量

 indexes : 1, // 索引数量

 indexSize : 20480, // 索引大小

 totalSize : 40960, // storageSize indexSize

 scaleFactor : 1, 

 fsUsedSize : 67665461248, // 正在使用的磁盘空间大小

 fsTotalSize : 499963174912, // 总的磁盘空间大小

 ok : 1

} 


删除数据库

db.dropDatabase ()    //删除当前数据库

{ ndropped : myDBn Jok : 1}    //显示结果删除成功


年底复盘之大厂必问面试题:Redis+MongoDB+ZK+Nginx+数据库 今天分享给大家的都是目前主流企业使用最高频的面试题库,也都是 Java 版本升级之后,重新整理归纳的最新答案,会让面试者少走很多不必要的弯路。同时每个专题都做到了详尽的面试解析文档,以确保每个阶段的读者都能看得懂,同时这部分面试文档也是可以免费的提供给有需要的同学们学习的,有需要的可以查看文末的获取方式!
MongoDB数据库【高级语法篇】 1.Limit与Skip方法 Limit() 方法 如果你需要在MongoDB中读取指定数量的数据记录,可以使用MongoDB的Limit方法,limit()方法接受一个数字参数,该参数指定从MongoDB中读取的记录条数。 以下实例为显示查询文档中的两条记录:
MongoDB数据库【基本语法内容】 如果数据库不存在,则创建数据库,否则切换到指定数据库 三部曲,创建数据库,查看当前使用的数据库,查看所有的数据库