1.表空间分类:
(1)临时表空间:存放临时数据
(2)数据表空间:又称为用户表空间,用来存放永久数据(不删除永久存在)
(3)日志表空间:用来存放日志信息
一般情况下,用户使用时只需要创建数据表空间即可,根据情况决定创建几种表空间
2.表空间创建思路,:
(1)创建表空间,创建用户,给用户设置默认表空间,给用户分配权限
(2)创建表空间, 创建用户并制定默认表空间,跟用户分配权限
注意:表空间的创建只能是管理员用户
3.windows 系统表空间的创建(sql脚本)
create temporary tablespace onlinepay_tmp
tempfile 'C:\oracle\product\10.2.0\oradata\onlinepay0209\onlinepay_temp01.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local;
创建数据库表空间
create tablespace onlinepay
logging
datafile 'C:\oracle\product\10.2.0\oradata\onlinepay0209\onlinepay01.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local;
创建用户并分配表空间
create user zichen identified by root
default tablespace onlinepay
temporary tablespace online_tmp;
给用户分配权限
GRANT connect,resource, exp_full_database ,imp_full_database to zichen;
4.aix系统下表空间的创建(sql脚本)
创建临时表空间
create temporary tablespace onlinepay_tmp
tempfile '.\u01\app\oracle\product\11.2.0\db_1\oradata\orcl\onlinepay_temp01.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local;
创建数据库表空间
create tablespace onlinepay
logging
datafile '.\u01\app\oracle\product\11.2.0\db_1\oradata\orcl\onlinepay01.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local;
create user jenminzhang identified by jenminzhang
default tablespace onlinepay
temporary tablespace onlinepay_tmp;
给用户分配权限
GRANT connect,resource, exp_full_database ,imp_full_database to jenminzhang;
5.创建过程中应该注意问题:
(1)创建表空间时需要注意它的存放路径(存放路径为 oradata目录下的目标数据库目录):
windows下一般路径为:oracle\product\10.2.0\oradata\数据库名称\name01.dbf (要的创建的表空间名称+01.dbf)
aix 下一般路径为: .\u01\app\oracle\product\11.2.0\db_1\oradata\数据库名称\name01.dbf (要的创建的表空间名称+01.dbf)
在aix 系统下 可以使用 ”find . -name oradata “表示 查询名称为 oradata 的文件夹,返回存放位置
(2)创建用户分配权限应注意分配权限至少要有四种: connect exp_full_database imp_full_database resourse
(3)只有管理员才可以创建(删除)表空间
6.使用过程中应该注意问题:
在使用过程中,数据库配置部分与表空间名称没有关系,配置时只配置数据库服务IP地址和数据库服务名称 ,使用表空间的所有者(目标表空间的管理用户和密码),
用法和以前一样
7. 查看用户与表空间关系
select distinct(owner) ,tablespace_name from dba_segments;
8.删除表空间
drop tablespace 表空名称;
9.权限查看:
查看所有用户
SELECT * FROM DBA_USERS;
SELECT * FROM ALL_USERS;
SELECT * FROM USER_USERS;
查看用户系统权限
SELECT * FROM DBA_SYS_PRIVS;
SELECT * FROM USER_SYS_PRIVS;
查看用户对象或角色权限
SELECT * FROM DBA_TAB_PRIVS;
SELECT * FROM ALL_TAB_PRIVS;
SELECT * FROM USER_TAB_PRIVS;
查看所有角色
SELECT * FROM DBA_ROLES;
查看用户或角色所拥有的角色
SELECT * FROM DBA_ROLE_PRIVS;
SELECT * FROM USER_ROLE_PRIV