Gestion des utilisateurs▲
1. Création des utilisateurs▲
Nous allons voir dans cet article comment créer et configurer un utilisateur de base de données ou
un compte avec lequel vous pourrez vous connecter et effectuer des actions sur la base de données en
fonctions des droits qui vous serons alloués.
Il est aussi bon de savoir que contrairement à d'autres bases de données, quand vous créez un utilisateur
sur une base de données Oracle celui-ci ne dispose d'aucun droit, pour cela reportez vous à la section "Administration des rôles et privilèges".
Voici les différentes étapes qui seront nécessaire à la création d'un utilisateur Oracle :
- Choisir un nom d'utilisateur
- Choisir une méthode d'authentification
- Choisir les TABLESPACEs que l'utilisateur pourra utiliser
- Définir les quotas sur chaques TABLESPACEs
- Définir les TABLESPACEs par défaut de l'utilisateur
- Créer l'utilisateur
- Assigner les rôles et privilèges à l'utilisateur
1-1. Introduction▲
1-1-1. Définition d'un schéma▲
Un schéma est une collection (ou un ensemble) nommé d'objets tels que des tables, vues, clusters, procédure et packages associés à un utilisateur précis. Quand un utilisateur de base de données est crée, son schéma est automatiquement crée. Un utilisateur ne pourra alors être associé qu'à un seul schéma et réciproquement.
1-1-2. Définition d'un user▲
Un utilisateur de base de données va correspondre à un login qui aura reçu certains privilèges.
Cet utilisateur sera stocké dans le dictionnaire de données et disposera d'un espace de stockage pour
ses objets qui seront alors stockés dans son schéma.
En Oracle on pourra assimiler un utilisateur avec son schéma.
1-2. Choix du nom de l'utilisateur▲
La première chose à faire pour créer un nouvel utilisateur va être de définir un login.
Afin d'éviter d'avoir trop de problèmes lors de l'ajout de nouveaux utilisateurs, il est fortement
recommandé de metttre une stratégie de nommage en place.
Par exemple tout les noms d'utilisateur devront être composé des 6 premières lettres de leur nom, d'un "_"
et de la première lettre de leur prénom.
Par exemple :
Albert Durand donnera comme login durand_a.
Il convient ensuite de connaitre les limitations et règles de nommage à respecter:
- Taille maximale 30 caractères.
- Ne devra contenir que des lettres de [a-z] et des chiffres [0-9]. Tout les caractères accentués ou autres sont à éviter. Vous pourrez également utiliser les symboles #, $, _.
- Le login devra commencer par une lettre. Si vous désirez utiliser des logins composé uniquement de chiffres vous devrez alors entourer votre login entre des ".
Note : Il faudra faire attention lors de l'utilisation des " sur un login car Oracle deviendra alors sensible à la casse.
"DURAND_D" ne sera pas identique à "durand_d".
1-3. Choisir la méthode d'authentification de l'utilisateur▲
Afin d'authentifier un utilisateur et de définir les actions que celui-ci sera en mesure
d'effectuer sur la base de données, le serveur Oracle doit pouvoir vérifier les accès
de l'utilisateur lorsque celui-ci se connecte.
Il existe différents type d'authentification :
- Authentification par la base de données.
- Authentification par le système d'exploitation.
- Authentification par le réseau.
1-3-1. Par la base de données▲
Ce mode, le plus courant, est le mode par défaut. En clair l'utilisateur est authentifié avec
le mots de passe stockés dans la base de données. Cela signifie que la base de données devra
être ouverte pour q'un utilisateur puisse se connecter.
Pour créer un utilisateur authentifié par la base de données, vous devrez utiliser
la clause IDENTIFIED BY <password>.
Le mot de passe devra dans les cas par défaut commencer par une lettre, avoir une longueur
maximale de 30 caractères et ne pourra etre composé que de chiffres, lettre de l'alphabet,
et des symboles suivants : #, _, $ (bien que Oracle ne préconise pas l'utilisation de # et $)
Toutefois il est possible d'outrepasser ces conventions en entourant le mot de passe de ".
Ce qui nous permettra de faire débuter notre mots de passe par un chiffre et d'utiliser des
caractères accentués. Il est bon de savoir que Oracle préconise l'utilisation de caractères
mono-bytes même si la base de données supporte les caractères multi-bytes.
Voici un exemple de création simple d'un utilisateur authentifié par la base de données :
CREATE
USER
scott IDENTIFIED
BY
tiger;
Cette commande va donc créer un utilisateur SCOTT dont le mot de passe sera tiger. Pour se connecter il devra utiliser la commande suivante (après lui avoir attribué les droits nécessaires)
CONNECT
scott/
tiger@<
chaîne d'hôte>;
1-3-2. Par le système d'exploitation▲
Ce mode permettra à Oracle de se baser sur l'authentification de l'utilisateur par un
système tierce ou par le système d'exploitation. L'avantage majeur de cette solution réside
dans le fait que l'utilisateur n'aura alors besoin de s'authentifier qu'une seule fois sur
son système d'exploitation.
Cependant cette solution apporte aussi son lot de faille de sécurité
car si l'utilisateur oublie de se déconnecter de sa machine, il sera alors très simple de
se connecter à la base sans avoir à fournir de mot de passe. Oracle ne recommande pas l'utilisation de ce
mode d'authentification.
Pour créer un utilisateur authentifié de manière extérieure, vous devrez utilisez la clause
IDENTIFIED EXTERNALLY.
Attention cette commande va nécessiter la configuration de quelques
paramètres Oracle avant de pouvoir fonctionner correctement.
Nous allons prendre pour les exemples suivants :
- Un utilisateur local helyos
- Un utilisateur helyos du domaine galaxy
Nous allons donc voir comment configurer le serveur pour autoriser l'authentification de ces utilisateurs par le système d'exploitation.
Puis nous verrons comment configurer le client.
1-3-2-1. Configuration sur le serveur▲
La 1ère étape sera de configurer la valeur du paramètre OS_AUTHENT_PREFIX (dans le fichier init.ora). Ce paramètre servira à Oracle pour être
en mesure de déterminer les utilisateurs devant être authentifiés par une application tierce.
Il est vivement conseiller de laisser la valeur par défaut OPS$
Valeur de OS_AUTHENT_PREFIX | Login de l'utilisateur | Connexion distante possible |
---|---|---|
OS_ | OS_DURAND_D | Non |
Pas de préfixe | DURAND_D | Non |
OPS$ (valeur par défaut) ou vide | OPS$DURAND_D | Oui |
La 2ème étape sera de créer un utilisateur OS local ou de domaine. Pour ce point veuillez consulter la
documentation de votre système d'exploitation.
La 3ème étape va dépendre du type d'utilisateur système que vous voulez autoriser.
Sur Windows, si l'utilisateur ne fais pas partie d'un domaine, vous allez devoir rajouter une valeur dans votre base de registre.
Dans HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMEid (ou id correspond à l'instance qui devra authentifier les utilisateurs à l'aide du système).
Rajouter la clé OSAUTH_PREFIX_DOMAIN (de type valeur de chaîne extensible) et lui donner la valeur TRUE.
La 4ème étape consistera à vérifier la valeur du paramètre SQLNET.AUTHENTICATION_SERVICES dans le fichier sqlnet.ora. Celui-ci devra contenir la valeur NTS.
La 5ème étape consistera à créer explicitement le nouvel utilisateur de la base de données.
On lance SQL*Plus
SQLPLUS /
nolog
Puis on effectue les actions suivantes si l'utilisateur est un utilisateur OS local :
-- On se connecte en tant que DBA
CONNECT
system/<
mot de passe>
-- Si l'utilisateur est un utilisateur local on lance cette commande
CREATE
USER
ops$helyos IDENTIFIED
EXTERNALLY;
-- On lui donne ensuite les droits par défaut
GRANT
connect
, resource
TO
ops$helyos;
Si l'utilisateur est un utilisateur OS d'un domaine :
-- On se connecte en tant que DBA
CONNECT
system/<
mot de passe>
-- Si l'utilisateur est un utilisateur local on lance cette commande
CREATE
USER
"OPS$GALAXY\HELYOS"
IDENTIFIED
EXTERNALLY;
-- On lui donne ensuite les droits par défaut
GRANT
connect
, resource
TO
"OPS$GALAXY\HELYOS"
;
Attention dans le deuxième cas il sera très important de mettre le nouveau nom d'utilisateur en
majuscule car nous utilisons des guillemets et Oracle devient alors sensible à la casse. Si vous ne
saisissez pas le login en majuscule vous devriez avoir l'erreur ORA-01017.
De plus sous Unix, il sera très important de préfixer le $ par un \ pour éviter que celui-ci ne soit
interprété comme étant une variable d'environnement.
Une fois ces commandes effectuées le nouvel utilisateur sera en mesure de se connecter sur la base de données
en utilisant la commande à partir du serveur.
SQLPLUS /
1-3-2-2. Configuration sur le client▲
Comme la majeure partie du temps l'utilisateur lambda n'a pas accès directement au serveur. Donc voici les actions
à effectuer pour que celui-ci puisse se connecter à distance sur le serveur tout en étant authentifié par son OS.
La première chose à faire va être de mettre à TRUE la valeur du paramètre REMOTE_OS_AUTHENT dans le fichier init.ora du serveur.
Ce paramètre va permettre à des connexions distantes de pouvoir se connecter sur le serveur. Si vous oubliez de mettre à TRUE ce
paramètre vous obtiendrez alors les erreurs suivantes :
ORA-
01004
: default
username feature not
supported; logon denied
ORA-
01988
: remote os logon is
not
allowed
Ensuite le reste de la configuration est très simple puisqu'il vous faudra juste avoir un compte local ou un compte de domaine sur la machine.
Vérifier la valeur du paramètre SQLNET.AUTHENTICATION_SERVICES dans le fichier sqlnet.ora. Celui-ci devra contenir la valeur NTS.
Configurer le client Net8 pour pouvoir accéder à la base de données
Se connecter en utilisant la commande :
SQLPLUS /
@<
chaîne de connection
>
1-4. Choisir les TABLESPACEs que l'utilisateur pourra utiliser▲
Il va maintenant falloir choisir le domaine d'action du nouvel utilisateur.
En effet, pour des raisons de sécurités évidentes, nous allons restreindre le champ d'action de l'utilisateur
en choisissant les tablespaces que celui-ci sera en mesure d'utiliser.
En premier lieu il est très fortement déconseillé d'autoriser un utilisateur à utiliser le tablespace SYSTEM, qui
doit impérativement rester dédié au dictionnaire de données.
Il va donc falloir identifier tous les tablespaces nécessaire à l'utilisateur, que ce soit des tablespaces de données,
d'index, ou temporaire. Il n'y a pas de syntaxe particulière pour cette étape.
1-5. Définir les QUOTAs de l'utilisateur▲
Une fois les tablespaces identifiés, l'étape suivante va consister à définir l'espace alloué à l'utilisateur sur chacun des
tablespaces.
Voici les différentes options disponibles pour les quotas :
- Une taille en K (KiloBytes) ou en M (MegaBytes)
- Unlimited
Par défaut le nouvel utilisateur dispose d'un quota null sur tous les tablespaces.
Voici un exemple d'assignation de quotas sur différents TABLESPACES :
...
QUOTA 5M ON
TBS_USERS QUOTA UNLIMITED ON
TMP_USERS...
...
1-6. Choisir les TABLESPACEs par défaut de l'utilisateur▲
Cette étape est absolument indispensable, elle va permettre de définir le tablespace de données et le tablespace temporaire
de l'utilisateur. Cette étape est indispensable pour éviter toute écriture dans le tablespace SYSTEM (qui est assigné si aucun tablespace par défaut n'est défini).
Vous devrez définir ces deux tablespaces avec les options DEFAULT TABLESPACE pour le tablespace de données et TEMPORARY TABLESPACE pour le tablespace temporaire.
Voici un exemple d'utilisation :
...
DEFAULT
TABLESPACE
tbs_user TEMPORARY
TABLESPACE
tmp_user
...
1-7. Syntaxe complète de l'ordre CREATE USER▲
Voici la structure complète d'un ordre CREATE USER :
Voici une explication de tous les mots clé.
utilisateur :
Login du futur utilisateur (voir paragraphe 1.2)
IDENTIFIED BY mot de passe :
Active l'authentification par la base de données avec le mot de passe spécifié.
IDENTIFIED EXTERNALLY :
Active l'authentification par le système d'exploitation
IDENTIFIED GLOBALLY AS 'nom externe' :
Active l'authentification par un LDAP externe.
DEFAULT TABLESPACE nom du tablespace :
Permet d'attribuer un TABLESPACE de données par défaut à l'utilisateur.
TEMPORATY TABLESPACE nom du tablespace :
Permet d'attribuer un TABLESPACE temporaire par défaut à l'utilisateur.
QUOTA options ON nom du tablespace :
Permet de définir le quota d'espace attribué à l'utilisateur sur un TABLESPACE précis.
PROFILE nom du profil :
Permet d'attribuer un profil limitant les ressources système de l'utilisateur.
PASSWORD EXPIRE :
Permet de faire expirer le mot de passe de l'utilisateur pour que celui-ci le change lors de la
première connexion.
ACCOUNT LOCK / UNLOCK :
Permet d'activer ou de désactiver un compte utilisateur.
1-8. Exemples▲
Voici quelques exemples de création d'utilisateurs Oracle :
CREATE
USER
Helyos
IDENTIFIED
BY
mypass1
DEFAULT
TABLESPACE
tbs_users
QUOTA 10M ON
tbs_users
TEMPORARY
TABLESPACE
tmp_users
QUOTA 5M ON
tmp_users
QUOTA 5M ON
tools
PROFILE
app_user
PASSWORD
EXPIRE
;
L'utilisateur helyos aura donc le mot de passe mypass1. Son TABLESPACE par défaut sera tbs_users avec un quota de 10Mo, son tablespace
temporaire sera le TABLESPACE tmp_users avec un quota de 5M. Il aura aussi la possibilité d'utiliser le TABLESPACE tools avec un quota de 5Mo.
Il devra changer son mot de passe lors de la connexion et se verra attribuer le profil app_user.
CREATE
USER
"OPS$GALAXY\HELYOS"
IDENTIFIED
BY
mypass1
DEFAULT
TABLESPACE
tbs_users
QUOTA 10M ON
tbs_users
TEMPORARY
TABLESPACE
tmp_users
QUOTA 5M ON
tmp_users
QUOTA 5M ON
tools
PROFILE
app_user
PASSWORD
EXPIRE
;
L'utilisateur aura les mêmes attributs que celui de l'exemple précédent mais celui-ci sera authentifié par le système d'exploitation. De plus il est important de savoir que seul l'utilisateur HELYOS du domaine GALAXY pourra se connecter avec ce nouvel utilisateur, et que l'utilisateur local HELYOS ne pourra pas utiliser ce nouveau compte.
2. Modifications d'un utilisateur▲
2-1. Modification de son mot de passe▲
Si vous souhaitez changer le mot de passe d'un utilisateur voici la commande que vous devrez utiliser.
ALTER
USER
<
login de l'utilisateur > IDENTIFIED BY < nouveau mot de passe >
Cette commande permettra de modifier le mot de passe d'un utilisateur. Si vous avez utilisé
la fonction de vérification de mots de passe fournie par Oracle (script UTLPWDMG.SQL) ou que vous
avez crée la votre, vous allez devoir utiliser une option supplémentaire : l'option REPLACE avec l'ancien mot de passe
afin que celui-ci puisse être passé à la fonction de vérification de mot de passe.
Exemple :
ALTER
USER
<
login de l'utilisateur > IDENTIFIED BY < nouveau mot de passe > REPLACE < ancien mot de passe >
Pour les DBAs :
Vous pouvez parfois, en tant que DBA, être confronté au type de problème suivant :
Devoir utiliser le compte d'un autre utilisateur mais sans changer son mot de passe. (Par exemple cet utilisateur dispose d'une procédure qui
ne pourra être lancée que par cet utilisateur car la condition a été codée dans la procédure).
Voici une méthode qui va vous permettre de prendre la place de cet utilisateur sans changer son mot de passe.
-- On se connecte en DBA
sqlplus system/<
mot de passe>
@<
chaine de connexion >
-- On fait un export text des informations de l'utilisateur dont on souhaite prendre la place
SPOOL
c:\saveuser.sql
SELECT
'ALTER USER '
||
username ||
' IDENTIFIED BY VALUES '''
||
password
||
''' ;'
FROM
dba_users
WHERE
username=
'< login du user >'
;
SPOOL
OFF
-- On change son mot de pass
ALTER
USER
<
login du user
>
IDENTIFIED
BY
tata;
-- On se connecte en tant que l'autre utilisateur
CONNECT
<
login du user
>/
tata
-- On fait nos actions
...
-- On execute l'ordre SQL contenu dans saveuser.sql
ALTER
USER
<
login du user
>
IDENTIFIED
BY
VALUES
'< mot de passe crypté >'
;
Cette méthode vous permet de prendre la place d'un utilisateur temporairement sans connaitre son mot de passe, et sans que cela soit visible par l'utilisateur. L'option IDENTIFIED BY VALUES est une des nombreuses commandes cachées d'Oracle.
2-2. Modification des quotas▲
La syntaxe de modification des quotas d'un utilisateur n'est pas différente de la syntaxe utilisée lors de la création de l'utilisateur.
Cependant il est important de noter que si un utilisateur disposait de 1Mo de quotas sur un TABLESPACE et qu'il en avait utilisé la moitié avec des tables, et bien si vous lui modifiez son quota à 0Mo sur ce TABLESPACE cela n'impliquera pas que ses tables soient vidées ou supprimées, mais cela sinifiera que ses
tables ne pourront pas s'allouer d'extents supplémentaires.
Exemple :
ALTER
USER
scott QUOTA 15M ON
tbs_users QUOTA 0M ON
tools;
2-3. Modification des TABLESPACES par défaut▲
La syntaxe à utiliser n'est pas différente de la syntaxe de création. Cette commande vous permettra de modifier les TABLESPACES par défaut de l'utilisateur.
Cela ne déplacera pas les objets des anciens TABLESPACES.
Exemple :
ALTER
USER
scott DEFAULT
TABLESPACE
tbs_users2 TEMPORARY
TABLESPACE
tmp2;
2-4. Modification du status d'un utilisateur▲
Pour des raisons de sécurité, il peut parfois être utile de vérouiller le compte d'un utilisateur pour éviter que
celui-ci soit utilisé de manière frauduleuse. Cette méthode peut aussi être utilisée pour organiser
des objets dans un schéma sans que l'on puisse utiliser l'utilisateur en question.
Voici un exemple d'activation et de verrouillage d'un compte utilisateur :
-- Verrouillage du compte
ALTER
USER
scott ACCOUNT
LOCK
;
-- Activation du compte
ALTER
USER
scott ACCOUNT
UNLOCK
;
2-5. Syntaxe complète de l'ordre ALTER USER▲
Voici la structure complète d'un ordre ALTER USER :
Voici une explication de tous les mots clé.
utilisateur :
Login du futur utilisateur
IDENTIFIED BY mot de passe :
Active l'authentification par la base de données avec le mot de passe spécifié.
IDENTIFIED EXTERNALLY :
Active l'authentification par le système d'exploitation
IDENTIFIED GLOBALLY AS 'nom externe' :
Active l'authentification par un LDAP externe.
DEFAULT TABLESPACE nom du tablespace :
Permet d'attribuer un TABLESPACE de données par défaut à l'utilisateur.
TEMPORATY TABLESPACE nom du tablespace :
Permet d'attribuer un TABLESPACE temporaire par défaut à l'utilisateur.
QUOTA options ON nom du tablespace :
Permet de définir le quota d'espace attribué à l'utilisateur sur un TABLESPACE précis.
PROFILE nom du profil :
Permet d'attribuer un profil limitant les ressources système de l'utilisateur.
PASSWORD EXPIRE :
Permet de faire expirer le mot de passe de l'utilisateur pour que celui-ci le change lors de la
première connexion.
ACCOUNT LOCK / UNLOCK :
Permet d'activer ou de désactiver un compte utilisateur.
DEFAULT ROLE :
Ces options vont permettre de définir lors de la modification d'un utilisateur son ou ses rôles par défaut.
Ces rôles seront activés lors de la connexion de l'utilisateur.
Nous ne traiterons pas ici la clause proxy.
3. Suppressions d'un utilisateur▲
Nous allons maintenant voir comment supprimer un utilisateur et son schéma.
Il est important de noter qu'un utilisateur actuellement connecté à la base ne pourra pas être supprimé.
Par exemple :
SQL
>
DROP
USER
scott CASCADE
;
DROP
USER
scott CASCADE
*
ERREUR à la ligne 1
:
ORA-
01940
: impossible supprimer un utilisateur qui est connecté
3-1. Supprimer un utilisateur avec un schéma vide▲
Pour cette méthode nous utiliserons juste la commande DROP USER.
Cette méthode est la méthode par défaut. Il faut juste vérifier que le schéma de l'utilisateur soit vide lors de
l'exécution de cette commande. Sinon il en résultera l'erreur suivante :
SQL
>
DROP
USER
scott;
DROP
USER
scott
*
ERREUR à la ligne 1
:
ORA-
01922
: CASCADE
à spécifier pour supprimer 'SCOTT'
Cette erreur est due au fait que Oracle ne supprimera pas les objets à l'intérieur du schéma de l'utilisateur et
qu'il vous faudra utiliser l'option CASCADE du chapitre suivant.
Voici un exemple de suppression d'un utilisateur ayant un schéma vide :
SQL
>
DROP
USER
test;
Utilisateur supprimé.
3-2. Supprimer un utilisateur avec son schéma ▲
Lorsque vous souhaitez supprimer un utilisateur et tous les objets de son schéma, vous devez alors utiliser l'option CASCADE.
Cette option va automatiquement effacer tout les objets contenus dans le schéma de l'utilisateur.
Si le schéma contient des tables, Oracle effacera alors automatiquement toute les contraintes d'intégrités des tables et
toutes les contraintes d'intégrités dans les schémas d'autres utilisateurs qui faisaient références aux contraintes UNIQUE et PRIMARY KEY
du schéma qui est en cours de suppression.
Oracle supprimera aussi tous les index liés aux colonnes des tables, ainsi que tout les triggers, les types de données (avec l'option FORCE).
Oracle invalidera mais ne supprimera pas les objets contenus dans d'autres schéma mais qui faisaient références au schéma supprimé.
Par contre, Oracle ne supprimera pas les rôles créés par l'utilisateur.
Voici un exemple de suppression d'un utilisateur et de son schéma :
SQL
>
DROP
USER
scott CASCADE
;
Utilisateur supprimé.
3-3. Syntaxe complète de l'ordre DROP USER▲
Voici la structure complète d'un ordre DROP USER :
Voici une explication de tous les mots clé.
utilisateur :
Login de l'utilisateur à supprimer.
CASCADE :
Permet de supprimer le contenu du schéma de l'utilisateur qui sera supprimé.
4. Informations sur les utilisateurs▲
Nous allons ici voir les différentes vues qui seront utile pour obtenir des informations sur les utilisateurs que nous avons créés.
Les vues qui nous seront utiles sont les vues DBA_USERS et DBA_TS_QUOTAS (voire les vues USER_USERS qui contiendra les informations de l'utilisateur courant et USER_TS_QUOTAS qui contiendra les
informations sur les quotas de l'utilisateur courant).
4-1. Descriptif de la vue DBA_USERS▲
Colonne | Type | Description |
---|---|---|
USERNAME | VARCHAR2(30) NOT NULL | Login de l'utilisateur |
USER_ID | NUMBER NOT NULL | ID de l'utilisateur |
PASSWORD | VARCHAR2(30) | Mot de passe encrypté |
ACCOUNT_STATUS | VARCHAR2(32) NOT NULL | Statut du compte: OPEN : ouvert EXPIRED : Doit changer son mot de passe EXPIRED(GRACE) : Doit changer son mot de passe (en période de grace) LOCKED(TIMED) : Vérouillé pour un certain temps LOCKED : Vérouillé de manière définitive EXPIRED & LOCKED(TIMED) : Doit changer son mot de passe et vérouillé pour un certain temps EXPIRED(GRACE) & LOCKED(TIMED) : Doit changer son mot de passe (en période de grace) et vérouillé pour un certain temps EXPIRED & LOCKED : Vérouillé et doit changer son mot de passe EXPIRED(GRACE) & LOCKED : Doit changer son mot de passe (en période de grace) et vérouillé |
LOCK_DATE | DATE | Date à laquelle le compte a été vérouillé si le status est LOCKED |
EXPIRY_DATE | DATE | Date du prochain changement de mot de passe |
DEFAULT_TABLESPACE | VARCHAR2(30) NOT NULL | TABLESPACE par défaut pour les données |
TEMPORARY_TABLESPACE | VARCHAR2(30) NOT NULL | TABLESPACE par défaut pour les données temporaires |
CREATED | DATE NOT NULL | Date de création de l'utilisateur |
PROFILE | VARCHAR2(30) NOT NULL | Nom du profil assigné à l'utilisateur |
INITIAL_RSRC_CONSUMER_GROUP | VARCHAR2(30) | Nom du groupe de consomation des ressources |
EXTERNAL_NAME | VARCHAR2(4000) | Nom exterieur (pour option IDENTIFIED GLOBALLY) |
4-2. Descriptif de la vue DBA_TS_QUOTAS▲
Colonne | Type | Description |
---|---|---|
TABLESPACE_NAME | VARCHAR2(30) NOT NULL | Nom du TABLESPACE |
USERNAME | VARCHAR2(30) NOT NULL | Nom de l'utilisateur à qui ce quota est assigné |
BYTES | NUMBER | Nombre de Bytes alloué actuellement à l'utilisateur sur le TABLESPACE |
MAX_BYTES | NUMBER | Quota maximal en bytes de l'utilisateur sur ce TABLESPACE (contiendra -1 si il n'y a pas de limite) |
BLOCKS | NUMBER NOT NULL | Nombre de blocs alloué actuellement à l'utilisateur sur le TABLESPACE |
MAX_BLOCKS | NUMBER | Quota maximal en blocs de l'utilisateur sur ce TABLESPACE (contiendra -1 si il n'y a pas de limite) |