作者:yangjunlin
使用过mongodb数据库的小伙伴们都知道,mongodb存储超图缓存是不需要密码的,只需要设置一个用户即可,但部分小伙伴们因为安全问题想用加密模式访问,但是不清楚如何创建,并且想用mongodb库进行多版本缓存管理,具体的使用方式也不太清楚,现在我带着大家,创建一个带有密码的用户,并进行瓦片的多版本存储
【使用加密模式并创建用户和密码】
1.创建超级管理员用户
-
1.1首先非认证启动mongodb
-
1.2切换至admin数据库中,并创建超级管理员用户,权限为userAdminAnyDatabase
2.以认证方式重启数据库,并用管理员身份登录后,再创建普通数据库和用户
- 2.1 用认证方式重启数据库
- 2.2用管理员用户名和密码进行数据库中
- 2.3创建名称为dbtwo的数据库,并创建用户map,附上dbOwner角色同时绑定dbtwo这个库
- 2.4重新再以认证方式启动数据库即可
【多版本缓存管理使用】
现在我们桌面上有两幅2016年的全国pm2.5的发布图,但是想存储到一个库中做多版本缓存管理
Map1
Map2
-
- 首先对Map1进行切图,主要是再存储类型需要选择mongodb多版本,然后填写上上文创建好的数据库和用户密码,瓦片名称改为one,版本名称为1.1
- 首先对Map1进行切图,主要是再存储类型需要选择mongodb多版本,然后填写上上文创建好的数据库和用户密码,瓦片名称改为one,版本名称为1.1
-
- 再对Map2切图输出设置,瓦片名称不变,版本变为1.2,然后进行切图
- 再对Map2切图输出设置,瓦片名称不变,版本变为1.2,然后进行切图
-
- 然后我们用客户端打开我们将瓦片存储的数据库看看存储情况。数据库名称,用户名和密码进行登录
- 然后我们用客户端打开我们将瓦片存储的数据库看看存储情况。数据库名称,用户名和密码进行登录
-
- 直接看meta,可以meta中的只有一条记录,并且tileversions中包含两条信息,及一个为1.1版本另外一个为1.2版本,同时需要记住这两个对应的name,下面的version使用的参数值就是name的值
- 直接看meta,可以meta中的只有一条记录,并且tileversions中包含两条信息,及一个为1.1版本另外一个为1.2版本,同时需要记住这两个对应的name,下面的version使用的参数值就是name的值
-
- iserver发布mongodb瓦片,然后iclient for openlayer 去对接这两个版本的tileversion使用的参数值就是meta库中tileversions name的值
- iserver发布mongodb瓦片,然后iclient for openlayer 去对接这两个版本的tileversion使用的参数值就是meta库中tileversions name的值