catalog连接数据库与sde权限问题
2021/9/17 19:06:56
本文主要是介绍catalog连接数据库与sde权限问题,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1、在catalog中sde连接上空间数据库后,能看到很多其他用户的数据
问题在于建立SDE用户的时候赋予了DBA角色和GRANT SELECT ANY TABLE TO "SDE" WITH ADMIN OPTION;,如果把这两项权限撤销,则不会出现以上的问题.
revoke SELECT ANY TABLE from sde;
revoke dba from sde;
查看SDE用户的权限:
select privilege from dba_sys_privs where grantee='SDE'
union
select privilege from dba_sys_privs where grantee in (select granted_role from dba_role_privs where grantee='SDE' );
ESRI的工程师安装以后,只有如下15个权限:
1 ADMINISTER DATABASE TRIGGER
2 CREATE CLUSTER
3 CREATE INDEXTYPE
4 CREATE LIBRARY
5 CREATE OPERATOR
6 CREATE PROCEDURE
7 CREATE PUBLIC SYNONYM
8 CREATE SEQUENCE
9 CREATE SESSION
10 CREATE TABLE
11 CREATE TRIGGER
12 CREATE TYPE
13 CREATE VIEW
14 DROP PUBLIC SYNONYM
15 UNLIMITED TABLESPACE
而一般我们自己安装的时候,则权限多了不少。执行一下revoke SELECT ANY TABLE from sde就OK了。
2、修改SDE权限造成无法在ArcMap中绘制图形的解决办法
默认情况下,SDE管理用户的权限是非常大的,所以经常我们会修改SDE用户权限,但因此也会造成一些图形绘制问题,在些进行介绍。
出错类型:
SDE.cq: 基础 DBMS 错误 [ORA-29900: 运算符连接不存在
ORA-06540: PL/SQL: 编译错误
ORA-06553: PLS-907: 无法加载库单元 SDE.ST_DOMAIN_OPERATORS (由 SDE.ST_ENVINTERSECTS 引用)
如下图所示:
产生原因:
SDE用户在升级数据库后,权限被注销,如:SELECT ANY TABLE权限被取消
Oracle能够自动标记某些软件包,功能,和触发器无效的基于数据库对象性质的自动验证,但ST_GEOMETRY是基于这些非法对象无法编译因而产生绘制错误。
解决办法:
这个问题可以通过重新编译数据包,解决触发,并标记为无效的功能。这可以通过以下SQL命令以SYSDBA用户,重复为每个用户模式数据库执行相同的步骤。
Exec dbms_utility.compile_schema( 'SDE', compile_all => FALSE );
这篇关于catalog连接数据库与sde权限问题的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-22怎么通过控制台去看我的页面渲染的内容在哪个文件中呢-icode9专业技术文章分享
- 2024-12-22el-tabs 组件只被引用了一次,但有时会渲染两次是什么原因?-icode9专业技术文章分享
- 2024-12-22wordpress有哪些好的安全插件?-icode9专业技术文章分享
- 2024-12-22wordpress如何查看系统有哪些cron任务?-icode9专业技术文章分享
- 2024-12-21Svg Sprite Icon教程:轻松入门与应用指南
- 2024-12-20Excel数据导出实战:新手必学的简单教程
- 2024-12-20RBAC的权限实战:新手入门教程
- 2024-12-20Svg Sprite Icon实战:从入门到上手的全面指南
- 2024-12-20LCD1602显示模块详解
- 2024-12-20利用Gemini构建处理各种PDF文档的Document AI管道