准备:下载安装包并解压
unixODBC-2.3.0: http://www.unixodbc.org/
psqlodbc-09.02.0100: http://www.postgresql.org/ftp/odbc/versions/src/
设置编译参数
export CFLAGS="-q64 -DBUILD_REAL_64_BIT_MODE"
export OBJECT_MODE=64
用以下命令解压这三个包
gunzip unixODBC-2.3.0.tar.gz
tar xvf unixODBC-2.3.0.tar
tar zxvf psqlodbc-09.02.0100.tar.gz
问题避免权限的问题,进入安装包的目录,执行下面的命令
chmod 777 *
安装
第一步: 安装unixODBC
./configure --disable-gui
make
sudo make install
安装完成后检查/usr/lcoal/lib 目录。由于unixODBC版本不同,所以文件名可能有差别。
如果目录下没有文件名为libodbc.so.1和libodbcinst.so.1的文件,利用下面命令创建link文件
ln -s libodbc.so.2 libodbc.so.1
ln -s libodbcinst.so.2 libodbcinst.so.1
第二步:安装psqlodbc
在安装包目录执行以下命令
./configure --without-libpq
make
sudo make install
安装完成后查看/usr/local/lib/psqlodbcw.so的Driver文件是否存在
到此为止Driver文件的安装结束。
此时如果我们在/usr/local/etc/odbc.ini 文件下写入正确的DSN配置的话,就可以利用isql访问数据库了。
odbc.ini 例子
[boeuser@LRHEL57x64 etc]$ cat odbc.ini
[ODBC Data Sources]
[postgres]
Description=postgres
Driver=/usr/local/lib/psqlodbcw.so
ServerName=<Postgres SQL server IP>
Port=<Port number>
Database=<Database Name>
使用BO安装用户配置BO
步骤1: 修改.bash_profile 文件
- 将数据库相应driver所在的目录加入到系统变量 【LD_LIBRARY_PATH】中。
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
- 添加ODBCINI和
export ODBCINI=/home4/boeuser/bobje/sap_bobje/enterprise_xi40/odbc.ini
export BOE_USE_32BIT_ENV_FOR=ODBCINI
如果环境变量中没有指定ODBCINI的文件,在安装完之后linux系统会默认使用/usr/local/etc/odbc.ini文件
如果在这个文件中没有写入CMS数据库的ODBC信息,则此时CMS将无法启动。
修改完成.bash_profile后使用source .bash_profile命令使其立即生效
步骤2:修改BO的ODBC.ini文件。
将下面的内容加入到/home4/boeuser/bobje/sap_bobje/enterprise_xi40/odbc.ini文件。
[postgres]
Description=postgres
Driver=/usr/local/lib/psqlodbcw.so
ServerName=<Postgres SQL server IP>
Port=<Port number>
Database=<Database Name>
最后重启SIA。