随笔 - 832  文章 - 2  评论 - 31  阅读 - 167万

Oracle 12c创建表空间、用户

一、前言

    Oracle 12c 中新增加了可插入数据库的概念,即PDB(Pluggable Database),允许一个容器数据库 ,即CDB (Container Database)承载多个可插入数据库PDB 。CDB相当于操作系统,调用并管理各个PDB ,PDB 相当于真正提供业务需求的数据库实例。在PDB中创建用户与之前相同,但在CDB中创建用户与之前有所不同,下面会详细说明。
查看数据库当前使用的容器
SELECT SYS_CONTEXT('USERENV','CON_NAME') FROM dual;

二、创建表空间


    CDB与PDB之间的表空间是不能相互使用的,需要单独创建

1. 创建临时表空间
CREATE TEMPORARY tablespace 表空间名称
tempfile 'D:\app\oracle\oradata\orcl\表空间名称.dbf' -- 设置存放位置,必须为.dbf文件
SIZE 50m -- 分配初始大小
autoextend ON -- 开启自动扩增
NEXT 50m maxsize 20480m -- 设置当空间不够时每次增加的大小和最大值
extent management LOCAL;
2. 创建数据表空间
CREATE tablespace 表空间名称
logging -- 开启日志
datafile 'D:\app\oracle\oradata\orcl\表空间名称.dbf' -- 设置存放位置,必须为.dbf文件
SIZE 50m -- 分配初始大小
autoextend ON -- 开启自动扩增
NEXT 50m maxsize 20480m -- 设置当空间不够时每次增加的大小和最大值
extent management LOCAL;
三、创建用户
1. 创建用户
-- CDB下创建用户需要加上c##或C##才能创建成功(c##xxx整体是用户名)
CREATE USER c##xxx IDENTIFIED BY 密码
DEFAULT tablespace 数据表空间
TEMPORARY tablespace 临时表空间;
-- PDB下创建用户按之前的方式就行
CREATE USER 用户名 IDENTIFIED BY 密码
DEFAULT tablespace 数据表空间
TEMPORARY tablespace 临时表空间;

2. 赋予权限

GRANT CONNECT,resource,dba TO 用户名;
四、删除表空间、用户

1. 删除表空间
复制代码
-- 删除空的表空间,但是不包含物理文件
DROP tablespace 表空间名称;

-- 删除空表空间,包含物理文件
DROP tablespace 表空间名称 INCLUDING datafiles;

-- 删除非空表空间,但是不包含物理文件
DROP tablespace 表空间名称 INCLUDING contents;

--删除非空表空间,包含物理文件
DROP tablespace 表空间名称 INCLUDING contents AND datafiles;

--如果其他表空间中的表有外键等约束关联到了本表空间中表的字段,需要加上CASCADE CONSTRAINTS
DROP tablespace 表空间名称 INCLUDING contents AND datafiles CASCADE CONSTRAINTS;
复制代码
2. 删除用户
-- 只是删除此用户
DROP USER 用户名;

-- 会删除此用户及此用户关联的所有表和视图
DROP USER 用户名 CASCADE;


posted on   小破孩楼主  阅读(584)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

点击右上角即可分享
微信分享提示