RedHat5安装ArcGIS Server10.0

环境:ArcGIS Server10 in RedHat5.4/5.5 直连另一台服务器上的SDE for oracle 10.2.0.4 64位或oracle11g R1/R2 64位

注意:

1)ArcGIS Server在linux上对机器名有要求,需要包含完整的域名,因此在安装前需要在/etc/hosts文件里添加:IP地址     机器名.esri.com     机器名

2)SELINUX的问题,需要关闭SELINUX,执行:/usr/sbin/setenforce 0
引用:

When packaging an application on RHEL or CentOS, you may receive the following error:

 

cannot restore segment prot after reloc: Permission denied
This is likely due the the SE Linux setting being set to "enforcing"
.
To Temporarily disable enforcement on a running system

/usr/sbin/setenforce 0
To permanently disable enforcement during a system startup
change "enforcing" to "disabled" in ''/etc/selinux/config'' and reboot.
.
By default, CentOS 5 has the SE Linux feature set to "enforcing". We are looking into ways to removing these steps.

 

1、检查系统的包:
rpm -qa compat-libf2c-34
rpm -qa compat-libstdc++-33
rpm -qa compat-libstdc++-296
rpm -qa compat-openldap
rpm -qa compat-g77
rpm -qa libXp
rpm -qa mesa-libGL
rpm -qa mesa-libGLU
rpm -qa openldap
rpm -qa openssl

缺少的包可以采用以下命令安装:(一般这些包都能在操作系统光盘里找到)

rpm -ivh openldap-2.3.43-12.el5.i386.rpm --replacefiles
rpm -ivh compat-openldap-2.3.43_2.2.29-12.el5.i386.rpm --replacefiles
rpm -ivh compat-g77-3.3.5-42.1.i586.rpm --replacefiles

因为要直连sde for oracle数据库,所以需要在ArcGIS Server所在服务器安装oracle客户端(最好是32位)

具体安装oracle client的过程就不写了,网上有很多详细的安装过程。

2、配置oracle client的net service name,在tnsnames.ora下添加:

ORCL165 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.165)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SID = orcl)
    )
  )

以确保sqlplus sde/sde@orcl165能连上sde数据库。

3、添加arcgis用户,最好跟oracle用户相同的组,以免权限麻烦

useradd -g dba -G oinstall -d /home/arcgis arcgis

passwd arcgis 修改密码为arcgis

编辑.bash_profile环境变量:

export SDEHOME=/home/arcgis/server10.0
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/client_1
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:$SDEHOME/lib
export PATH=$PATH:$ORACLE_HOME/bin:$SDEHOME/bin
export TNS_ADMIN=$ORACLE_HOME/network/admin
export LANG=en_US.UTF8

su - arcgis重新切换让环境变量生效

红色需要注意:LD_LIBRARY_PATH主要用来指向oralce的lib库,如果是安装的32位客户端,直接用lib;如果是64位客户端,则需要使用lib32

确保在arcgis用户下能cd到ORACLE_HOME目录,能查看lib库里的文件。

如果RedHat系统是中文环境的(或64位的),一定要设置LANG=en_US.UTF8,否则在发布连接sde数据源的mxd(无论是服务连接还是直连),都会找不到data frame:

 

操作系统中文环境下LANG=zh_CN.UTF8,所以一定要确认这个环境变量的正确。当然本地文件数据发布是正常的,这个与客户端和oracle数据库字符集有关。

这里找不到data frame,即使不理会过去了,后面启动服务也会直接报错:server object container create failed。

 

 

 

遇到的麻烦就是在起初没设置LANG=en_US.UTF8,这样将直连sde的数据源(或sde服务)放到server机器上后,通过执行Server10.0/java/tools/mappatheditor/startMapPathEditor.sh打开mxd文档,能正常看到地图,表示连接sde库成功,但在发布mxd的时候,change dataframe为空,被折腾了好久,才发现是语言环境设置的问题。但之前在该机器上安装ArcGIS Server9.3.1时不需要设置LANG环境

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值