成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Ubuntu 系統(tǒng)下安裝ArcSDE 9.1

系統(tǒng) Linux
雖然ESRI的官方文檔如何安裝ArcSDE已經(jīng)很詳細了(英文的),而且網(wǎng)上也有很多參考資料,但是這里還是針對自己的習慣以及針對Ubuntu,用中文做一下說明,只是為了之后自己方便查閱。

雖然ESRI的官方文檔如何安裝ArcSDE已經(jīng)很詳細了(英文的),而且網(wǎng)上也有很多參考資料,但是這里還是針對自己的習慣以及針對ubuntu,用中文做一下說明,只是為了之后自己方便查閱。
1. 安裝環(huán)境
我們安裝的ArcSDE版本是9.1 for Oracle 10gR2,根據(jù)ESRI的官方文檔,針對Oracle 9i的可以直接用來給10g,只不過有一些改動。
1. All references to Oracle9i can be changed to Oracle10gR2.
2. All references to the sdesetupora9i command should be substituted with sdesetupora10g.
3. All references to the sdeservice –o create –d oracle9i,SID command should be substituted with sdeservice –o create –d oracle10g,SID
4. UNIX installations/System Requirements

The ArcSDE 9.1 for Oracle10gR2 release is available on the following UNIX and Linux platforms:
Solaris 64bit
AIX 64bit
Red Hat Linux

2. 安裝前的準備
a. 安裝好Oracle 10g,在ubuntu上安裝Oracle 10g可以參考我的另一篇文檔。
b. 創(chuàng)建并設置好sde用戶。
ArcSDE需要一個名為sde的用戶,這個用戶其他的屬性都不重要,所以我將其所屬的組設置為admin,以便于使用sudo。
官方文檔上說shell應當設置為/bin/sh或者/bin/csh,我這里設置成bash,也可以。
同時,將sde加入oinstall組,是為了使之能運行一些oracle命令,同時使用oracle的一些動態(tài)鏈接庫。
創(chuàng)建用戶
sudo useradd -g admin -G oinstall -d /home/sde -s /bin/bash -m -k /etc/skel sde
設置密碼
sudo passwd sde
輸入你為sde用戶設置的密碼。
然后su sde,登錄sde用戶,或者直接退出當前用戶,用sde用戶登錄。
c. 設置環(huán)境變量。
在.bashrc文件里修改(ubuntu默認.profile文件讀取.bashrc文件,而且.bashrc文件在每次登錄的時候都會讀取),需要設置的環(huán)境變量如下:

SDEHOME #ArcSDE安裝的地方
ORACLE_HOME #Oracle安裝的地方
ORACLE_SID #Oracle SID的值
TNS_ADMIN #tnsnames.ora文件所在的地方
PATH $PATH:$SDEHOME/bin:$ORACLE_HOME/bin
LD_LIBRARY_PATH $SDEHOME/lib:/usr/lib:/lib:$ORACLE_HOME/lib (All platforms except HP and IBM)
SHLIB_PATH $SDEHOME/lib:/usr/lib:/lib:$ORACLE_HOME/lib (for HP only)
LIBPATH $SDEHOME/lib:/usr/lib:/lib:$ORACLE_HOME/lib (for IBM only)
TWO_TASK #value for TWO_TASK (if ArcSDE and Oracle on different machines)


如果Oracle數(shù)據(jù)庫安裝在本地,那么ORACLE_HOME和ORACLE_SID是需要設置并且起作用的,而,如果設置了TWO_TASK,那么它們就不起作用。
TWO_TASK指出在遠程安裝的Oracle的地址。如果在本地安裝的Oracle,那么就不需要指出TNS_ADMIN和TWO_TASK。
注意:ArcSDE啟動的時候,giomgr進程會讀取$SDEHOME/etc/dbinit.sde文件中的設置,這會覆蓋掉在.profile文件中的設置。
我的環(huán)境變量的設置如下:

umask 022
export ORACLE_BASE=/opt/oracle
export SDEHOME=/home/sde/sdeexe91
export ORACLE_HOME=/opt/oracle
export ORACLE_SID=GISexport PATH=$SDEHOME/bin:$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$SDEHOME/lib:/usr/lib:/lib:$LD_LIBRARY_PATH:$ORACLE_HOME/lib/stubs
 

d. 創(chuàng)建Oracle數(shù)據(jù)庫用戶和tablespace。
i. 創(chuàng)建tablespace。
tablespace至少需要200M的空間,我們這里創(chuàng)建成2G,最大是unlimited。
由于Oracle推薦使用本地管理表空間,那么這里就設置成本地管理。關于本地管理和數(shù)據(jù)字典管理的定義和比較,請參閱下面的文檔:

Locally Managed Tablespaces:
A tablespace that manages its own extents maintains a bitmap in each datafile to keep track of the free or used status of blocks in that data file. Each bit in the bitmap corresponds to a block or a group of blocks. When an extent is allocated or freed for reuse, the Oracle server changes the bitmap values to show the new status of the blocks.

Dictionary-Managed Tablespaces:
For a tablespace that uses the data dictionary to manage its extents, the Oracle server updates the appropriate tables in the data dictionary whenever an extent is allocated or deallocated.

Advantages of Locally Managed Tablespaces:
Locally managed tablespaces have the following advantages over dictionary-managed tablespaces:
Local management avoids recursive space management operations, which can occur in dictionary-managed tablespaces if consuming or releasing space in an extent results in another operation that consumes or releases space in a undo segment or data dictionary table.
Because locally managed tablespaces do not record free space in data dictionary tables, it reduces contention on these tables.
Local management of extents automatically tracks adjacent free space, eliminating the need to coalesce free extents.
The sizes of extents that are managed locally can be determined automatically by the system. Alternatively, all extents can have the same size in a locally managed tablespace.
Changes to the extent bitmaps do not generate undo information because they do not update tables in the data dictionary (except for special cases such as tablespace quota information).

 

 

#P#

關于這兩種管理方式性能的比較可以參看http://db.rdxx.com/Oracle/2006-5/18/190634694.shtml
創(chuàng)建tablespace的語句是:

   

 CREATE TABLESPACE sde DATAFILE
'/opt/oradata/GIS/SDE/SDE.dbf' SIZE 2000M
AUTOEXTEND ONNEXT 32M
MAXSIZE UNLIMITED
LOGGING
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M
SEGMENT SPACE MANAGEMENT AUTO;

在做這部之前,需要用oracle用戶登錄,然后在/opt/oradata/GIS/下創(chuàng)建SDE文夾。
其中,EXTENT MANAGEMENT LOCAL是指本地管理方式,UNIFORM 是指對于一個表來說,每次增加分配的空間大小(extent的大小)。
而NEXT是指對于tablespace來說,每次空間不夠的時候再次分配的大小。
這里有一段話,可以表明這兩者的一些區(qū)別:
“每次分配extent時是一個消耗資源的操作,當然是分配次數(shù)越少越好。在有些情況下,這也會直接影響性能。例如,在執(zhí)行批量插入時,如果你的 extent太小,很快就要用完,就得再分配下一個,這時insert進程就只能等待系統(tǒng)去分配下一個extent.在這種情況下分配大一點的 extent會有助于提高性能。另外一點是extent是由連續(xù)的block組成的,extent大的話,數(shù)據(jù)存放會比較集中。這對于順序讀可能有利,但對于隨機讀則不見得有什么好處。并且現(xiàn)在數(shù)據(jù)文件基本上都是放在存儲上,存儲已經(jīng)把空間分散到不同的磁盤上了。即使在oracle看來是連續(xù)的空間,在存儲上實際也可能是分散的。
如果你的表確實很大,那就分配大一些的extent,如果表比較小就分配小一些的extent.”
我的理解是,如果tablespace的空間不足了,那么分配NEXT標明的大小。在tablespace空間足夠的情況下,在往tablespace中的table里插入數(shù)據(jù)的時候,如果一次插入的數(shù)據(jù)大于UNIFORM的值,那么就需要再次分配UNIFORM規(guī)定的大小。
所以,如果每次插入的數(shù)據(jù)量比較大,那么可以考慮UNIFORM的值大一些。

SEGMENT SPACE MANAGEMENT應當設置為AUTO,這個網(wǎng)頁http://www.databasejournal.com/features/oracle/article.php/1576991
闡述了為什么設置成AUTO的好處。
其余參數(shù)可以參看Oracle的說明,這里推薦一個網(wǎng)頁:http://www.psoug.org/reference/tablespaces.html
同時,這里有兩幅Oracle提供的圖,能夠很清楚的看出如何創(chuàng)建和修改tablespace。
創(chuàng)建tablespace:

修改tablespace:

   

 ii. 創(chuàng)建sde用戶。
使用sqlplus,創(chuàng)建的sql語句是:

 CREATE USER sde
IDENTIFIED BY 你的密碼
DEFAULT TABLESPACE sde
TEMPORARY TABLESPACE TEMP;

創(chuàng)建用戶的sql語句很簡單,關于其參數(shù)可以參看這個網(wǎng)頁http://www.psoug.org/reference/user.html

#P#

3. 安裝
a. 下載和解壓
http://support.esri.com/index.cfm?fa=downloads.patchesServicePacks.viewPatch&PID=19&MetaID=1155
下載ArcSDE 9.1 for Oracle10gR2,如果你還想打補丁,那么也在附近的網(wǎng)頁找找,下載相應的補丁文件。
打補丁的方法本文不涉及,非常簡單,稍微看一下就會了。
解壓下載的sde91-ora10gR2-lx.tar.Z文件,由于ubuntu沒有compress命令,所以不能用tar Zxvf xxx.tar.Z解壓。
應當先uncompress sde91-ora10gR2-lx.tar.Z得到sde91-ora10gR2-lx.tar文件
然后再tar xvf sde91-ora10gR2-lx.tar 即可。
貌似也可以用gunzip解壓,請參看其manual查閱解壓參數(shù)。
解壓之后會得到安裝文件以及一些必要的文檔,其實參看這些附帶的文檔就可以很好的完成安裝,不必看我這篇文章。

b. 安裝
進入解壓之后的文件夾
cd linux/oracle10g/
運行
./install -load
如果你的LANG環(huán)境變量不是英語,那么就會出現(xiàn)一個提示,然你看目前顯示的語言是否可以讀(不是亂碼),我的local設置的是zh_CN.UTF-8
所以出來亂碼,我也不知道怎么能讓顯示中文正常,所以就輸入no,用英文顯示。
首先需要同意license,必然是yes。
接下來需要注意的是選擇CD-ROM 掛載點,因為ArcSDE默認為是從光驅安裝的,所以,在這里只要輸入ArcSDE安裝文件所在的位置就可以了。
我的是/home/sde/linux/oracle10g。
接下來輸入要安裝的位置,我的是/home/sde
然后接下來自己看自己需要的選擇,因人而異,我一路回車下來的。
如果在安裝的過程中,想回到上一個選項,那么輸入'^'。
之后在/home/sde下面有sdeexe91文件夾,里面是安裝的文件。

4. Post Installation
也即安裝完成之后到啟動服務之前的配置。
a. 設置SDE的配置文件。
修改/etc/services文件,加入:
esri_sde 5151/tcp # ArcSDE service on pinetree
但是對于ubuntu來說,5151這個端口被占用了,如下:
pcrd 5151/tcp # PCR-1000 Daemon
那么可以修改pcrd的端口,也可以修改sde的端口。在這里,我們修改pcrd的端口號為5152。
sde的服務名稱為esri_sde,也可以改為別的,我們這里就用它。
同時修改$SDEHOME/etc/services.sde,也加入:
esri_sde 5151/tcp # ArcSDE service on pinetree

