IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Connexions aux bases de données Oracle Discussion :

Erreur de connection oracle ORA-27101 ORA-01034


Sujet :

Connexions aux bases de données Oracle

  1. #1
    Membre expérimenté
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Points : 1 341
    Points
    1 341
    Par défaut Erreur de connection oracle ORA-27101 ORA-01034
    Bonsoir ^^

    Alors, voila le topo.
    On un super dba admin qui est venu installer une base sur un serveur de production. Jusque là, pas de problème. La connection se fesait bien, tout était pour le mieux dans le meilleur des mondes, jusqu'a ce qu'un abrutit (moi), ait l'envie saugrenue de relancer le serveur après une toute petite modification (j'ai voulu augmenter le nombre d'Open_cursors).

    Et la, c'est le drame. Plus rien ne fonctionne ou presque. J'ai remis l'open_cursors a sa valeur initialle (300), mais rien n'y fait, j'obtiens systématiquement comme erreur (par exemple sous sqlplusWorksheet, mais c'est pareil avec php) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    ERROR:
    ORA-01034: ORACLE not available
    ORA-27101: shared memory realm does not exist
    Linux Error: 2: No such file or directory
    Alors voila les divers fichiers de conf qui peuvent être utile :

    Dans le répertoire /u01/app/oracle/product/9.2/dbs on peut trouver

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    >more initora9i1.ora
    spfile=/u01/app/oracle/product/9.2/dbs/spfileora9i1.ora
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    >more spfileora9i1.ora
     
    *.background_dump_dest='/u01/app/oracle//admin/ora9i1/bdump'
    *.compatible='9.2.0.0.0'
    *.control_files='/u01/app/oracle//oradata/ora9i1/control01.ctl','/u01/app/oracle//oradata/ora9i1/control02.ctl
    ','/u01/app/oracle//oradata/ora9i1/control03.ctl'
    *.core_dump_dest='/u01/app/oracle//admin/ora9i1/cdump'
    *.db_block_size=8192
    *.db_cache_size=298844160
    *.db_domain='intra.rbs.fr'
    *.db_file_multiblock_read_count=16
    *.db_name='ora9i1'
    *.dispatchers='(PROTOCOL=TCP) (SERVICE=ora9i1XDB)'
    *.fast_start_mttr_target=300
    *.hash_join_enabled=TRUE
    *.instance_name='ora9i1'
    *.java_pool_size=0
    *.large_pool_size=58720256
    *.open_cursors=300
    *.pga_aggregate_target=132120576
    *.processes=150
    *.query_rewrite_enabled='FALSE'
    *.remote_login_passwordfile='EXCLUSIVE'
    *.shared_pool_size=99614720
    *.sort_area_size=524288
    *.star_transformation_enabled='FALSE'
    *.timed_statistics=TRUE
    *.undo_management='AUTO'
    *.undo_retention=10800
    *.undo_tablespace='UNDOTBS1'
    *.user_dump_dest='/u01/app/oracle//admin/ora9i1/udump'
    Dans le répertoire /u01/app/oracle/product/9.2/network/admin on peut trouver :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    > more listener.ora 
    # LISTENER.ORA Network Configuration File: /u01/app/oracle/product/9.2/network/admin/listener.ora
    # Generated by Oracle configuration tools.
     
    LISTENER =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS_LIST =
            (ADDRESS = (PROTOCOL = TCP)(HOST = oracle)(PORT = 1521))
          )
          (ADDRESS_LIST =
            (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
          )
        )
      )
     
    SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = PLSExtProc)
          (ORACLE_HOME = /u01/app/oracle/product/9.2)
          (PROGRAM = extproc)
        )
        (SID_DESC =
          (GLOBAL_DBNAME = ora9i1.intra.rbs.fr)
          (ORACLE_HOME = /u01/app/oracle/product/9.2)
          (SID_NAME = ora9i1)
        )
      )
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    > more tnsnames.ora
    # TNSNAMES.ORA Network Configuration File: /u01/app/oracle/product/9.2/network/admin/tnsnames.ora
    # Generated by Oracle configuration tools.
     
    INST1_HTTP =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = oracle)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVER = SHARED)
          (SERVICE_NAME = MODOSE)
          (PRESENTATION = http://HRService)
        )
      )
     
    ORA9I1 =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = oracle)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = ora9i1.intra.rbs.fr)
        )
      )
    Mon niveau en tant que DBA étant, certe en constante amélioration, mais quand même franchement pitoyable, je dois avouer que je n'y comprend rien du tout.
    Bref, si quelqu'un a une idée, je suis prenneur !

    --
    Rakken
    Rakken

    Oneira, un monde imaginaire d'Heroic Fantasy.

    Parce que la présomption d'innocence est un des fondements de notre pays et qu'elle doit le rester, dans tous les domaines : http://www.laquadrature.net/

  2. #2
    Membre éprouvé
    Inscrit en
    Avril 2006
    Messages
    1 024
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 1 024
    Points : 1 294
    Points
    1 294
    Par défaut
    Tu arrives quand meme à te connecter quand tu es sur le meme serveur que ta base ou meme là il y a un problème?

    C'est souvent un problème de variable d'environnement ce genre de trucs... (ORACLE_HOME/ORACLE_SID)

    Une fois j'ai passé une nuit blanche à cause d'un double "//" dans mon ORACLE_HOME, je vois que tu en as pas mal dans tes chemins, c'est malsain...

  3. #3
    Membre expérimenté
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Points : 1 341
    Points
    1 341
    Par défaut
    Sur le même serveur, quand je me connecte avec sqlplus, ca me fait la même erreur.

    A noter que le tnsping passe.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    >tnsping ora9i1.intra.rbs.fr
     
    TNS Ping Utility for 32-bit Windows: Version 9.2.0.1.0 - Production on 30-NOV-20
    06 18:34:14
     
    Copyright (c) 1997 Oracle Corporation.  All rights reserved.
     
    Used parameter files:
    C:\oracle\ora92\network\admin\sqlnet.ora
     
     
    Used TNSNAMES adapter to resolve the alias
    Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
    (HOST = 10.255.2.133)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVI
    CE_NAME = ora9i1.intra.rbs.fr)))
    OK (100 msec)
    --
    Rakken
    Rakken

    Oneira, un monde imaginaire d'Heroic Fantasy.

    Parce que la présomption d'innocence est un des fondements de notre pays et qu'elle doit le rester, dans tous les domaines : http://www.laquadrature.net/

  4. #4
    Membre éprouvé
    Inscrit en
    Avril 2006
    Messages
    1 024
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 1 024
    Points : 1 294
    Points
    1 294
    Par défaut
    Le tnsping teste le listener, il ne va pas jusqu'à ouvrir une session sur la base.

    Il va falloir faire les choses progressivement, pour commencer:
    - se connecter depuis le compte oracle d'unix.
    - exporter correctement les variables ORACLE_SID et ORACLE_HOME (en faisant attention de ne pas doubler les "/")
    - lancer "$ORACLE_HOME/bin/sqlplus /nolog"
    - puis "connect / as sysdba"


    Est-ce que tu as l'erreur apparait déja ?

  5. #5
    Membre expert
    Avatar de bouyao
    Inscrit en
    Janvier 2005
    Messages
    1 778
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 778
    Points : 3 033
    Points
    3 033
    Par défaut
    1. Est ce que tu a démarré la base ?
    2. Comment tu a modifié le paramètre open_cursors ?

    Normalement, la manip est simple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    C:\>sqlplus /nolog
     
    SQL*Plus: Release 10.2.0.1.0 - Production on Ven. DÚc. 1 11:37:44 2006
     
    Copyright (c) 1982, 2005, Oracle.  All rights reserved.
     
    SQL> connect /as sysdba
    ConnectÚ.
    SQL> show parameter open_cursors
     
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- -----------------------
    open_cursors                         integer     300
     
    SQL> alter system set open_cursors=500 scope=spfile;
     
    SystÞme modifié
     
    SQL> shutdown immediate
    Base de donnÚes fermÚe.
    Base de donnÚes dÚmontÚe.
    Instance ORACLE arrÛtÚe.
    SQL> startup
    Instance ORACLE lancÚe.
     
    Total System Global Area  289406976 bytes
    Fixed Size                  1247552 bytes
    Variable Size              83887808 bytes
    Database Buffers          201326592 bytes
    Redo Buffers                2945024 bytes
    Base de donnÚes montÚe.
    Base de donnÚes ouverte.
    SQL> show parameter open_cursors
     
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ----------
    open_cursors                         integer     500.
    Sur la 10g, tu n'a pas besoin de démarrer la base, par contre sur la 9i je pense qu'on est obligé de démarrer la base.

  6. #6
    Membre éprouvé
    Inscrit en
    Avril 2006
    Messages
    1 024
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 1 024
    Points : 1 294
    Points
    1 294
    Par défaut
    Citation Envoyé par bouyao
    ...
    Sur la 10g, tu n'a pas besoin de démarrer la base, par contre sur la 9i je pense qu'on est obligé de démarrer la base.
    Avec des répertoires du style "/u01/app/oracle/product/9.2", je soupçonne fortement une 9i

  7. #7
    Membre expérimenté
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Points : 1 341
    Points
    1 341
    Par défaut
    Bon, ben l'erreur était due a ma maniere de changer les "open_cursors".
    Sur le serveur de dev, pour changer les open_cursors, j'ai modifié le fichier initoradev1.ora et a la ligne "open_cursor" j'ai remplacé 300 par 2000. Jusque là, pas de soucis.

    Sur le nouveau serveur, j'ai voulu faire pareil, mais le fichier équivalent (a savoir initora9i1.ora) ne possedait qu'une ligne qui était un lien vers un fichier "spfile". Alors pas contrariant pour deux sous, j'ai modifié le fichier spfile (ou il y avait effectivement une ligne qui parlait des open_cursors).

    Par contre, visiblement, ce fichier est un fichier binaire, et le modifcier a la main, c'est mal .

    Bref, intervention téléphonique du dba qui m'a créé un fichier iniora9i1.ora sur le même modele que le serveur de dev, et hop, ca marche de nouveau.

    Merci a tous !

    --
    Rakken qui ne modifiera plus jamais de fichiers nommé spfiles.
    Rakken

    Oneira, un monde imaginaire d'Heroic Fantasy.

    Parce que la présomption d'innocence est un des fondements de notre pays et qu'elle doit le rester, dans tous les domaines : http://www.laquadrature.net/

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. erreur ora_logon Connection Failed: ORA-12154
    Par bachboucha dans le forum Débuter
    Réponses: 1
    Dernier message: 25/05/2010, 17h29
  2. Réponses: 1
    Dernier message: 19/11/2009, 22h10
  3. Réponses: 13
    Dernier message: 26/02/2009, 12h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo