Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 30/05/2007, à 10:05

fredr

Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

Hello,

Je viens d'installer le serveur Oracle-xe et le client oracle-xe-client sur une feisty et voici un petit résumé des étapes:

1 - les prérequis : installer apache2 et php5.

2 - installer oracle, pas de difficulté, les paquets existent en .deb sur oracle.
                   
      a) ajouter le site oracle au sources.list:

sudo sh -c 'echo "# Dépôts Oracle pour debian unstable
deb http://oss.oracle.com/debian unstable main non-free" \
     >> /etc/apt/sources.list'

b)ajouter le cle:

wget http://oss.oracle.com/el4/RPM-GPG-KEY-oracle  -O- | sudo apt-key add -

c)mettre à jour les paquets:

sudo apt-get update

d)installer les paquets oracles nécessaires:

sudo apt-get install libaio oracle-xe oracle-xe-client

Ceci vous a installé le serveur oracle et le client.

3 - parametrer le serveur:

sudo /etc/init.d/oracle-xe configure

Perso, à part le mot de passe je n'ai modifié aucune option.

4 - tester le serveur:

http://127.0.0.1:8080/apex/ vous donne accès à votre serveur oracle 10g, le nom est "system" et le mot de passe celui que vous avez encodé précédement.

5 - Le gros morceau: l'installation de php5_oci8 pour pouvoir utiliser votre serveur apache2 php5 avec votre base de données oracle.

Si vous regardez sur le site de oracle: http://www.oracle.com/technology/tech/p … linux.html ils vous parlent d'une compilation de php. Pas de panique, en me bassant sur le site http://howto.landure.fr/gnu-linux/ubunt … drake/view
j'ai créé le paquet deb pour feisty. Il est disponible ici:

Le paquet feisty php5_oci8 : http://users.skynet.be/bk306081/php5-oc … 2_i386.deb

Vous pouvez l'installer avec:

sudo dpkg -i php5-oci8_5.2.1-0ubuntu1.2_i386.deb

6 - il reste à paramètrer apache2 en modifiant le fichier /etc/apache2/envvars:

