ArcGIS10.5.1通過SDE直連Oracle 12c——建立企業級地理資料庫
最近安裝部署ArcGIS 10.5連線Oracle 12c,記錄一下相關步驟和注意事項。
ESRI 參考官方檔案
一、部署環境
Windows Sever 2012R2
ArcMap 10.5.1 和 ArcGIS Server 10.5.1
Oracle 12c
二、目標
1.通過ArcMap 可以連線Oracle,把空間資料儲存在oracle(SDE)中,以便對空間資料進行管理;
2.把Oracle的空間資料庫(即SDE)註冊到ArcGIS Server,以便把SDE空間資料在ArcGIS Server進行釋出;
3.配置Oracle具備空間SQL能力。
三、簡要流程
1.安裝Oracle 12c,建立表空間(給SDE使用者專用),建立SDE使用者(使用者名稱一定是SDE)並授權。
2.在安裝了ArcMap的計算機上安裝Oracle 12c 32位客戶端(因為ArcGIS Desktop是32位的),配置環境變數,確保能夠客戶端能夠連線到Oracle資料庫。ArcGIS Desktop其實是通過Oracle 的客戶端來連線Oracle的。注意:配置好後,要重啟Desktop。
3.在安裝了ArcGIS Server的伺服器上安裝Oracle 12c 64位客戶端(因為Server是64位的),如果同時也安裝Oracle 12c 32位客戶端(一般這裡也安裝了Desktop),配置環境變數:64位的環境變數放在32位的前面。
配置完畢,重啟ArcGIS Server服務。
4.ArcMap中,ArcCatalog中選擇工具箱,建立企業地理資料庫,填寫SDE相關的資訊,並提供授權檔案。在ArcCatalog中建立資料庫直接方式,輸入相關資訊,登陸到SDE資料庫。
5.在ArcGIS Server中(可以在ArcCatalog建立Server連線,最好在伺服器的Desktop上操作),在伺服器屬性中新增資料儲存,把SDE註冊到ArcGIS Server。
四、流程截圖:
1.在ArcMap中建立企業資料庫
2.輸入SDE相關資訊
3.連線SDE
4.ArcGIS Server連線SDE和註冊
5.新增資料儲存
6.填寫SDE相關資訊,完成註冊
五、Oracle 12C部署的相關注意事項
Oracle 12C 建設完畢,預設是CDB,在該資料庫下面,新建使用者必須以C##開頭命名;所以,需要從CDB切換到PDB,再開始SDE的各種建設工作。因為SDE使用者一定要命名為"SDE"
最好是重新建設一個資料庫,不選擇預設的CDB,那麼資料庫就是PDB,這樣才能建立SDE使用者。
1.建立表空間
CREATE TABLESPACE sdetablespace DATAFILE
'E:\app\orcl\SDEDATA01.DBF'
SIZE 500M
AUTOEXTEND ON NEXT 100M
MAXSIZE UNLIMITED
LOGGING
EXTENT MANAGEMENT LOCAL AUTOALLOCATE
BLOCKSIZE 8K
SEGMENT SPACE MANAGEMENT AUTO
FLASHBACK ON;
2.建立SDE使用者並授權
--首先建立SDE使用者:
CREATE USER SDE IDENTIFIED BY *******
DEFAULT TABLESPACE "SDETABLESPACE"
TEMPORARY TABLESPACE "TEMP"
QUOTA UNLIMITED ON "SDETABLESPACE";
3.--必須為公共角色授予對這些包的執行許可權
GRANT EXECUTE ON dbms_pipe TO public;
GRANT EXECUTE ON dbms_lock TO public;
GRANT EXECUTE ON dbms_lob TO public;
GRANT EXECUTE ON dbms_utility TO public;
GRANT EXECUTE ON dbms_sql TO public;
GRANT EXECUTE ON utl_raw TO public;
GRANT EXECUTE ON dbms_crypto to sde;
----說明:建立或升級地理資料庫後,您可以限制這些包的許可權,
方法是:將這些執行許可權從公共角色中撤消,然後為登入地理資料庫的每個單獨的使用者(包括地理資料庫管理員)授予這些執行許可權。
再向各使用者授予執行許可權後,重新編譯 sde 方案:
EXEC dbms_utility.compile_schema( 'SDE' );
4.--賦予SDE管理許可權
GRANT CREATE SESSION,
CREATE TABLE,
CREATE VIEW,
CREATE PROCEDURE,
CREATE SEQUENCE,
CREATE TRIGGER,
CREATE TYPE,
CREATE INDEXTYPE,
CREATE LIBRARY,
CREATE PUBLIC SYNONYM,
DROP PUBLIC SYNONYM,
ADMINISTER DATABASE TRIGGER,
CREATE OPERATOR
TO SDE;
---說明:一般來說,上述兩個步驟都是資料庫管理員來操作,業務端只需要提交說明即可,
需要說明的是Oracle中建立SDE空間資料庫,必須要建立以SDE為名的資料庫使用者。
六、錯誤資訊
建立完畢,在ArcMap處理結果中,有以下錯誤資訊:
ST_Geometry 形狀庫路徑可能無效,或者未在 Oracle 例項中正確配置 EXTPROC。
[ (Unable to determine current version of ST_SHAPELIB.
Please check the ST_Geometry shape library path on the Oracle server,
which is set to "c:\progra~2\arcgis\desktop10.5\DatabaseSupport\Oracle\Windows64\st_shapelib.dll".
Refer to the ArcGIS help topics for more details.
需要在Oracle 例項中正確配置 EXTPROC,請看這篇檔案:
相關文章
- ArcGIs建立企業級資料庫資料庫
- Oracle 12c系列(九) | 通過unplug與plug方式升級pdb資料庫Oracle資料庫
- mysql--通過cmd連線mysql,並建立資料庫MySql資料庫
- 2.3 通過DBCA建立資料庫資料庫
- Oracle 12c資料庫升級實戰Oracle資料庫
- 通過 oracle 12c ocp 升級考試Oracle
- java通過jdbc連結資料庫JavaJDBC資料庫
- 通過命令列連線oracle資料庫/進入sql plus命令列Oracle資料庫SQL
- 企業級地理資料庫(3)為不同需求的使用者設定許可權資料庫
- 通過現有的資料庫備份建立新的資料庫資料庫
- 十大企業級資料庫資料庫
- Oracle XE的資料庫建立過程Oracle資料庫
- 手工建立oracle資料庫的過程Oracle資料庫
- 【轉載】SAP 通過http協議 介面做銀企直連HTTP協議
- 企業級雲資料庫最佳實踐資料庫
- 1.3.3. 通過SQL*Plus 連線資料庫SQL資料庫
- 通過cmd命令列連線mysql資料庫命令列MySql資料庫
- Qt中通過ODBC連線MSSQL資料庫QTSQL資料庫
- 通過RMAN Duplicate建立Oracle物理standby備庫Oracle
- 通過Java程式測試資料庫連線資訊Java資料庫
- 通過連線檢視資料庫相關資訊資料庫
- Oracle 11g RAC通過SCAN IP連線資料庫 - JDBC連線串問題Oracle資料庫JDBC
- Oracle 12c 新特性之 PDB 級別閃回資料庫Oracle資料庫
- 資料庫不能直連怎麼造資料呢資料庫
- 資料庫連線不能建立.資料庫
- 【SQL】Oracle資料庫通過job定期重建同步表資料SQLOracle資料庫
- 【資料庫升級】Oracle指令碼升級12c CDB to 19c CDB資料庫Oracle指令碼
- Oracle 12c資料庫安裝Oracle資料庫
- C#連線Oracle資料庫,通過EF自動生成與資料庫表相關的實體類C#Oracle資料庫
- Oracle 手工建立資料庫Oracle資料庫
- 建立oracle資料庫(1)Oracle資料庫
- 手工建立oracle資料庫Oracle資料庫
- Oracle Standby資料庫建立Oracle資料庫
- 使用NineData定製企業級資料庫規範資料庫
- Java的JDBC通過SSH Tunnel連線MySQL資料庫JavaJDBCMySql資料庫
- 通過觸發器記錄資料庫連線資訊觸發器資料庫
- 在Linux中通過本地複製的方式建立多一個Oracle資料庫LinuxOracle資料庫
- ORACLE角色(通過DBA建立)Oracle