Oracle创建表空间及相关操作

376 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

  • 创建表空间分为临时空间和数据表空间
--创建临时表空间   名称 DW_ADS_TEMP
create temporary tablespace DW_ADS_TEMP
tempfile 'D:\oracle\DW_ADS_TEMP.dbf'
size 50m  --初始大小
autoextend on  --自动增长开启
next 50m maxsize 20480m  --每次增长大小和最大空间大小
extent management local; --设置表空间的区管理为本地管理,为的是减少分配extent的时候产生的内部递归sql,提高数据库分配空间的效率.

-- 第2步:创建数据表空间  名称 DW_ADS
create tablespace DW_ADS
logging  --当创建一个数据库对象时将记录日志信息到联机重做日志文件。LOGGING实际上是对象的一个属性,用来表示在创建对象时是否记录REDO日志,包括在做DML时是否记录REDO日志。一般表上不建议使用NOLOGGING,在创建索引或做大量数据导入时,可以使用NOLOGGING
datafile 'D:\oracle\DW_ADS.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;
  • 创建表空间后,需要把表空间分配给指定的用户,如果没有用户需要创建用户
--创建用户并指定表空间 
create user ADS identified by pw123456
default tablespace DW_ADS
temporary tablespace DW_ADS_TEMP;
  • 创建用户后,需要给用户赋予相应的权限
-- 给用户授予权限  
grant connect,resource,dba to ADS;
  • Oracle 中已存在三个重要的角色:connect 角色,resource 角色,dba 角色。

  • CONNECT 角色: –是授予最终用户的典型权利,最基本的 ALTER SESSION –修改会话 CREATE CLUSTER –建立聚簇 CREATE DATABASE LINK –建立数据库链接 CREATE SEQUENCE –建立序列 CREATE SESSION –建立会话 CREATE SYNONYM –建立同义词 CREATE VIEW –建立视图

  • RESOURCE 角色: –是授予开发人员的 CREATE CLUSTER –建立聚簇 CREATE PROCEDURE –建立过程 CREATE SEQUENCE –建立序列 CREATE TABLE –建表 CREATE TRIGGER –建立触发器 CREATE TYPE –建立类型

  • DBA 角色:拥有全部特权,是系统最高权限,只有 DBA 才可以创建数据库结构,并且系统权限也需要 DBA 授出,且 DBA 用户可以操作全体用户的任意基表,包括删除。