Ceci est une ancienne révision du document !
Table des matières
Acacia : client oracle pour sympa
Installation et prérequis : http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
http://www.sympa.org/faq/database#errors_when_trying_to_load_dbdoracle
Packages système requis pour redhat
<columns>
| binutils-2.15.92.0.2 | déjà installé |
| compat-libstdc++-33-3.2.3 | à installer |
| elfutils-libelf-0.97 | déjà installé |
| elfutils-libelf-devel-0.97 | à installer |
| expat-1.95.7 | déjà installé |
| gcc-3.4.6 | déjà installé |
| gcc-c++-3.4.6 | à installer ?? |
| glibc-2.3.4-2.41 | déjà installé |
| glibc-2.3.4-2.41 (32 bit) | déjà installé |
| glibc-common-2.3.4 | déjà installé |
| glibc-devel-2.3.4 | déjà installé |
<newcolumn>
| libaio-0.3.105 | déjà installé |
| libaio-0.3.105 (32 bit) | déjà installé |
| libaio-devel-0.3.105 | à installer |
| libgcc-3.4.6 | déjà installé |
| libgcc-3.4.6 (32-bit) | déjà installé |
| libstdc++-3.4.6 | déjà installé |
| libstdc++-3.4.6 (32 bit) | déjà installé |
| libstdc++-devel 3.4.6 | à installer |
| make-3.80 | déjà installé |
| sysstat-5.0.5 | déjà installé |
</columns>
# yum install compat-libstdc++ elfutils-libelf-devel libaio-devel libstdc++-devel
# yum install kmod-oracleasm # yum install unixODBC-devel pour perl DBD::ODBC # yum install oracleasm-debuginfo
Installation client oracle
Documentation : http://www.xenialab.it/meo/web/white/oracle/HT_IC_RH.htm
Télécharger les packages oracle sous /usr/local/INSTALL/APPLI/ORACLE
sur http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
# cd /usr/local/INSTALL/APPLI/ORACLE # rpm -ilv oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm # rpm -ilv oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm # rpm -ilv oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm (pour DBD::Oracle)
# unzip instantclient-sdk-linux.x64-12.1.0.1.0.zip # cp -rp /usr/local/INSTALL/APPLI/ORACLE/instantclient_12_1/sdk rdbms (à vérifier si nécessaire)
Configuration du client oracle
Utilisateur et groupe oracle
# groupadd -g 505 dba # useradd -u 505 -d /usr/lib/oracle/11.2/client -g "dba" oracle # usermod -a -G dba sympa
Remplacement de client64 en client
# cd /usr/lib/oracle/11.2 # cp -rp client64/* client # chown -R oracle:dba client # chmod 770 client # cd /usr/lib/oracle/11.2/client/lib # ln -s libocci.so.11.1 libocci.so # ln -s libclntsh.so.11.1 libclntsh.so # cd /usr/share/oracle/11.2 # mv client64 client # chown -R oracle:dba client # cd /usr/include/oracle/11.2 # ln -s client64 client
Mise à jour variable environnement
# vi /etc/profile.d/oracle.sh
TNS_ADMIN=/usr/lib/oracle/11.2/client
ORACLE_HOME=/usr/lib/oracle/11.2/client
if [ -z $LD_LIBRARY_PATH ]; then
LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client/lib
else
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/oracle/11.2/client/lib
fi
export TNS_ADMIN ORACLE_HOME LD_LIBRARY_PATH
Bug sympa avec oracle
err SQLSource::connect() No Database Driver installed for Oracle ; you should download and install DBD::Oracle from CPAN
Apr 1 09:43:28 acacia wwsympa[1999]: err List::_load_users_include2() Inclusion include_sql_query failed in list
http://www.sympa.org/faq/database#errors_when_trying_to_load_dbdoracle
Ajouter dans /etc/bashrc
if [ -f /etc/profile.d/oracle.sh ];then . /etc/profile.d/oracle.sh fi
# vi /etc/ld.so.conf.d/oracle.conf
/usr/lib/oracle/11.2/client/lib
# su - sympa
# vi .bash_profile
PATH=$PATH:$HOME/bin:/usr/lib/oracle/11.2/client/bin ORACLE_HOME=/usr/lib/oracle/11.2/client TNS_ADMIN=/usr/lib/oracle/11.2/client LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client/lib export PATH ORACLE_HOME TNS_ADMIN LD_LIBRARY_PATH
# reboot
Fichier de connexion tnsnames.ora
# cd /usr/lib/oracle/11.2/client/
# vi tnsnames.ora
# chown oracle:dba tnsnames.ora
Test de connexion
/* /usr/lib/oracle/11.2/client/bin/sqlplus HLC_CONS_MAIL/11491931A@HCINPG */
Packages perl
Il faut les packages perl suivants (30/03/2015)
# perl -MCPAN -e shell
- CPAN (maj)
- DBD::Oracle
- DBD::ODBC
- Exporter ???