同時還可以根據(jù)需要修改$SDEHOME/etc下的其他文件。
dbinit.sde #正如前面提到的,這個文件下的參數(shù)會覆蓋掉.profile或者.cshrc文件下的參數(shù)。設置的方法是set (variablename)=(value)
giomgr.defs #這個文件定義了sde服務器如何運行的一些參數(shù),默認的參數(shù)在大部分情況下已經(jīng)夠用了。
#如何設置,請參閱ArcSDE Configuration and Tuning Guide for Oracle(安裝包里附帶的一個pdf文件)。
#在執(zhí)行了sdesetupora10g命令之后,這個文件里的參數(shù)會被讀入數(shù)據(jù)庫,生成一個名為server_config的表。
#如果想要在運行了sdesetupora10g命令之后修改參數(shù),請參閱sdeconfig命令。
dbtune.sde #這個文件定義了數(shù)據(jù)庫中表的物理存儲參數(shù)。同樣參閱ArcSDE Configuration and Tuning Guide for Oracle文檔。
#運行了sdesetupora10g命令之后,這個文件里的參數(shù)會被讀入數(shù)據(jù)庫,生成一個名為dbtune的表。
#如果想要在運行了sdesetupora10g之后修改參數(shù),請參閱sdedbtune命令。
#sdeconfig命令和sdedbtune命令都可以在ArcSDE Administration Command Reference(安裝包里附帶的html和chm文件)中找到詳細說明。

b. 修改數(shù)據(jù)庫執(zhí)行權限。
用sqlplus登錄數(shù)據(jù)庫,運行下面的命令:
grant execute on dbms_pipe to public;
grant execute on dbms_lock to public;

同時還需要修改數(shù)據(jù)庫中sde用戶的權限,需要給它加入下面的權限:

ALTER ANY INDEX
ALTER ANY TABLE
ANALYZE ANY
CREATE ANY INDEX
CREATE ANY PROCEDURE
CREATE ANY SEQUENCE
CREATE ANY TRIGGER
CREATE ANY VIEW
CREATE SESSION
CREATE TABLE
CREATE PROCEDURE
CREATE SEQUENCE
CREATE TRIGGER
DROP ANY INDEX
DROP ANY TABLE
DROP ANY VIEW
DROP ANY PROCEDURE
DROP ANY SEQUENCE
EXECUTE ANY PROCEDURE
SELECT ANY SEQUENCE
SELECT ANY TABLE
UNLIMITED TABLESPACE

具體的命令是:

GRANT ALTER ANY INDEX TO sde ;
GRANT ALTER ANY TABLE TO sde ;
GRANT ANALYZE ANY TO sde ;
GRANT CREATE ANY INDEX TO sde ;
GRANT CREATE ANY PROCEDURE TO sde ;
GRANT CREATE ANY SEQUENCE TO sde ;
GRANT CREATE ANY TRIGGER TO sde ;
GRANT CREATE ANY VIEW TO sde ;
GRANT CREATE SESSION TO sde ;
GRANT CREATE TABLE TO sde ;
GRANT CREATE PROCEDURE TO sde;
GRANT CREATE SEQUENCE TO sde ;
GRANT CREATE TRIGGER TO sde ;
GRANT DROP ANY INDEX TO sde ;
GRANT DROP ANY TABLE TO sde ;
GRANT DROP ANY VIEW TO sde ;
GRANT DROP ANY PROCEDURE TO sde ;
GRANT DROP ANY SEQUENCE TO sde ;
GRANT EXECUTE ANY PROCEDURE TO sde ;
GRANT SELECT ANY SEQUENCE TO sde ;
GRANT SELECT ANY TABLE TO sde ;
GRANT UNLIMITED TABLESPACE TO sde ;
 


在安裝完成之后,為了安全起見,還需要撤銷sde用戶的一些權限,如下:

REVOKE ALTER ANY INDEX FROM sde ;
REVOKE ALTER ANY TABLE FROM sde ;
REVOKE ANALYZE ANY FROM sde ;
REVOKE CREATE ANY INDEX FROM sde ;
REVOKE CREATE ANY TRIGGER FROM sde ;
REVOKE CREATE ANY VIEW FROM sde ;
REVOKE DROP ANY INDEX FROM sde ;
REVOKE DROP ANY TABLE FROM sde ;
REVOKE DROP ANY VIEW FROM sde ;
REVOKE DROP ANY PROCEDURE FROM sde ;
REVOKE DROP ANY SEQUENCE FROM sde ;
REVOKE EXECUTE ANY PROCEDURE FROM sde ;
REVOKE SELECT ANY SEQUENCE FROM sde ;
 


