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

Administration Oracle Discussion :

Lenteur oracle 11g2 multi user


Sujet :

Administration Oracle

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2016
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2016
    Messages : 17
    Points : 6
    Points
    6
    Par défaut Lenteur oracle 11g2 multi user
    Bonjour à tous,

    Nous avons un logiciel qui fonctionne avec une base de données oracle 11g2.
    La particularité de ce logiciel c’est de pouvoir travailler en multi utilisateur.
    Nous avons un souci depuis que nous n’avons créé un nouveau server, lorsque 2 utilisateurs travaillent en même temps, les utilisateurs se bloquent et n’ont la main que si un utilisateur sauvegarde ou ferme le schéma en cours. J’ai essaie des réglages tél que le parellel_max serveur en l’augmentant mais rien n’y fait les utilisateurs ne peuvent pas travailler sans qu’ils soient bloqué.

    Si vous avez une idée je vous serais bien reconnaissant.

  2. #2
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    1 993
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 1 993
    Points : 2 499
    Points
    2 499
    Par défaut
    Houla, pas simple car j'ai du mal à comprendre ce que tu entends par "que si un utilisateur sauvegarde ou ferme le schéma en cours".
    Sauvegarde = COMMIT sur les opérations en cours?
    Ferme = DISCONNECT ou EXIT sous SQL*Plus?

    On est bien d'accord, les deux users sont bloqués? Et pas seulement le user1 ou le user2?

    De ce que je comprends le User1 lance un ordre sur la base, tout se passe bien MAIS si le user2 se connecte et lance un autre ordre (ou le même), ça bloque?
    Ce peut-être un deadlock mais Oracle gère ça depuis longtemps et kill de lui même une des deux sessions; des infos sont remontées dans le fichier Oracle Alert<nom_base>.log).

    On peut avoir les ordres SQL qui posent pb?
    DBA Oracle
    Rédacteur du blog : dbaoraclesql.canalblog.com

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2016
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2016
    Messages : 17
    Points : 6
    Points
    6
    Par défaut
    Alors notre logiciel est couplé avec autocad qui fonctionne avec oracle.
    Lorsque nous travaillons sur un schéma électrique sur notre logiciel pour pouvoir donné la main à l’autre utilisateur une sauvegarde ou une fermeture du schéma donne la main à l’autre utilisateur qui bloquait.

    Je pense qu’une des tables bloque et pour libérer il faut soit fermer le schéma en cours ou sauvegarder pour libérer la requête en cours alors que normalement nous pouvons travailler en multi user.
    Désolé pour l’explication mais je peux répondre à vos questions pour p’us D’éclaircissement.

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2016
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2016
    Messages : 17
    Points : 6
    Points
    6
    Par défaut
    Je n’ai pas le fichier alert.log.

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2016
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2016
    Messages : 17
    Points : 6
    Points
    6
    Par défaut
    Un des user est bloqué. L’autre n’a pas la main tant que le user 1 ne ferme pas le schéma ou sauvegarde.

  6. #6
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    1 993
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 1 993
    Points : 2 499
    Points
    2 499
    Par défaut
    OK, en résumé : le user1 lance sa requête (certainement un Update), le user2 lance sa requête (certainement un Update sur les mêmes données que le user1) et donc le user2 est bloqué puisqu'il veut modifier les mêmes données que le user1. Tant que le User1 ne valide pas ou n'annule pas ses modifications, le user2 est bloqué.

    Si c'est bien ça, il suffit que le user1 valide par COMMIT ou annule par ROLLBACK ses modifications une fois saisies.

    Néanmoins, si j'ai bien résumé, est-il normal que user1 et user2 travaillent sur les mêmes données?
    C'est ce point qu'il faudrait éclaircir pour être sur que je ne me soit pas trompé.

    Au fait, tu peux lancer des ordres SQL sous SQL*Plus genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM DBA_BLOCKERS;
    DBA Oracle
    Rédacteur du blog : dbaoraclesql.canalblog.com

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2016
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2016
    Messages : 17
    Points : 6
    Points
    6
    Par défaut
    Merci pour ta réponse. Je vais t’expliquer notre logiciel.
    C’est un logiciel de CAO qui permet de réaliser dès schémas électrique en automatique grâce à la base de données oracle.
    Lorsque nous travaillons à plusieurs c’est dans une même affaire. Et nous avons des blocages car des requêtes qui se lance en même temps du coup le premier qui fait sa commande de schéma ben le user 2 doit attendre alors que normalement nous pouvons travailler à plusieurs. L’éditeur du logiciel n’y comprend rien aussi. On a refait plusieurs foot la base et rien y fait.

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2016
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2016
    Messages : 17
    Points : 6
    Points
    6
    Par défaut
    En lançant ta requête j’obtiens:
    Aucune ligne sélectionnée

  9. #9
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 947
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 947
    Points : 5 846
    Points
    5 846
    Par défaut
    Citation Envoyé par soso93190 Voir le message
    La particularité de ce logiciel c’est de pouvoir travailler en multi utilisateur.
    C'est pas vraiment spécifique, c'est plutôt la norme.

    Citation Envoyé par soso93190 Voir le message
    Lorsque nous travaillons sur un schéma électrique sur notre logiciel pour pouvoir donné la main à l’autre utilisateur une sauvegarde ou une fermeture du schéma donne la main à l’autre utilisateur qui bloquait.
    Ça ressemble à du SELECT FOR UPDATE, utilisé pour empêcher la concurrence d'accès, et sérialiser l'accès aux données.

    Citation Envoyé par soso93190 Voir le message
    Nous avons un souci depuis que nous n’avons créé un nouveau server
    Que veut dire créer un nouveau serveur ? Quelles opérations techniques avez-vous réalisées ?

  10. #10
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2016
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2016
    Messages : 17
    Points : 6
    Points
    6
    Par défaut
    On a refait un serveur virtuel en recréant la base de données.

  11. #11
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2016
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2016
    Messages : 17
    Points : 6
    Points
    6
    Par défaut
    Je reviens pour vous donner plus d’information.
    La base de données ne garde pas en mémoire les modification des paramètres spfile lorsque je redémarre la base. Je voudrais mettre le parallel_max_servers à 1, lorsque je fais un alter System tout se passe bien mais en redémarrant rien n’est pris en compte. Je pense que la base est mal configuré pour travailler à plusieurs personne.

  12. #12
    Expert éminent
    Avatar de pachot
    Homme Profil pro
    Developer Advocate YugabyteDB
    Inscrit en
    Novembre 2007
    Messages
    1 821
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Developer Advocate YugabyteDB
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 821
    Points : 6 443
    Points
    6 443
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    Les paramètres parallel_max_servers n'ont rien à voir avec ça.
    Oracle permet de vraiement comprendre ce qu'il se passe. Lorsque c'est bloqué, sous sqlplus sur le serveur lance ?/rdbms/admin/utllockt:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    sqlplus / as sysdba
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    start ?/rdbms/admin/utllockt
    

    Ca affichera les sessions qui bloquent et celles qui attended.
    Franck Pachot - Developer Advocate Yugabyte 🚀 Base de Données distribuée, open source, compatible PostgreSQL
    🗣 twitter: @FranckPachot - 📝 blog: blog.pachot.net - 🎧 podcast en français : https://anchor.fm/franckpachot

Discussions similaires

  1. Réponses: 5
    Dernier message: 20/12/2010, 18h16
  2. [Développement] Application multi user
    Par Vesta dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 25/04/2006, 22h52
  3. VBA-E] Mots de passe multi-users
    Par Igloobel dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 03/10/2005, 21h09
  4. Design d'une base multi-user
    Par Aurelien.Regat-Barrel dans le forum Langage SQL
    Réponses: 4
    Dernier message: 29/08/2005, 12h13
  5. Réponses: 2
    Dernier message: 14/03/2004, 16h14

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