mongo-数据库

1. 新建数据库命名的大小写

数据库的命令应使用小写字母,但大写字母也是支持的,例如 TYC。不过此时不能再添加 tyc 数据库了,会提示错误:

> use TYC
switched to db TYC
> show collections
> show dbs
Gps 73.8720703125GB
TYC (empty)
admin (empty)
config 0.0625GB
test 0.078125GB
> db.tianyc.t1.insert({name:'x'})
> show collections
system.indexes
tianyc.t1
> use tyc
switched to db tyc
> show collections
Fri Feb 01 16:07:52 uncaught exception: error: {
"$err" : "can't have 2 databases that just differ on case have: TYC want to add: tyc",
"code" : 13297
}

这也容易理解,因为mongo数据库会在操作系统上创建同名的文件。我的mongo集群在windows平台,不能创建完毕TYC.ns后,又在同一路径下创建 tyc.ns文件了。

2. 保留数据库

admin:从权限上来讲,这是‘root’数据库。要是将一个用户添加到这个数据库,这个用户自动继承所有数据库的权限。一些特定的服务器端命令也只能从这个数据库运行,比如列出所有数据库和关闭服务器。

local:这个数据库永远不会被复制,可以用来存储限于本地单台服务器的任意集合。

config:当mongo用于分片设置时,config数据库在内部使用,用于保存分片的相关信息。

 

### MongoDB 与 Mongo-Express 的使用方法、安装与配置 MongoDB 是一个流行的 NoSQL 数据库,而 Mongo-Express 是一个基于 Web 的 MongoDB 管理工具,允许用户通过图形界面进行数据库操作。以下是 MongoDB 与 Mongo-Express 的安装、配置及使用方法。 #### 安装与配置 ##### 使用 Docker 部署 MongoDB 与 Mongo-Express 通过 Docker 部署 MongoDB 和 Mongo-Express 是一种高效的方式,可以借助 `docker-compose.yml` 文件一次性启动两个服务,并配置它们共享网络环境以实现通信。 以下是一个示例的 `docker-compose.yml` 文件: ```yaml version: '3.1' services: mongo: image: mongo:6.0 restart: always environment: MONGO_INITDB_ROOT_USERNAME: root MONGO_INITDB_ROOT_PASSWORD: example volumes: - ./data:/data/db ports: - 27017:27017 mongo-express: image: mongo-express restart: always ports: - 8081:8081 environment: ME_CONFIG_MONGODB_ADMINUSERNAME: root ME_CONFIG_MONGODB_ADMINPASSWORD: example ME_CONFIG_MONGODB_URL: mongodb://root:example@mongo:27017/ ``` 该配置文件定义了两个服务:`mongo` 和 `mongo-express`。MongoDB 容器使用 `mongo:6.0` 镜像,并设置了管理员用户名和密码。Mongo-Express 容器则通过 `ME_CONFIG_MONGODB_URL` 环境变量连接到 MongoDB 容器,并使用相同的用户名和密码进行身份验证。 执行以下命令启动服务: ```bash docker-compose up -d ``` MongoDB 将在 `27017` 端口运行,而 Mongo-Express 则在 `8081` 端口提供 Web 界面。 ##### 安全性配置 为了增强安全性,建议采取以下措施: - **修改默认的用户名和密码**,避免使用弱密码。 - **设置数据库的黑名单/白名单**,限制对敏感数据的访问。 - **定期备份数据库**,以防数据丢失。 - **使用监控工具** 监控 Mongo-Express 的运行状态,及时发现并解决问题 [^2]。 #### 使用方法 ##### 登录 Mongo-Express 启动服务后,可以通过浏览器访问 `http://localhost:8081` 来打开 Mongo-Express 的 Web 界面。输入 MongoDB 的管理员用户名和密码即可登录。 ##### 数据库操作 在 Mongo-Express 的 Web 界面中,用户可以执行以下操作: - **查看数据库**:列出所有数据库,并选择特定数据库进行操作。 - **集合管理**:创建、删除和重命名集合。 - **文档管理**:插入、更新和删除文档。 - **查询执行**:编写和执行查询语句,查看查询结果 [^2]。 ##### 远程客户端连接 除了通过 Web 界面管理数据库,还可以使用远程客户端连接 MongoDB。例如,使用 `mongo` 命令行工具连接 MongoDB: ```bash mongo -u root -p example --authenticationDatabase admin ``` 该命令将使用指定的用户名和密码连接到 MongoDB 数据库 [^3]。 #### 典型生态项目 Mongo-Express 是基于 Node.js 开发的,因此与 Node.js 生态系统紧密相关。它使用了 Express 框架,因此也与 Express 生态系统紧密相关 [^2]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值