這步做不做都可,對于不同的應用,個人有不同的選擇。

c. 執(zhí)行sdesetupora10g命令。
這個命令的作用是在數(shù)據(jù)庫中生成相應的地理信息數(shù)據(jù)表,以及一些元數(shù)據(jù)表,同時設置ArcSDE存儲的方式等。
要啟動sde服務,這個命令必須執(zhí)行成功。
sdesetupora10g的執(zhí)行參數(shù)是:

-?
-h
-o upgrade [-H (sde_directory)] [-u (DB_Admin_user)] [-p (DB_Admin_password)] [-D (database)] [-s datasource] [-l (key)] [-N] [-q]
-o list [-H (sde_directory)] [-u (DB_Admin_user)] [-p (DB_Admin_password)] [-D (database)] [-s datasource] [-q]
-o install [-H (sde_directory)] [-u (DB_Admin_user)] [-p (DB_Admin_password)] [-D (database)] [-s datasource] [-l (key)] [-N] [-q]
-o update_key -l (key) [-u (DB_Admin_user)] [-p (DB_Admin_password)] [-D (database)] [-H (sde_directory)][-s datasource] [-N] [-q]

我們這里是第一次執(zhí)行,而且是安裝,所以用-o install參數(shù)。-o list參數(shù)列出所安裝的ArcSDE版本。
這個命令的詳細信息可參看ArcSDE Administration Command Reference。

運行命令:
sdesetupora10g -o install -u sde -p 你的密碼

如果最后顯示Successfully installed ArcSde.
那么恭喜你,最重要和最困難的一步完成了。

 

#P#

5. 認證
ArcSDE是收費軟件,那么必然需要一個認證文件來確保你是正確合法的購買的ArcSDE,而且正確的使用。
對于我們中國人來說,對外國的版權費早在清朝的時候已經(jīng)交過了,所以放心的使用“盜版”吧,不過不要讓他們發(fā)現(xiàn)就好。
認證文件是一個.ecp文件,要用sdesetupora10g命令的-o update_key參數(shù)來注冊。
其實也可以在上面安裝的一步,-o install的時候,附加上-l參數(shù)來注冊。
命令是:
sdesetupora10g -o update_key -l 你的.ecp文件 -u sde -p 你的密碼

6. 啟動ArcSDE服務
命令sdemon -o start
會讓你輸入
Please enter ArcSDE DBA password:
輸入相應密碼。
如果顯示:
ArcSDE Instance esri_sde started Mon Jul 14 21:53:54 2008
而且sdemon -o status
顯示的是Accepting Connections
那么恭喜你,服務已經(jīng)啟動了。
如果要設置隨著機器自動啟動,那么創(chuàng)建sde.sh文件,加入下面的內(nèi)容:

#!/bin/sh
#
SDEHOME=/home/sde/sdeexe91
SDE_OWNR=sde
ORACLE_HOME=/opt/oracle
#
#
if [ ! -d $SDEHOME ] || [ ! -f $SDEHOME/bin/sdemon ]
then
echo "ArcSDE startup: cannot start"
exit 1
fi
#

case "$1" in
start)
#ArcSDE startup
echo -n "Starting ArcSDE: "
su $SDE_OWNR -c "export ORACLE_BASE=/opt/oracle &&
export SDEHOME=/home/sde/sdeexe91 &&
export ORACLE_HOME=/opt/oracle &&
export ORACLE_SID=GIS &&
export PATH=$SDEHOME/bin:$ORACLE_HOME/bin:$PATH &&
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$SDEHOME/lib:/usr/lib:/lib:$LD_LIBRARY_PATH:$ORACLE_HOME/lib/stubs &&
$SDEHOME/bin/sdemon -o start -p gis123"
touch /var/lock/sde
echo "OK, Started"
;;
stop)
#ArcSDE shutdown
echo -n "Shutdown ArcSDE: "
su $SDE_OWNR -c "export ORACLE_BASE=/opt/oracle &&
export SDEHOME=/home/sde/sdeexe91 &&
export ORACLE_HOME=/opt/oracle &&
export ORACLE_SID=GIS &&
export PATH=$SDEHOME/bin:$ORACLE_HOME/bin:$PATH &&
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$SDEHOME/lib:/usr/lib:/lib:$LD_LIBRARY_PATH:$ORACLE_HOME/lib/stubs &&
$SDEHOME/bin/sdemon -o shutdown -p gis123"
rm -f /var/lock/sde
echo "OK, Stopped"
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 start|stop|restart"
exit 1
;;
esac
exit 0
 


