一、Oracle之用户和表空间

同MySQL一样,Oracle的简介就不说来,直入主题,大家都时间有限~

1、使用系统用户登录Oracle

  • 系统用户:
    • sys,system
    • sysman
    • scott(默认密码是tiger)
  • 使用system用户登录
[username/password] [@server] [as sysdba|sysoper]
# orcl为服务名
system/root @orcl as sysdba
  • 查看登录用户
show user;
  • dba_users数据字典
    • 数据字典是数据库提供的表,用于查看数据库的信息
desc dba_users;
  • 启用scott用户
alter user username account [lock/unlock];
  • 使用scott用户登录 SQL Plus
connect scott/tiger;

在sys,system,sysman,scott四个用户权限中,scott用户最低。

2、表空间

  • 数据库与表空间的关系:
    • 表空间实际上是数据库的逻辑存储空间,我们可以把表空间理解为在数据中开辟的一个空间,用于存放数据对象,一个数据库可以由多个表空间构成
  • 表空间与数据文件的关系:
    • 表空间实际上是由一个或多个数据文件来构成的,数据文件的位置和大小可以自定义
  • 表空间的分类
    • 永久表空间
    • 临时表空间
    • UNDO表空间
  • 查看用户的表空间
    • dba_tablespaces数据字典
    • user_tablespaces数据字典
    • dba_users数据字典
    • user_users数据字典
desc dba_tablespaces;
select tablespace_name form dba_tablespaces;
desc dba_users;
select default_tablespace,temporary_tablespace form dba_user where username='SYSTEM';
  • 设置用户的默认或临时表空间
ALTER USER username
DEFAULT|TEMPORARY
TABLESPACE tablespace_name

在Oracle数据库安装完成后,system用户的默认表空间和临时表空间分别是system、temp。

3、创建表空间

CREATE [TEMPORARY] TABLESPACE
tablespace_name
TEMPFILE|DATAFILE 'xx.dbf' SIZE xx
# 创建永久表空间
create tablespace test1_tablespace
datafile 'test1file.dbf' size 10m;
# 创建临时表空间
create temporary tablespace temptest1_tablespace
tempfile 'temp1file.dbf' size 10m;
# 查看表空间文件路径
select file_name form dba_data_files where tablespace_name = 'TEST1_TABLESPACE';

4、修改表空间

  • 设置表空间联机或脱机状态
  • 联机状态可以查看数据字典和设置读写状态,脱机状态不能使用了
ALTER TABLESPACE tablespace_name
ONLINE|OFFLINE;
  • 设置只读或可读写状态
ALTER TABLESPACE tablespace_name
READ ONLY|READ WRITE;
  • 添加数据文件
ALTER TABLESPACE tablespace_name
ADD DATAFILE 'xx.dbf' SIZE xx;
  • 删除数据文件
ALTER TABLESPACE tablespace_name
DROP DATAFILE 'filename.dbf'
  • 更改system用户默认表空间的语句
alter user  system default tablespace xxx

5、删除表空间

DROP TABLESPACE tablespace_name
[INCLUDING CONTENTS]

你可能感兴趣的:(一、Oracle之用户和表空间)