Ludzie pragną czasami się rozstawać, żeby móc tęsknić, czekać i cieszyć się z powrotem.
For information about password files, see the Oracle8 Server Administrator’s Guide.
Controlling Database Access 24-7
User Tablespace Settings and Quotas
As part of every user’s security domain, the database administrator can set
several options regarding tablespace usage:
•
the user’s default tablespace
•
the user’s temporary tablespace
•
space usage quotas on tablespaces of the database for the user
Default Tablespace
When a user creates a schema object without specifying a tablespace to contain the object, Oracle places the object in the user’s default tablespace. You set a user’s default tablespace when the user is created; you can change it after the user has been created.
Temporary Tablespace
When a user executes a SQL statement that requires the creation of a
temporary segment, Oracle allocates that segment in the user’s temporary
tablespace.
Tablespace Access and Quotas
You can assign to each user a tablespace quota for any tablespace of the database. Doing so can accomplish two things:
•
You allow the user to use the specified tablespace to create objects,
provided that the user has the appropriate privileges.
•
You can limit the amount of space allocated for storage of a the’s objects
in the specified tablespace.
By default, each user has no quota on any tablespace in the database.
Therefore, if the user has the privilege to create some type of schema object, he or she must also have been either assigned a tablespace quota in which to
create the object or been given the privilege to create that object in the schema of another user who was assigned a sufficient tablespace quota.
You can assign two types of tablespace quotas to a user: a quota for a specific amount of disk space in the tablespace (specified in bytes, kilobytes, or
megabytes), or a quota for an unlimited amount of disk space in the
24-8 Oracle8 Server Concepts
tablespace. You should assign specific quotas to prevent a user’s objects from consuming too much space in a tablespace.
Tablespace quotas and temporary segments have no effect on each other:
•
Temporary segments do not consume any quota that a user might
possess.
•
Temporary segments can be created in a tablespace for which a user has
no quota.
You can assign a tablespace quota to a user when you create that user, and you can change that quota or add a different quota later.
Revoke a user’s tablespace access by altering the user’s current quota to zero.
With a quota of zero, the user’s objects in the revoked tablespace remain, but the objects cannot be allocated any new space.
The User Group PUBLIC
Each database contains a user group called PUBLIC. The PUBLIC user group
provides public access to specific schema objects (tables, views, and so on) and provides all users with specific system privileges. Every user automatically
belongs to the PUBLIC user group.
As members of PUBLIC, users may see (select from) all data dictionary tables
prefixed with USER and ALL. Additionally, a user can grant a privilege or a
role to PUBLIC. All users can use the privileges granted to PUBLIC.
You can grant (or revoke) any system privilege, object privilege, or role to
PUBLIC. See Chapter 25, “Privileges and Roles” for more information on
privileges and roles. However, to maintain tight security over access rights,
grant only privileges and roles of interest to all users to PUBLIC.
Granting and revoking some system and object privileges to and from PUBLIC
can cause every view, procedure, function, package, and trigger in the
database to be recompiled.
PUBLIC has the following restrictions:
•
You cannot assign tablespace quotas to PUBLIC, although you can
assign the UNLIMITED TABLESPACE system privilege to PUBLIC.
•
You can create database links and synonyms as PUBLIC (using
CREATE PUBLIC DATABASE LINK/SYNONYM), but no other object
Controlling Database Access 24-9
can be owned by PUBLIC. For example, the following statement is not legal:
CREATE TABLE public.emp . . . ;
Note: Rollback segments can be created with the keyword PUBLIC, but these are not owned by the PUBLIC user group. All rollback segments are owned
by SYS. See Chapter 2, “Data Blocks, Extents, and Segments”, for more
information about rollback segments.
User Resource Limits and Profiles
You can set limits on the amount of various system resources available to each user as part of a user’s security domain. By doing so, you can prevent the
uncontrolled consumption of valuable system resources such as CPU time.
This resource limit feature is very useful in large, multiuser systems, where
system resources are very expensive. Excessive consumption of these
resources by one or more users can detrimentally affect the other users of the database. In single-user or small-scale multiuser database systems, the system resource feature is not as important, because users’ consumption of system
resources is less likely to have detrimental impact.
You manage a user’s resource limits with his or her profile—a named set of