然后:
chmod 755 sde.sh
sudo cp sde.sh /etc/init.d/
sudo update-rc.d sde.sh defaults 99
就可以了。

7. 卸載
卸載ArcSDE很簡單。
首先停止服務:
sdemon -o shutdown
然后刪除$SDEHOME文件夾:
rm -R $SDEHOME
最后刪除掉/etc/services里相應的服務項,就可以了。

8. 其他
這里稍微提一下升級的事情,也就是打補丁的事情。
ESRI官方網(wǎng)站上到目前提供的是ArcSDE9.2的補丁,那么去下載了,然后參照網(wǎng)站上的說明做,就可以了。
這里需要注意的是,如果升級,那么還需要給sde添加前面提到的權限才可以。

 

【編輯推薦】

  1. Ubuntu Linux開始支持SELinux技術
  2. Ubuntu開發(fā)者峰會在布拉格舉行
  3. Ubuntu多社區(qū)服務器關閉 Ubuntu否認安全問題
責任編輯:張燕妮 來源: 中國IT實驗室
相關推薦

2010-06-04 18:04:26

MySQL安裝

2009-01-03 11:32:15

VistaUbuntuLinux

2011-02-25 14:35:06

ubuntuproftp安裝

2011-03-14 13:07:23

Ubuntu安裝LAMP

2011-01-18 18:21:44

Ubuntu安裝Thunderbird

2011-03-03 09:04:25

2011-03-03 14:47:35

2011-03-03 14:47:35

2009-06-15 09:01:19

安裝Jboss

2016-01-04 13:52:12

UbuntuSwift安裝

2011-03-10 08:59:04

Ubuntu安裝LAMP

2011-07-14 13:28:24

2011-03-03 11:06:44

Ubuntu安裝ProFTPD

2011-02-21 17:17:05

UbuntuZimbra安裝

2011-02-21 16:00:41

UbuntuGFTP安裝

2011-03-02 09:31:13

2011-03-02 09:31:13

2011-09-05 13:19:42

UbuntuWebmin

2009-12-31 17:16:42

2010-06-01 10:26:49

MySQL安裝
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲三区在线观看 | 天天操夜夜艹 | 中文字幕日韩欧美一区二区三区 | 天天艹天天干天天 | 中文字幕国 | .国产精品成人自产拍在线观看6 | 国产精品日韩 | 中文字幕动漫成人 | 国产偷自视频区视频 | 在线免费观看视频你懂的 | 国产精品久久 | 成人三级视频在线观看 | 日韩精品免费一区 | 久久国产精品一区二区三区 | 精品国产乱码久久久久久88av | 美女逼网站 | 一区二区高清 | 亚洲性人人天天夜夜摸 | 99视频| 国产精品免费观看 | 久久久九九九九 | 毛片在线免费播放 | 电影午夜精品一区二区三区 | 免费午夜视频 | 亚洲国产成人在线视频 | 欧美国产精品 | 国产精品免费在线 | 另类视频在线 | 国产伦一区二区三区 | 无人区国产成人久久三区 | 中文字幕第7页 | 欧美在线日韩 | av网站免费观看 | 国产精品色| 在线观看成年视频 | 成年人在线观看 | 久久精品国产一区 | 日韩精品一区二区三区中文在线 | 久久一区二区精品 | 精品福利视频一区二区三区 | 精品伊人 |