Oracle 学习笔记

用户与表空间

登录

系统用户
  • sys,system sys用户权限高于system
  • sysman 用户操作企业管理器
  • scott
使用系统用户登录
  • 用户登录
    [username/password] [@server] [as sysdba|sysoper]

在登陆之后可以使用
connect [username/password] [@server] [as sysdba|sysoper]
来切换登录用户。

查看登录用户

  • 查看当前登录用户
    show user

  • dba_user数据自字典,可使用desc命令查看其中包含的内容。在这个数据字典中可以查看dba都包含哪些用户。

启用与锁定用户

  • 启用或锁定用户的语句
    alter user username account [unlock|lock];
    其中的“username”是你要启用的用户名,后面的unlock表示启用这个用户,lock表示锁定这个用户。

表空间

表空间和数据库的关系

表空间是数据库存储的逻辑空间,可以理解成在数据库中开辟的一个空间,在其中存数数据库对象。一个数据库可以有多个表空间。

表空间和数据文件的关系

表空间是由一个或多个数据文件来构成的,数据文件的大小和位置可以由用户自己来定义。在系统中,我们建立的数据库、表、表空间等都是存放在数据文件中的。

表空间的分类

  • 永久表空间
    数据库中表、视图、存数过程等都是存储在永久表空间中。
  • 临时表空间
    主要用户存储数据库操作中中间执行的过程,当执行结束之后存放的内容会被自动释放。
  • UNDO表空间
    用于保存事物所修改的旧值,当我们对一张表进行修改的时候这里会保存修改之前的数据,以便于我们对其进行回滚操作。

查看用户的表空间

dba_tablespaces、user_tablespaces数据字典

dba_tablespaces针对系统管理员级别的用户来查看的数据字典,user_tablespaces是针对普通用户来查看的数据字典。

这里写图片描述

  • SYSTEM 表空间,用于存放sys用户的表、视图以及存储过程,也被称为系统表空间。
  • SYSAUX 表空间,作为example表空间的辅助表空间。
  • EXAMPLE 表空间,用户安装oracle 11g实例的表空间
  • UNDOTBS1 表空间,用户存储撤销信息,属于UNDO类型的表空间。
  • TEEMP 表空间,用户存储sql语句处理的表和索引信息的临时表空间。
  • USERS 表空间,用于存储数据库用户创建的数据库对象,和SYSTEM表孔家差不多,只不过SYSTEM是用于存储系统信息的。
dba_users、user_users数据字典

每一个用户下面都对应着默认表空间和临时表空间,默认情况下只有一个临时表空间TEMP,如果另外需要则需要自行创建。
这里写图片描述

设置用户的默认表空间或临时表空间

ALTER USER username DEFAULT|TEMPORARY TABLESPACE tablespace_name

创建表空间

创建语句

CREATE [TEMPORARY] TABLESPACE tablespace_name TEMPFILE|DATAFILE 'xx.dbf' SIZE xx

dba_data_file数据字典

存放表空间文件的信息。
创建一个临时表空间
这里写图片描述
查看dba_data_files数据字典的结构
这里写图片描述
根据表空间名称查看该表空间的文件名(表空间的名字要大写)
这里写图片描述

临时数据字典是dba_temp_files,使用同上。

修改表空间

修改表空间的状态
  • 设置表空间的联机或脱机状态
    ALTER TABLESPACE tablespace_name ONLINE|OFFLINE;
    做一个测试
    这里写图片描述
    在dba_tablespace数据字典中查看表空间的状态
    这里写图片描述

  • 设置制度或可读写状态
    ALTER TABLESPACE tablespace_name READ ONLY|READ WRITE
    同样在dba_tablespace数据字典中查看该表空间信息。

修改数据文件
  • 增加数据文件
    ALTER TABLESPACE tablespace_name ADD DATAFILE 'xx.dbf' SIZE xx;

  • 删除数据文件
    ALTER TABLESPACE tablespace_name DROP DATAFILE 'filename.dbf';

    在删除表空间数据文件的时候不能删除表空间中的第一个数据文件,如果要删除的话就要把整个的表空间删除掉。

删除表空间

DROP TABLESPACE tablespace_name [INCLUDING CONTENTS];

如果只需要删除表空间而不需要删除表空间文件,只需要中括号之前的;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值