
Oracle 12c: 表空间管理、用户角色与临时Undo详解
下载需积分: 15 | 836KB |
更新于2024-08-12
| 5 浏览量 | 举报
收藏
"Oracle 12c中的表空间管理、用户和角色、临时Undo功能"
在Oracle 12c数据库中,表空间管理是数据库架构的重要组成部分,它用于组织和管理数据库的数据存储。表空间是数据库逻辑存储结构的最高级别,可以包含一个或多个数据文件。以下是关于Oracle 12c中表空间管理、用户和角色以及临时Undo功能的详细说明:
一、创建表空间
创建表空间是分配物理存储空间给数据库对象的第一步。表空间由一个或多个数据文件组成,这些数据文件实际存储数据。一般创建表空间的语句如下:
```sql
CREATE TABLESPACE ts_test1 DATAFILE '/u01/app/oracle/oradata/PRODCDB/PDBPROD2/ts_test101.dbf' SIZE 100M;
```
如果使用Oracle Managed Files (OMF) 格式,可以简化创建过程:
```sql
ALTER SYSTEM SET DB_CREATE_FILE_DEST='/u01/app/oracle/oradata/PRODCDB/PDBPROD2/';
CREATE TABLESPACE ts_test2;
```
查询表空间的详细信息,可以使用`DBMS_METADATA.GET_DDL`包:
```sql
SELECT dbms_metadata.get_ddl('TABLESPACE', 'TS_TEST2') FROM DUAL;
```
二、管理表空间
管理表空间包括添加数据文件、设置默认表空间以及查看数据库属性。例如,添加数据文件到已存在的表空间:
```sql
ALTER TABLESPACE ts_test2 ADD DATAFILE '/u01/app/oracle/oradata/PRODCDB/PDBPROD2/ts_test202.dbf' SIZE 10M AUTOEXTEND ON NEXT 10M MAXSIZE 30G;
```
将表空间设置为数据库或Pluggable Database (PDB) 的默认表空间:
```sql
ALTER DATABASE DEFAULT TABLESPACE ts_test2;
ALTER PLUGGABLE DATABASE pdb1 DEFAULT TABLESPACE pdb1_tbs;
```
通过查询`CDB_PROPERTIES`视图,可以查看默认表空间设置:
```sql
COL PROPERTY_NAME FORMAT A30
COL PROPERTY_VALUE FORMAT A30
COL DESCRIPTION FORMAT A50
SELECT * FROM cdb_properties WHERE PROPERTY_NAME LIKE '%DEFAULT%TABLESPACE' ORDER BY con_id;
```
三、用户和角色
在Oracle 12c中,用户分为公用用户和本地用户。公用用户可以在多租户容器数据库 (CDB) 中创建,并在整个CDB中可见。而本地用户则只在特定的PDB中可见。
1. 公用用户通常以“c##”前缀标识,但可以通过以下方式创建不以“c##”开头的公用用户:
```sql
CREATE USER my_public_user IDENTIFIED BY password DEFAULT TABLESPACE my_tablespace;
GRANT CONNECT TO my_public_user;
```
2. 本地用户创建时不需要“c##”前缀:
```sql
CREATE USER my_local_user IDENTIFIED BY password DEFAULT TABLESPACE my_tablespace;
GRANT CONNECT TO my_local_user;
```
四、临时Undo功能
临时Undo是Oracle 12c引入的新特性,允许在执行临时操作(如排序、并行查询等)时,为临时表和索引分配单独的Undo空间。通过设置`temp_undo_enabled`参数,可以启用这个功能:
```sql
ALTER SYSTEM SET temp_undo_enabled=TRUE SCOPE=BOTH;
```
启用后,系统会自动为每个会话分配临时Undo空间,以优化性能并防止临时操作对常规Undo表空间的影响。
总结来说,Oracle 12c的表空间管理涉及创建、扩展和配置表空间,用户和角色管理涉及公用和本地用户的创建及权限分配,临时Undo功能则提供了一种优化性能的手段,特别适合处理大量临时数据的场景。理解并熟练掌握这些概念对于管理和维护Oracle 12c数据库至关重要。
相关推荐










DB实践
- 粉丝: 7155
最新资源
- C#堆栈功能实现及其工作原理解析
- 利用.NET打造Flash风格的amchart数据图形
- ComCapture2_Setup.exe:高效COM口串口通讯与调试工具
- Windows平台反编译工具使用指南与解析
- AutoCAD数据转换为Shape文件的详细步骤
- 如何查看和分析网页源代码
- VC初学者解决图形打印难题指南
- DWR在Web界面开发中的应用和实践
- C语言实现的二分查找算法详解
- 掌握Java开发:打造多功能计算器
- 深入理解F#:函数式编程与分布式应用
- 深入探索JSP, Struts与Hibernate技术整合应用
- 掌握单片机基础:硬件结构与指令系统教程
- VC编程实现:界面设计的完整技巧集锦
- 快速掌握JavaScript:五日全攻略
- C语言库函数速查手册:深入了解与应用
- CMMI3级项目RSKM、PI、DAR过程域全面培训
- JSP实现网上书店项目及MySQL数据库应用教程
- Delphi7完整版快速报表生成器下载
- 探索ASP技术在政府网站建设中的应用
- 全面职场求职指南:简历+面试题+求职信大全
- 深入浅出Struts2+Spring+Hibernate框架实践
- Flashvml2.0:提升Web图表制作效率的神器
- 深入探讨8位图像处理程序及其CDIB类的应用