`
cakin24
  • 浏览: 1388998 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

Oracle的表空间

阅读更多

一 表空间概述

1、理解表空间
表空间是数据库的逻辑存储空间
一个数据库可以有多个表空间构成
表空间是由一个或者多个数据文件构成,数据文件的位置和大小可以由用户自己来定义。
2、表空间分类
永久表空间:永久存储对象,例如:表、视图、存储过程
临时表空间:数据库操作过程中中间执行过程,执行完成后,存放的内容就会被自动释放掉,不进行永久性地保存。
UNDO表空间:保存事务修改数据前的数据,用于事务回滚撤销操作。
 
二 查看用户的表空间
1、数据字典
dba_tablespaces:针对系统管理员级别的用户登录之后查看的数据字典。
user_tablespaces:普通用户登录之后查看的数据字典。
dba_users:针对系统管理员级别的用户登录之后查看的数据字典。
user_users:普通用户登录之后查看的数据字典。
实例1:表空间实战
  1. SQL> connect system
  2. 输入口令:
  3. 已连接。
  4. SQL> desc dba_tablespaces
  5. 名称是否为空?类型
  6. -----------------------------------------------------------------------------
  7. TABLESPACE_NAME NOT NULL VARCHAR2(30)
  8. BLOCK_SIZE NOT NULL NUMBER
  9. INITIAL_EXTENT NUMBER
  10. NEXT_EXTENT NUMBER
  11. MIN_EXTENTS NOT NULL NUMBER
  12. MAX_EXTENTS NUMBER
  13. MAX_SIZE NUMBER
  14. PCT_INCREASE NUMBER
  15. MIN_EXTLEN NUMBER
  16. STATUS VARCHAR2(9)
  17. CONTENTS VARCHAR2(9)
  18. LOGGING VARCHAR2(9)
  19. FORCE_LOGGING VARCHAR2(3)
  20. EXTENT_MANAGEMENT VARCHAR2(10)
  21. ALLOCATION_TYPE VARCHAR2(9)
  22. PLUGGED_IN VARCHAR2(3)
  23. SEGMENT_SPACE_MANAGEMENT VARCHAR2(6)
  24. DEF_TAB_COMPRESSION VARCHAR2(8)
  25. RETENTION VARCHAR2(11)
  26. BIGFILE VARCHAR2(3)
  27. PREDICATE_EVALUATION VARCHAR2(7)
  28. ENCRYPTED VARCHAR2(3)
  29. COMPRESS_FOR VARCHAR2(12)
  30. SQL>select tablespace_name from dba_tablespaces;
  31. TABLESPACE_NAME
  32. ------------------------------
  33. SYSTEM
  34. SYSAUX
  35. UNDOTBS1
  36. TEMP
  37. USERS
  38. EXAMPLE
  39. 已选择6行。
SYSTEM:存储system用户的表,视图,存储过程数据对象。也被称为系统表空间。
SYSAUX:作为EXAMPLE的辅助表空间,
UNDOTBS1:存储撤销信息,属于UNDO类型的表空间。
TEMP:属于临时表空间。
USERS:是永久性表空间,用于存储用户创建的数据库对象。
EXAMPLE:安装数据库示例使用的表空间。
实例2:系统用户和普通用户查看表空间的权限不一样
系统用户有查看dba_tablespaces和user_tablespaces数据字典的权限。
普通用户只有查看user_tablespaces数据字典的权限。
  1. SQL> desc user_tablespaces
  2. 名称是否为空?类型
  3. -----------------------------------------------------------------------------
  4. TABLESPACE_NAME NOT NULL VARCHAR2(30)
  5. BLOCK_SIZE NOT NULL NUMBER
  6. INITIAL_EXTENT NUMBER
  7. NEXT_EXTENT NUMBER
  8. MIN_EXTENTS NOT NULL NUMBER
  9. MAX_EXTENTS NUMBER
  10. MAX_SIZE NUMBER
  11. PCT_INCREASE NUMBER
  12. MIN_EXTLEN NUMBER
  13. STATUS VARCHAR2(9)
  14. CONTENTS VARCHAR2(9)
  15. LOGGING VARCHAR2(9)
  16. FORCE_LOGGING VARCHAR2(3)
  17. EXTENT_MANAGEMENT VARCHAR2(10)
  18. ALLOCATION_TYPE VARCHAR2(9)
  19. SEGMENT_SPACE_MANAGEMENT VARCHAR2(6)
  20. DEF_TAB_COMPRESSION VARCHAR2(8)
  21. RETENTION VARCHAR2(11)
  22. BIGFILE VARCHAR2(3)
  23. PREDICATE_EVALUATION VARCHAR2(7)
  24. ENCRYPTED VARCHAR2(3)
  25. COMPRESS_FOR VARCHAR2(12)
  26. SQL>select tablespace_name from user_tablespaces;
  27. TABLESPACE_NAME
  28. ------------------------------
  29. SYSTEM
  30. SYSAUX
  31. UNDOTBS1
  32. TEMP
  33. USERS
  34. EXAMPLE
  35. 已选择6行。
  36. SQL> connect scott
  37. 输入口令:
  38. 已连接。
  39. SQL>select tablespace_name from dba_tablespaces;
  40. select tablespace_name from dba_tablespaces
  41. *
  42. 1行出现错误:
  43. ORA-00942:表或视图不存在
  44. SQL>select tablespace_name from user_tablespaces;
  45. TABLESPACE_NAME
  46. ------------------------------
  47. SYSTEM
  48. SYSAUX
  49. UNDOTBS1
  50. TEMP
  51. USERS
  52. EXAMPLE
  53. 已选择6行。
实例3:普通用户无法查看dba_users
  1. SQL> desc dba_users;
  2. ERROR:
  3. ORA-04043:对象"SYS"."DBA_USERS"不存在
实例4:某一个用户对应着默认表空间和临时表空间
  1. SQL> connect system
  2. 输入口令:
  3. 已连接。
  4. SQL> desc dba_users;
  5. 名称是否为空?类型
  6. -----------------------------------------------------------------------------
  7. USERNAME NOT NULL VARCHAR2(30)
  8. USER_ID NOT NULL NUMBER
  9. PASSWORD VARCHAR2(30)
  10. ACCOUNT_STATUS NOT NULL VARCHAR2(32)
  11. LOCK_DATE DATE
  12. EXPIRY_DATE DATE
  13. DEFAULT_TABLESPACE NOT NULL VARCHAR2(30)
  14. TEMPORARY_TABLESPACE NOT NULL VARCHAR2(30)
  15. CREATED NOT NULL DATE
  16. PROFILE NOT NULL VARCHAR2(30)
  17. INITIAL_RSRC_CONSUMER_GROUP VARCHAR2(30)
  18. EXTERNAL_NAME VARCHAR2(4000)
  19. PASSWORD_VERSIONS VARCHAR2(8)
  20. EDITIONS_ENABLED VARCHAR2(1)
  21. AUTHENTICATION_TYPE VARCHAR2(8)
  22. SQL>select default_tablespace,temporary_tablespace from dba_users where username='SYSTEM';
  23. DEFAULT_TABLESPACE TEMPORARY_TABLESPACE
  24. ------------------------------------------------------------
  25. SYSTEM TEMP
实例5:设置用户的默认或临时表空间
ALTER USER username 
DEFAULT|TEMPORARY
TABLESPACE tablespace_name
  1. SQL> ALTER USER system
  2. 2 DEFAULT TABLESPACE system;
  3. 用户已更改。
  4. SQL>select default_tablespace,temporary_tablespace from dba_users where username='SYSTEM';
  5. DEFAULT_TABLESPACE TEMPORARY_TABLESPACE
  6. ------------------------------------------------------------
  7. SYSTEM TEMP
 
分享到:
评论

相关推荐

    获取oracle表空间脚本

    ### 获取Oracle表空间脚本 #### 背景与需求 在进行数据库备份与恢复的过程中,经常需要获取当前Oracle数据库中的表空间信息及其创建脚本。这样做的目的是为了确保在恢复过程中能够快速重建原有的数据库环境,包括...

    \Oracle 表空间与数据文件

    ### Oracle表空间与数据文件详解 #### 一、Oracle表空间与数据文件的概念 在Oracle数据库中,**表空间**是存储数据的基本单位之一,它是一个或多个数据文件的逻辑集合。表空间提供了数据存储的逻辑视图,而数据...

    Oracle 表空间 收缩

    ### Oracle 表空间收缩详解 #### 一、背景与需求 在Oracle数据库管理过程中,合理地管理和优化存储空间是非常重要的工作之一。有时,我们会遇到这样的情况:某个表空间占用的实际物理空间远大于其实际需要的空间,...

    oracle 表空间创建

    "Oracle 表空间创建" Oracle 表空间创建是 Oracle 数据库中的一种基本操作,它允许用户创建一个或多个表空间,以存储数据库中的数据。表空间是 Oracle 数据库的基本存储单元,每个表空间都可以包含多个数据文件和...

    如何正确的删除Oracle表空间数据文件

    在Oracle数据库管理中,删除表空间数据文件是一项关键操作,涉及到数据的安全性和系统的稳定性。本文将详细介绍如何正确地删除Oracle表空间数据文件,探讨OFFLINE和OFFLINE DROP的区别,以及在操作系统层面删除数据...

    oracle表空间命令语句大全

    Oracle 表空间命令语句大全提供了 Oracle 数据库管理的重要操作,包括建立表空间、建立 UNDO 表空间、建立临时表空间、改变表空间状态、删除表空间、扩展表空间和查看表空间信息等。这些命令对于 Oracle 数据库管理...

    Oracle表空间

    Oracle 表空间 Oracle 表空间是 Oracle 数据库中用于存储表、索引、约束、触发器等对象的逻辑存储单元。它是 Oracle 数据库的基础组件之一,用于管理和存储数据库中的数据。 1. 创建表空间 创建表空间是指在 ...

    ORACLE 表空间的部分操作

    本文将详细介绍Oracle中关于表空间的一些关键操作,包括创建、修改、管理和删除表空间的过程,以及如何处理表空间的在线与离线状态,数据文件的管理,以及表空间的扩展策略。 #### 一、建立表空间 创建表空间是...

    oracle表空间学习整理,包括常用sql

    Oracle数据库系统是企业级数据管理的重要工具,其中表空间(Tablespace)是数据库存储结构的基础单元。本篇文章将深入探讨Oracle表空间的概念、作用、创建方法以及常用的SQL语句,帮助你更好地理解和管理数据库资源...

    创建ORACLE表空间

    ### 创建Oracle表空间知识点 #### 一、Oracle表空间概述 在Oracle数据库中,表空间是逻辑存储单元,用于组织和管理数据文件。一个表空间可以包含多个数据文件,而一个数据文件只能属于一个表空间。Oracle中的表...

    oracle表空间变动注意事项

    在Oracle数据库管理与维护过程中,表空间(tablespace)的操作是一项非常重要的工作。表空间是Oracle数据库中的逻辑存储单元,用于组织和管理数据文件。本文将详细介绍关于Oracle表空间变动时需要注意的关键点,特别...

    Oracle表空间备份及还原

    本文将深入探讨Oracle表空间的备份与恢复,这是数据库管理中至关重要的环节。 首先,了解Oracle中的表空间(Tablespace)概念。表空间是Oracle数据库中逻辑存储结构的基本单位,它由一个或多个数据文件组成,用于...

    六分钟学会创建Oracle表空间的步骤[转]

    标题与描述均提到了“六分钟学会创建Oracle表空间的步骤”,这暗示了文章旨在提供一个快速学习如何在Oracle数据库中创建表空间的教程。Oracle表空间是数据库中用于存储数据的一个逻辑容器,每个表空间由一个或多个...

    oracle表空间不足报错的解决

    oracle表空间不足报错的解决 。。。。。。。。。。。。。。。。。。。。。。

    oracle表空间详解

    Oracle 表空间详解 Oracle 表空间是 Oracle 数据库中一个非常重要的概念,它是数据库中存储空间的逻辑概念。由于 Oracle 数据库可以存储大量的数据,但是数据文件大小受操作系统的限制,而过大的数据文件对数据的...

    oracle表空间碎片整理

    利用DBMS_SPACE包对Oracle 表碎片进行监控与清理,

    Oracle 表空间与数据文件

    Oracle 表空间与数据文件 Oracle 表空间是 Oracle 数据库中一个逻辑集合,包含一个或多个数据文件。表空间是 Oracle 数据库中的一个逻辑存储对象,用于存储永久段、临时段和回滚段等数据。 Oracle 表空间分类有...

    linux系统下创建oracle表空间和用户权限查询

    linux系统下创建oracle表空间和用户权限查询,安装Oracle系统时可以用到。

    oracle表空间查询命令

    ### Oracle表空间查询与管理命令详解 #### 一、Oracle表空间概述 在Oracle数据库中,表空间是逻辑存储单元,用于组织数据文件。每个Oracle数据库至少包含一个表空间,默认情况下,系统会在创建数据库时自动创建`...

    创建Oracle表空间

    Oracle表空间是数据库的核心组成部分,用于存储数据库对象,如表、索引、视图等。表空间可以是本地管理的,也可以是字典管理的。本地管理的表空间使用位图来跟踪表空间的扩展和空闲空间,并且通常比字典管理的表空间...

Global site tag (gtag.js) - Google Analytics