文章目录
- 前言
- 一、MongoDB安装
- 二、创建数据源
- 1.非用户验证方式
- 2.用户验证方式
- 注意事项
作者:kxj
前言
MongoDB 是一个基于分布式文件存储的数据库。是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,可以存储比较复杂的数据类型。MongoDB 最大的特点是它支持的查询语言非常强大,其语法类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。 目前 SuperMap iDesktop 支持 MongoDB 2.4以上版本的数据库。本文以MongoDB 5.0.5为例讲述非用户验证方式创建数据源和用户验证方式创建数据源。
一、MongoDB安装
MongoDB官网下载地址:https://www.mongodb.com/try/download/enterprise
MongoDB分为社区版(在所有环境下都免费)和 企业版(在开发环境免费,生产环境收费)两个版本,以下示例为社区版。
下载完成之后解压即用,解压之后文件夹如下:
二、创建数据源
1.非用户验证方式
- 非用户验证方式启动MongoDB
在解压文件夹中新建文件夹:data和log,并在log文件夹下新建log.txt文件
在bin文件夹内打开PowerShell(空白处按住shift右键,点击“在此处打开PowerShell窗口”),执行以下命令(注意替换自己的文件位置):
.\mongod.exe --dbpath E:\软件\mongodb-windows-x86_64-enterprise-5.0.5\mongodb-win32-x86_64-enterprise-windows-5.0.5\data --logpath E:\软件
\mongodb-windows-x86_64-enterprise-5.0.5\mongodb-win32-x86_64-enterprise-windows-5.0.5\log\log.txt
执行完命令之后再依次启动mongod.exe、mongo.exe。
- 新建数据源
打开SuperMap iDesktop(本文以1020版本为例),右键数据源选择新建数据库型数据源,选择MongoDB,新建页面如下,填写服务器名称:本地为localhost(可以填写远程数据库,填写数据库所在ip+端口号,需要开启远程权限),填写数据库名称,用户名称和用户密码不填,点击创建。
2.用户验证方式
- 用户验证方式启动MongoDB
在bin文件夹内打开PowerShell(空白处按住shift右键,点击“在此处打开PowerShell窗口”),执行以下命令(注意替换自己的文件位置):
.\mongod.exe --dbpath E:\软件\mongodb-windows-x86_64-enterprise-5.0.5\mongodb-win32-x86_64-enterprise-windows-5.0.5\data --logpath E:\软件
\mongodb-windows-x86_64-enterprise-5.0.5\mongodb-win32-x86_64-enterprise-windows-5.0.5\log\log.txt-auth
执行完命令之后再依次启动mongod.exe、mongo.exe,在mongo.exe中执行以下命令创建数据库和用户:
a.添加管理用户
use admin
db.createUser( {user: "admin",pwd: "admin",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]})
b.添加完管理用户后,关闭MongoDB。
c.在bin文件夹内打开PowerShell(空白处按住shift右键,点击“在此处打开PowerShell窗口”),执行以下命令(注意替换自己的文件位置):
.\mongod.exe --dbpath E:\软件\mongodb-windows-x86_64-enterprise-5.0.5\mongodb-win32-x86_64-enterprise-windows-5.0.5\data --logpath E:\软件
\mongodb-windows-x86_64-enterprise-5.0.5\mongodb-win32-x86_64-enterprise-windows-5.0.5\log\log.txt-auth
d.进入mongo.exe,使用admin用户并验证用户。
> use admin
> db.auth("admin","admin") #认证,返回1表示成功
e.创建数据库,用户。
use mydb
> db.createUser({user: "root",pwd: "123456",roles: [{ role: "readWrite", db: "mydb" }]})
- 新建数据源
打开SuperMap iDesktop(本文以1020版本为例),右键数据源选择新建数据库型数据源,选择MongoDB,新建页面如下,填写服务器名称:本地为localhost(可以填写远程数据库,填写数据库所在ip+端口号,需要开启远程权限),填写数据库名称,用户名称和用户密码为普通数据库用户密码,点击创建。
注意事项
1.非用户验证方式新建数据集不能填写用户名和密码。
2.用户验证方式必须是普通数据库有用户,且用普通数据库的用户名和密码登陆。