本文讲述的是怎样在Oracle数据库实例中创建用户模式的地理数据库?(已创建了SDE服务和SDE的主地理数据库)
一、创建用户地理数据库表空间usergdb
create tablespace usergdb datafile'C:\app\Administrator\oradata\usergdb.dbf' size 800M extent management localuniform. size 512K;
二、创建用户地理数据库表空间用户usersde
create user usersde identified by "sde" defaulttablespace USERGDB temporary tablespace temp;
三、赋予usersde权限
grant CREATE SESSION tousersde;
grant CREATE TABLE tousersde;
grant CREATE TRIGGER tousersde;
grant CREATE SEQUENCE tousersde;
grant CREATE PROCEDURE tousersde;
grant CREATE OPERATOR tousersde;
grant CREATE INDEXTYPE tousersde;
grant CREATE LIBRARY tousersde;
grant CREATE PUBLICSYNONYM to usersde;
grant DROP PUBLIC SYNONYMto usersde;
grant CREATE TYPE to usersde;
grant CREATE VIEW tousersde;
grant ADMINISTER DATABASETRIGGER to usersde;
grant DBA to usersde;
四、修改dbtune.sde
备份dbtune.sde,然后修改dbtune.sde的内容,查找到“##DATA_DICTIONARY”,然后修改tablespace后面的空间数据库,修改内容如下,usergdb是用户地理数据库
ATTRIBUTE_BINARY "BLOB"
B_STORAGE "PCTFREE 0 INITRANS 4
# TABLESPACE usergdb
STORAGE (INITIAL 40K)"
B_INDEX_ROWID "PCTFREE 0 INITRANS 4
# TABLESPACE usergdb
STORAGE (INITIAL 40K) NOLOGGING"
B_INDEX_USER "PCTFREE 0 INITRANS 4
# TABLESPACE usergdb
STORAGE (INITIAL 40K) NOLOGGING"
STATES_TABLE "INITRANS 4
# TABLESPACE usergdb
STORAGE (INITIAL 1M)"
STATES_INDEX "INITRANS 5
# TABLESPACE usergdb
STORAGE (INITIAL 128K) NOLOGGING"
STATE_LINEAGES_TABLE "PCTFREE 0 INITRANS 4
# TABLESPACE usergdb
STORAGE (INITIAL 7M)"
STATE_LINEAGES_INDEX "PCTFREE 0 INITRANS 4
# TABLESPACE usergdb
STORAGE (INITIAL 5M) NOLOGGING"
VERSIONS_TABLE "INITRANS4
# TABLESPACE usergdb
STORAGE (INITIAL 256K)"
VERSIONS_INDEX "INITRANS 4
# TABLESPACE usergdb
STORAGE (INITIAL 128K) NOLOGGING"
MVTABLES_MODIFIED_TABLE "INITRANS 4
# TABLESPACE usergdb
STORAGE (INITIAL 2M)"
MVTABLES_MODIFIED_INDEX "INITRANS 4
# TABLESPACE usergdb
STORAGE (INITIAL 2M) NOLOGGING"
XML_INDEX_TAGS_TABLE "INITRANS 4
# TABLESPACE usergdb
STORAGE (INITIAL 1M)"
XML_INDEX_TAGS_INDEX "INITRANS 5
# TABLESPACE usergdb
STORAGE (INITIAL 1M)"
END
五、创建地理数据库Geodatabase
输入命令:sdesetup -o install -d ORACLE11G -i 5151:usersde -u usersde –p sde19810101;此时开始创建GDB
六、创建用户GDB的SDE链接
七、扩展usersde用户的空间
如果新建Feature Class提示超出表空间“usergdb”的空间限额,通过命令select * from user_ts_quotas查看到未分配用户空间,最大空间为0,如下图所示
通过如下命令修改用户空间
alter user usersde quota 400mon usergdb;
commit;
select * from user_ts_quotas;
修改用户空间后如下图所示
八、创建测试的FeatureClass
九、参考文档