Documentation sur le logiciel SYMPA

Ceci est une ancienne révision du document !


Acacia : client oracle pour sympa

Packages système requis pour redhat

<columns>

binutils-2.15.92.0.2
compat-libstdc++-33-3.2.3
elfutils-libelf-0.97
elfutils-libelf-devel-0.97
expat-1.95.7
gcc-3.4.6
gcc-c++-3.4.6 ???
glibc-2.3.4-2.41
glibc-2.3.4-2.41 (32 bit)
glibc-common-2.3.4
glibc-devel-2.3.4

<newcolumn>

libaio-0.3.105
libaio-0.3.105 (32 bit)
libaio-devel-0.3.105
libgcc-3.4.6
libgcc-3.4.6 (32-bit)
libstdc++-3.4.6
libstdc++-3.4.6 (32 bit)
libstdc++-devel 3.4.6
make-3.80
sysstat-5.0.5

</columns>

# yum install unixODBC-devel  pour perl DBD::ODBC
# yum install kmod-oracleasm  ?? 
# 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 [login]/[mot de passe]@[Base]

Packages perl

Il faut les packages perl suivants (30/03/2015)

# perl -MCPAN -e shell

  • CPAN (maj)
  • DBD::Oracle
  • DBD::ODBC
  • Exporter ???