Oracle数据库建立表空间、用户以及授权

Posted by Elton's Blog on January 10, 2010

• 用system用户登录。system用户默认就有DBA的权限

sqlplus system/[email protected]

• 查看数据文件存放位置

select file_name from dba_data_files;

FILE_NAME
--------------------------------------------------------------------------------
/Users/oracle/oradata/orcl/users01.dbf
/Users/oracle/oradata/orcl/sysaux01.dbf
/Users/oracle/oradata/orcl/undotbs01.dbf
/Users/oracle/oradata/orcl/system01.dbf
/Users/oracle/oradata/orcl/example01.dbf

• 建立临时表空间

create temporary tablespace decernis_temp
tempfile '/Users/oracle/oradata/orcl/decernis_temp01.dbf'
size 32m
autoextend on 
next 32m maxsize 2048m
extent management local;

Tablespace created.

• 建立用户数据表空间

create tablespace decernis_data
logging
datafile '/Users/oracle/oradata/orcl/decernis_data01.dbf'
size 32m 
autoextend on
next 32m maxsize 2048m
extent management local; 

Tablespace created.

• 创建用户

create user decernis identified by password
default tablespace decernis_data
temporary tablespace decernis_temp;

• 授予权限

grant dba,connect,resource to decernis;

注意,上面语句中,制定数据文件路径的时候,一定要使用单引号,否则会出现“ORA-00972: identifier is too long”的错误。

**如果最后一行不添加,则用户没有表空间分配EXTENT的权限,将会会出现“ORA-01950: no privileges on tablespace ”的错误。**

以后,这个用户所操作的表,就自动分配到这个表空间了。