Bonjour à tous.
Je voudrais connaitre les différences entre SYS, SYSDBA, SYSOPER et SYSTEM ?
Ou une doc les expliquant succinctement.
J'ai que ça, mais c'est juste :
http://www.developpez.net/forums/d22...er-sys-autres/
Merci.
Bonjour à tous.
Je voudrais connaitre les différences entre SYS, SYSDBA, SYSOPER et SYSTEM ?
Ou une doc les expliquant succinctement.
J'ai que ça, mais c'est juste :
http://www.developpez.net/forums/d22...er-sys-autres/
Merci.
SYS et SYSTEM sont les comptes Oracle administrateurs de la base
SYSOPER et SYSDBA sont des "rôles spéciaux de connexion"
Personnellement je n'ai jamais utilisé SYSOPER (je crois même qu'il est censé devenir obsolète)
SYSDBA doit être utilisé pour te connecter en SYS
Exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part SQL> connect sys as sysdba;
La théorie, c'est quand on sait tout mais que rien ne fonctionne.
La pratique, c'est quand tout fonctionne mais que personne ne sait pourquoi.
Ici, nous avons réuni théorie et pratique : Rien ne fonctionne ... et personne ne sait pourquoi !
Réplication de base avec Postgresql : http://scheu.developpez.com/tutoriel.../log-shipping/
SYS et SYSTEM sont des utilisateurs
SYSDBA et SYSOPER sont des rôles (un rôle est un ensemble de droits). L'utilisateur SYS doit se connecter avec un de ces rôles.
Ici tu as la différence entre SYSDBA et SYSOPER : http://download.oracle.com/docs/cd/B....htm#sthref137
L'utilisateur SYSTEM a les droits DBA qui permet d'effectuer les tâches d'administration courante (CREATE TABLESPACE, CREATE USER, DROP USER, etc...)
SYS peut faire tout ça + créér une base, faire des restaurations de DB, ...
SYS est le propriétaire de tous les objets du dictionnaitre de données de ta base - SYS est le vrai "root" de la DB.
Quelques mots sur la sécurité :
- tu peux interdire les connexions as SYS à distance en potisionnant le paramètre remote_login_passwordfile=none; si tu veux les autoriser (perso je le conseille pas), tu peux en créant un fichier password (la procédure est plus bas sur le lien que je t'ai donné au dessus)
- la chaine de connexion "sqlplus '/ as sysdba'" que tu dois voir souvent a un sens. Elle a comme sens que tu te connectes "SYS as SYSDBA" (donc tu auras tous les droits) sans mot de passe.
Cela est car tu es OS-authentifié en étant deja connecté à l'OS avec un user du groupe dba sous Unix ou dans le groupe ORA_DBA sous Windows - donc bien faire attention à ne mettre que le user oracle dans ce groupe![]()
Vous pouvez aussi regarder cette discussion : http://www.developpez.net/forums/d33...nal-system-sys
J'ajoute que SYSDBA et SYSOPER ne sont pas des rôles, mais des privilèges système (alors que DBA est un rôle). Voir par exemple DBA_ROLES et SYSTEM_PRIVILEGE_MAP.
SYSOPER est un privilège spécialement adapté aux opérateurs de sauvegarde, car il permet notamment d'arrêter ou de démarrer la base, mais sans donner la possibilité de visualiser le contenu des tables (ni les vues DBA_xxx), hormis celles qui sont accessibles à PUBLIC.
Partager