echo /usr/lib/oracle/xe/app/oracle/product/*/client | \
xargs -iCLIENT sudo sh -c "echo 'export ORACLE_HOME=CLIENT
export LD_LIBRARY_PATH=\$ORACLE_HOME/lib:\$LD_LIBRARY_PATH
export TNS_ADMIN=/etc/oracle
export NLS_LANG=AMERICAN_AMERICA.UTF8' \
    >> /etc/apache2/envvars"

Vous pouvez adapter la NLS_LANG à votre besoin.

7 - Dans les fichiers /etc/php5/apache2/php.ini et /etc/php5/cli/php.ini j'ai aussi décommenté les lignes donnant les options de OCI, mais je ne sais pas si c'était obligatoire vu que ce sont les options par défaut.

[OCI8]
; enables privileged connections using external credentials (OCI_SYSOPER, OCI_SYSDBA)
oci8.privileged_connect = Off

; Connection: The maximum number of persistent OCI8 connections per
; process. Using -1 means no limit.
oci8.max_persistent = -1

; Connection: The maximum number of seconds a process is allowed to
; maintain an idle persistent connection. Using -1 means idle
; persistent connections will be maintained forever.
oci8.persistent_timeout = -1

; Connection: The number of seconds that must pass before issuing a
; ping during oci_pconnect() to check the connection validity. When
; set to 0, each oci_pconnect() will cause a ping. Using -1 disables
; pings completely.
oci8.ping_interval = 60

; Tuning: This option enables statement caching, and specifies how
; many statements to cache. Using 0 disables statement caching.
oci8.statement_cache_size = 20

; Tuning: Enables statement prefetching and sets the default number of
; rows that will be fetched automatically after statement execution.
oci8.default_prefetch = 10

; Compatibility. Using On means oci_close() will not close
; oci_connect() and oci_new_connect() connections.
oci8.old_oci_close_semantics = Off

9 - Après redémarrage on va pouvoir tester tout cela.

    a - Créer un fichier phpinfo.php dans votre www contenant :

<?php
  phpinfo();
?>

L'adresse http://127.0.0.1/phpinfo.php vous retourne la config de php5 et vous devez y trouver une section oci8

    b - à l'adresse http://127.0.0.1:8080/apex allez dans la gestion des utilisateurs et activez l'utilisateur hr, n'oubliez pas de lui mettre un mot de passe.

   c - ensuite créez le fichier essai.php dans www (mettre votre mot de passe hr):

<?php
  $conn = oci_connect('hr', 'motdepasse', '//localhost/XE');

  $stid = oci_parse($conn, 'select city from locations');
  oci_execute($stid);

  print '<table border="1">';
  while ($row = oci_fetch_array($stid, OCI_RETURN_NULLS)) {
    print '<tr>';
    foreach ($row as $item) {
      print '<td>'.($item?htmlentities($item):' ').'</td>';
    }
    print '</tr>';
  }
  print '</table>';
?>

L'adresse http://127.0.0.1/essai.php vous donne comme résultat un tableau de capitale.

Voila c'est tout, vous avez un serveur oracle et son client en ordre.

FredR

Un grand merci au site: http://howto.landure.fr/gnu-linux/ubunt … drake/view
Attention si vous modifier /etc/environnement comme il l'indique, le serveur oracle-xe ne démarre plus.


ArcoLinuxD Awesome
L'optimiste pense que nous vivons dans le meilleur des mondes. Et le pessimiste craint que ce ne soit exact.

Hors ligne

#2 Le 30/05/2007, à 17:06

fredr

Re : Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

Ajout:

Pour pouvoir utiliser sqlplus:

1 - Ajouter les lignes suivantes a votre .bashrc

PATH=$PATH:/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin

ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib
TNS_ADMIN=/etc/oracle
ORACLE_SID="XE"
export ORACLE_SID
export ORACLE_HOME
export LD_LIBRARY_PATH
export TNS_ADMIN

2 - copier le fichier tnsnames.ora à sa place:

sudo mkdir /etc/oracle
sudo cp /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/network/admin/tnsnames.ora /etc/oracle

3 - changer les droits du fichier oracle:

sudo chmod 6751 /usr/lib/oracle/xe/app/oracle/product/server/bin/oracle

Dernière modification par fredr (Le 30/05/2007, à 17:12)


ArcoLinuxD Awesome
L'optimiste pense que nous vivons dans le meilleur des mondes. Et le pessimiste craint que ce ne soit exact.

Hors ligne

#3 Le 04/11/2008, à 01:08

zedtux

Re : Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

Grand merci à toi ! cool


RECOLLER VOS FICHIERS XTM AVEC TUXTREMSPLIT !!
Adhérant April numéro 4985 [Rejoindre l'April moi aussi !].

Hors ligne

#4 Le 04/11/2008, à 09:39

fredr

Re : Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

Salut,

Un vieux tuto qui ressort; je pense que tout est toujours valable pour hardy et intrepid. Sauf bien sur le paquet php_oci8 pour l'intégration à apache.

Fred


ArcoLinuxD Awesome
L'optimiste pense que nous vivons dans le meilleur des mondes. Et le pessimiste craint que ce ne soit exact.

Hors ligne

#5 Le 05/11/2008, à 12:13

KzR

Re : Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

Merci pour ce tuto, très très utile en tout cas.

Juste une question, existe-t-il un dépôt pour la dernière version commerciale ? Dans le lien que tu donnes : http://oss.oracle.com/debian/dists/unstable/non-free/binary-i386/ il n'y a que la version Express ^^

Je voudrais m'entraîner a l'install sur une Ubuntu Server 8.10 ^^


La fleur parfaite est chose rare, On pourrait passer sa vie à en chercher une, Et ce ne serait pas une vie gâchée.
On meurt chaque seconde, Reconnaitre la vie dans chaque soupir, Chaque tasse de thé, chaque vie que l'on prends, La voie du Guerrier, c'est le Bushido !

Hors ligne

#6 Le 05/11/2008, à 14:26

fredr

Re : Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

Pour la version full, il faut la télécharger chez oracle, mais pour cela il faut être inscrit comme client, je ne connait pas d'autre moyen.

Fred


ArcoLinuxD Awesome
L'optimiste pense que nous vivons dans le meilleur des mondes. Et le pessimiste craint que ce ne soit exact.

Hors ligne

#7 Le 05/11/2008, à 15:08

zedtux

Re : Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

Moi je n'ai jamais réussi ( pas non plus énormément cherché ) à compiler PHP avec oracle.

Je suis passé par Xampp pour aller plus vite. big_smile


RECOLLER VOS FICHIERS XTM AVEC TUXTREMSPLIT !!
Adhérant April numéro 4985 [Rejoindre l'April moi aussi !].

Hors ligne

#8 Le 05/11/2008, à 18:28

sylvain1970

Re : Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

Bonjour,
j'ai posé la question sur un autre sujet, mais est-il possible d'installer oracle sur une architecture 64 bits ?
Merci.

Hors ligne

#9 Le 05/11/2008, à 23:11

zedtux

Re : Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

sylvain1970 a écrit :

Bonjour,
j'ai posé la question sur un autre sujet, mais est-il possible d'installer oracle sur une architecture 64 bits ?
Merci.

Hors sujet ! mad


RECOLLER VOS FICHIERS XTM AVEC TUXTREMSPLIT !!
Adhérant April numéro 4985 [Rejoindre l'April moi aussi !].

Hors ligne

#10 Le 05/11/2008, à 23:15

slasher_fun

Re : Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

Un peu de calme zedtux roll

sylvain1970, squatter le topic des autres ne se fait pas hmm

Hors ligne

#11 Le 06/11/2008, à 00:03

sylvain1970

Re : Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

désolé sad
veuillez ne pas tenir compte de ma question.

Hors ligne

#12 Le 06/11/2008, à 12:46

fredr

Re : Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

@sylvain1970, il n'y a pas de version xpress en 64b chez oracle, mais les versions full existent bien en 64b.

fin du /HS


ArcoLinuxD Awesome
L'optimiste pense que nous vivons dans le meilleur des mondes. Et le pessimiste craint que ce ne soit exact.

Hors ligne

#13 Le 06/11/2008, à 17:32

zedtux

Re : Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

slasher-fun a écrit :

Un peu de calme zedtux roll

sylvain1970, squatter le topic des autres ne se fait pas hmm

Sans vouloir faire du HS aussi .. je suis calme, mais c'est juste que le titre contient "[Tuto]"... donc ..


RECOLLER VOS FICHIERS XTM AVEC TUXTREMSPLIT !!
Adhérant April numéro 4985 [Rejoindre l'April moi aussi !].

Hors ligne

#14 Le 08/11/2008, à 00:00

sylvain1970

Re : Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

Bonsoir,
j'ai suivi le tuto avec une variante pour installer sur une architecture 64 bit, à savoir :
installation des paquets avec

sudo dpkg -i --force-architecture oracle-xe_10.2.0.1-1.1_i386.deb
sudo dpkg -i --force-architecture oracle-xe-client_10.2.0.1-1.2_i386.deb

paquets récupérés sur le site : http://oss.oracle.com/debian/dists/unst … nary-i386/
Cà fonctionne.
Voilà, une bonne intrusion (j'espère). wink


[EDIT]
ben non, çà fonctionne en local mais pas en réseau.
impossible de créer le deb php5-oci8 indiqué dans le tuto cité par fredr

Dernière modification par sylvain1970 (Le 12/11/2008, à 15:51)

Hors ligne

#15 Le 11/06/2009, à 16:11

GoroPuiss2

Re : Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

Pas de panique, en me bassant sur le site http://howto.landure.fr/gnu-linux/ubunt … drake/view
j'ai créé le paquet deb pour feisty. Il est disponible ici:

Le paquet feisty php5_oci8 : http://users.skynet.be/bk306081/php5-oc … 2_i386.deb

-------------------------------------------------------------------
C'est sympa ça! Mais est ce que ça passerai sur une fédora? (je ne connais pas bien les différences entre fedora et ubuntu...)
Merci d'avance

#16 Le 11/06/2009, à 16:26

fredr

Re : Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

Où là... voila du détartrage de topic... je pense que ça ne marchera pas sous fédora...


ArcoLinuxD Awesome
L'optimiste pense que nous vivons dans le meilleur des mondes. Et le pessimiste craint que ce ne soit exact.

Hors ligne

#17 Le 29/10/2009, à 11:44

olitin

Re : Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

Comme j'ai utilisé ce post pour ré installer Oracle XE sur ubuntu server autant que je contribue un peu pour faire avancer le schmilblick

si vous devez pour une raison ou une autre désinstaller puis réinstaller oracle XE
vous risquez de vous retrouver bloqué lors de la phase de réinstall.
l'ancienne BD n'a pas été supprimée et j'ai du la supprimer manuellement puis lors de la réinstallation le fichier /etc/init.d/oracle-xe était absent sad

pour cela lors de la désinstall utiliser
  dpkg --purge oracle-xe-universal
au lieu de
  dpkg -r oracle-xe-universal (qui est conseillé par la doc oracle).

et c'est reparti

Hors ligne

#18 Le 29/10/2009, à 12:30

fredr

Re : Tuto: installation Oracle 10g et php5_oci8 sur feisty avec paquet deb

Merci à toi....


ArcoLinuxD Awesome
L'optimiste pense que nous vivons dans le meilleur des mondes. Et le pessimiste craint que ce ne soit exact.

Hors ligne