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

Oracle Discussion :

[v9] SID-schema-user etc... comment ça marche?


Sujet :

Oracle

  1. #1
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 919
    Points : 6 035
    Points
    6 035
    Par défaut [v9] SID-schema-user etc... comment ça marche?
    Bonjour aux forumeurs.

    Après 1 install réussie grace à l'excellent tuto de Developpez, je suis confronté à des questions métaphysiques.

    Avec une certaine maitrise de DB2, le monde Oracle me semble déroutant, et je peine (refus inconscient ?) à prendre certains repères.

    J'ajoute que mes besoins sont basiques car j'ai juste besoin du strict minimum coté Oracle afin de développer une appli C/S.

    SID, schéma, user, tablespace, database.... big confusion !

    comment celà s'organise, qui est le maitre, etc...

    Bon, une database contient des tables s'appuyant sur des TS.
    Sous DB2, on déclare la base, puis des TS dans cette base, puis les tables dans les TS.

    Sous Oracle, on semble déclarer une table puis son TS: est-ce Oracle qui remet ça dans l'ordre ?

    Autre interrogation: SID // base
    le SID est le "truc" qu'on retrouve dans le TNSNAME avec son adresse et le port.
    Mais, quelle autre signification lui donner ? est-ce la database ?
    Ainsi, au boulot, avec Toad, la fenêtre "server loggin" présente à gauche la liste des "server" et j'y trouve "TOTO".
    A droite, le combo "Database (or user@database)" me propose aussi "TOTO"...
    Donc "TOTO" = SID = server = database !

    Toujours dans le même "server loggin", je peux choisir entre plusieurs User pour accéder à "TOTO"; ça me va...jusqu'à ce que le User veuille aussi dire Schéma !
    Ainsi, si je me connecte sur "TOTO" avec user1/pass1, j'accède à des tables, si c'est avec user2/pass2 c'est d'autres tables.

    Par quel prodige? Est-ce une histoire de tablespace ? (avec des grant qui vont bien ?)
    Est-ce que le SYSDBA connecté à TOTO voit toutes les tables ? (j'espère!)

    Bref, je suis découragé devant l'investissement... pour une ch'tite appli C/S !

    Pour ceux qui m'ont vu venir de loin (et les autres aussi), je cherche donc un guide hyper simple me permettant:
    - de créer une database ( sachant qu'a priori j'arrive à créer le SID-mais le SID est peut-être bien la base)
    - créer des tables dans un TS dédié à mon appli (si c'est comme ça que ça marche)
    - créer 1 ou 2 users (et les pass) pouvant se connecter au SID/base/tablespace via mon appli afin d'enrichir les tables

    Remerciements éternels à ceux qui m'aideront.

  2. #2
    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
    Bonjour,

    Tu peut trouver les réponses dans GUIDE Oracle

  3. #3
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 919
    Points : 6 035
    Points
    6 035
    Par défaut
    Merci

    J'ai déjà parcouru ces liens....sans trouver de réponses à mes interrogations

    Par ex, concernant les TS, ok... 3 types sont décrits, mais je n'ai pas vu celui simplement consacré aux tables "normales"...

    Alors je me dis allons voir le tuto du Zappa-man sur les tables.... et là:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    CREATE TABLE......
    TABLESPACE	tbs1
    ....
    pof, un TS mais il vient doù ? doit-il exister avant la création de la table ?

  4. #4
    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
    Un tablespace doit être créer avant.
    Un tablespace contient plusieurs tables.
    Par exemple dans une maison il y'a plusieurs chambres, La maison = tablespace et les chambres sont des tables.

  5. #5
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 919
    Points : 6 035
    Points
    6 035
    Par défaut
    Ca au moins, ça a le mérite d'être clair...

  6. #6
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    Il faut envisager ces différents objets commes des conteneurs imbriqués.
    Le grand conteneur contient le moyen qui contient le petit, etc.

    Il est évident que le conteneur x doit préalablement exister pour pouvoir contenir les conteneurs x+1.

    Si l'on démarre du plus grand conteneur jusqu'au plus petit ceci donne cela.

    Base
    ..Tablespaces
    ....Schémas (ou compte ou user)
    ......Tables

  7. #7
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 919
    Points : 6 035
    Points
    6 035
    Par défaut
    Merci pour ces infos.

    Ca commence à ressembler à DB2 sauf cette histoire de schéma


    Quelle méthode est généralement utilisée pour que plusieurs utilisateurs puissent se connecter via 1 appli à Oracle ? (avec authentification de chaque utilisateur au niveau sgbd -> mais c'est peut-être impossible ça ? ==> authentification OS ?)

    En d'autres termes (?), est-il possible de "partager" des tables en dehors d'un schéma "générique" ?

  8. #8
    Membre émérite Avatar de nuke_y
    Profil pro
    Indépendant en analyse de données
    Inscrit en
    Mai 2004
    Messages
    2 076
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Indépendant en analyse de données

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 076
    Points : 2 370
    Points
    2 370
    Par défaut
    Oui en donnant des droits.

    En fait un schéma contient des objets (tables, vues, etc.) mais aussi des droits. Donc tu peux créer un schéma (donc un login / mot de passe) pour tes utilisateurs et choisir leurs droits sur les différents objets.

    Une illustration intéressante se trouve dans la Console Oracle Entreprise : si tu veux créer un nouveau schéma (donc un conteneur pour une série d'objets), tu dois aller non pas sur la rubrique Schémas et faire Créer, mais aller sur la rubrique Sécurité/Utilisateurs et faire Créer. Et le schéma n'apparaîtra que quand tu auras créé au moins 1 objet dans ce conteneur.

    C'est un peu déroutant au début...

  9. #9
    CD
    CD est déconnecté
    Membre habitué
    Inscrit en
    Septembre 2004
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 127
    Points : 151
    Points
    151
    Par défaut
    Pour te donner une idée, j'ai une appli chez moi qui est segmentée de la manière suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Base BUDGET
    .. Tablespace Budget
    .... Schema BUDGET
    ...... Tables Budget
     
    .... Schema DR1
    ...... Droits sur les tables budget
     
    .... Schema DR2
    ...... Droits sur les tables budget
     
    .... Schema DR3
    ...... Droits sur les tables budget
    Cela permet d'avoir toutes les tables dans le même schema. Ce qui veut dire que pour accéder aux données, il faut se connecter avec l'utilisateur ( = schema ) Budget.

    Pour l'utilisation de l'appli, lors de la création d'un nouveau compte applicatif, un schema est créé (e.g. DR1). L'utilisateur va se connecter à l'appli avec son compte DR1, et verra donc tous les objets de DR1. Mais pas ceux de budget, vu que ce n'est pas le même schema !

    Sauf si on donne des droits. Lors de la création de l'utilisateur DR1, on lui donne en même temps le droit sur les tables de Budget. Cela lui permet d'agir sur les tables au travers de l'application.

    Pour reprendre l'histoire de la maison, les droits, c'est comme si on pouvait agir à distance entre 2 chambres On y a rajouter des fenêtres à l'intérieur

  10. #10
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 919
    Points : 6 035
    Points
    6 035
    Par défaut
    Merci à tous pour ces informations très didactiques.

    J'y vois plus clair désormais.

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

Discussions similaires

  1. ToAsciiEx, comment cela marche ?
    Par mikyfpc dans le forum C++Builder
    Réponses: 2
    Dernier message: 17/02/2004, 21h39
  2. [MFC] list box : comment ça marche
    Par runn2 dans le forum MFC
    Réponses: 4
    Dernier message: 28/01/2004, 12h36
  3. [SYNEDIT] -> Comment ça marche ?
    Par MaTHieU_ dans le forum C++Builder
    Réponses: 2
    Dernier message: 18/01/2004, 19h11
  4. [TP][Turbo Vision] comment ça marche ??
    Par Costello dans le forum Turbo Pascal
    Réponses: 7
    Dernier message: 05/08/2003, 00h24
  5. [update][req. imbriquee] Comment ca marche ??
    Par terziann dans le forum Langage SQL
    Réponses: 3
    Dernier message: 11/07/2003, 12h51

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