Oracle 表空间的日常维护与管理

1、创建数据表空间

查询有关表和视图:【使用版本Oracle 11gR2】

1.查看表空间信息

dba_tablespaces

v$tablespace

2.查看数据文件

dba_data_files

v$datafile

3.查看临时表空间

dba_temp_files

v$tempfile

当前的数据文件位置

SQL> col file_name format a60;
SQL> select file_name from dba_data_files;
FILE_NAME
------------------------------------------------------------
+DGSYSTEM/kyeupdb/datafile/system.271.978829205
+DGSYSTEM/kyeupdb/datafile/sysaux.272.978829265
+DGSYSTEM/kyeupdb/datafile/undotbs1.273.978829323
+DGSYSTEM/kyeupdb/datafile/users.275.978829391
+DGSYSTEM/kyeupdb/datafile/ts_example.277.978855421
+DGSYSTEM/kyeupdb/datafile/kye01.dbf
6 rows selected.
  • 创建单个数据文件的表空间
SQL> select tablespace_name from dba_tablespaces;

TABLESPACE_NAME
------------------------------
SYSTEM
SYSAUX
UNDOTBS1
TEMP
USERS
TS_EXAMPLE
KYE_TBS01 7 rows selected.
SQL> create tablespace kye_tbs02 datafile '+DGSYSTEM/kyeupdb/datafile/kye02.dbf' size 2M
2 autoextend off
3 segment space management auto; Tablespace created.

autoextend off —不自动扩展

segment space management auto —自动段管理 推荐

  • 创建多个数据文件
SQL> CREATE TABLESPACE kye_tbs03 LOGGING DATAFILE
'+DGSYSTEM/kyeupdb/datafile/kye03_1.dbf' SIZE 2M AUTOEXTEND OFF,
'+DGSYSTEM/kyeupdb/datafile/kye03_2.dbf' SIZE 2M AUTOEXTEND OFF
EXTENT MANAGEMENT LOCAL
SEGMENT SPACE MANAGEMENT AUTO; Tablespace created. SQL> create tablespace kye_tbs04 logging datafile
2 '+DGSYSTEM/kyeupdb/datafile/kye04_1.dbf' size 2M autoextend on next 1M maxsize 20M,
3 '+DGSYSTEM/kyeupdb/datafile/kye04_2.dbf' size 2M autoextend on next 1M maxsize 20M
4 extent management local
5 segment space management auto; Tablespace created.
  • 创建大表空间
SQL> create bigfile tablespace kye_bigtbs1 datafile
2 '+DGSYSTEM/kyeupdb/datafile/kye_bigfile1.dbf' size 1G; Tablespace created.

2、创建临时表空间

SQL> create temporary tablespace kye_tmptbs1
2 tempfile '+DGSYSTEM/kyeupdb/datafile/kye_tmptbs1.dbf'
3 size 5M autoextend off; Tablespace created.

3、创建 UNDO 表空间

SQL> create undo tablespace kye_undotbs1
2 datafile '+DGSYSTEM/kyeupdb/datafile/kye_undo1.dbf'
3 size 10m autoextend off; Tablespace created.

4、表空间的扩展与修改大小

  • 表空间的扩展
--- 查看此时创建的表空间

SQL> col name format a30;
SQL> select * from v$tablespace; TS# NAME INC BIG FLA ENC
---------- ------------------------------ --- --- --- ---
0 SYSTEM YES NO YES
1 SYSAUX YES NO YES
2 UNDOTBS1 YES NO YES
3 TEMP NO NO YES
4 USERS YES NO YES
5 TS_EXAMPLE YES NO YES
7 KYE_TBS01 YES NO YES
8 KYE_TBS02 YES NO YES
9 KYE_TBS03 YES NO YES
10 KYE_TBS04 YES NO YES
11 KYE_BIGTBS1 YES YES YES TS# NAME INC BIG FLA ENC
---------- ------------------------------ --- --- --- ---
12 KYE_TMPTBS1 NO NO YES
13 KYE_UNDOTBS1 YES NO YES 13 rows selected.
SQL> col file_name format a55;
SQL> select file_name from dba_data_files; FILE_NAME
-------------------------------------------------------
+DGSYSTEM/kyeupdb/datafile/system.271.978829205
+DGSYSTEM/kyeupdb/datafile/sysaux.272.978829265
+DGSYSTEM/kyeupdb/datafile/undotbs1.273.978829323
+DGSYSTEM/kyeupdb/datafile/users.275.978829391
+DGSYSTEM/kyeupdb/datafile/ts_example.277.978855421
+DGSYSTEM/kyeupdb/datafile/kye01.dbf
+DGSYSTEM/kyeupdb/datafile/kye02.dbf
+DGSYSTEM/kyeupdb/datafile/kye03_1.dbf
+DGSYSTEM/kyeupdb/datafile/kye03_2.dbf
+DGSYSTEM/kyeupdb/datafile/kye04_1.dbf
+DGSYSTEM/kyeupdb/datafile/kye04_2.dbf FILE_NAME
-------------------------------------------------------
+DGSYSTEM/kyeupdb/datafile/kye_bigfile1.dbf
+DGSYSTEM/kyeupdb/datafile/kye_undo1.dbf 13 rows selected. SQL> alter tablespace kye_tbs01 add datafile '+DGSYSTEM/kyeupdb/datafile/kye01_1.dbf' size 2m autoextend off; Tablespace altered. SQL> alter tablespace kye_tmptbs1 add tempfile '+DGSYSTEM/kyeupdb/datafile/kye_tmptbs1_1.dbf' size 2m autoextend off; Tablespace altered.
  • 修改大小

SQL> col name format a55;
SQL> select name,bytes/1024/1024 from v$tempfile; NAME BYTES/1024/1024
------------------------------------------------------- ---------------
+DGSYSTEM/kyeupdb/tempfile/temp.274.978829379 1024
+DGSYSTEM/kyeupdb/datafile/kye_tmptbs1.dbf 5
+DGSYSTEM/kyeupdb/datafile/kye_tmptbs1_1.dbf 2 SQL> alter database tempfile '+DGSYSTEM/kyeupdb/datafile/kye_tmptbs1.dbf' resize 6m; Database altered. SQL> select name,bytes/1024/1024 from v$tempfile; NAME BYTES/1024/1024
------------------------------------------------------- ---------------
+DGSYSTEM/kyeupdb/tempfile/temp.274.978829379 1024
+DGSYSTEM/kyeupdb/datafile/kye_tmptbs1.dbf 6
+DGSYSTEM/kyeupdb/datafile/kye_tmptbs1_1.dbf 2

5、表空间重命名

SQL> alter tablespace kye_bigtbs1 rename to kye_bigtbs;

Tablespace altered.

6、表空间的删除

drop tablespace 表空间名字;--直接删除表空间,而不删除对应的数据文件

drop tablespace 表空间名字 including contents and datafiles; --加上该选项 则连同数据文件 一起删除了(常用

SQL>  drop tablespace kye_tbs04 including contents and datafiles;

Tablespace dropped.

SQL> drop tablespace kye_bigtbs including contents and datafiles cascade constraints;

Tablespace dropped.

7、更改表空间的读写模式

SQL> alter tablespace kye_tbs03 read only;

Tablespace altered.

SQL> alter tablespace kye_tbs03 read write;

Tablespace altered.

也可以修改表:

SQL> create table kye001 (id int,name varchar2(22));

Table created.

SQL> alter table kye001 read only;

Table altered.

SQL> alter table kye001 read write;

Table altered.

8、更改表空间的在线模式

alter tablespace kye_tbs01 offline;

Tablespace altered.

SQL> alter tablespace kye_tbs01 online;

Tablespace altered.

在上面的测试中可以看出,直接可以设置表空间离线,但是在下面的操作中可以对数据文件直接设置成离线吗?

可以对数据文件进行操作:

alter database datafile 9 offline;
alter database datafile '+DGSYSTEM/kyeupdb/datafile/kye03_2.dbf' online;
alter database datafile 9 offline for drop;

在对数据文件操作的时候会出现错误:

除非启用了介质恢复, 否则不允许立即脱机.在NOARCHIVELOG模式,不可以立即离线数据文件。

Oracle 表空间的日常维护与管理的更多相关文章

  1. Oracle表空间管理

    oracle表空间相关常用命令小结: 1.ALTER DATABASE SET DEFAULT BIGFILE TABLESPACE;              //修改表空间数据文件类型 2.ALT ...

  2. Oracle表空间的管理方式

    解释说明:表空间是一个逻辑概念:=> oracle 逻辑概念段区块管理方式: number one => tablespace number two=> segments Oracl ...

  3. Oracle表空间概述及其基本管理

    最近在工作中遇到有同事对Oracle表空间的理解有问题,所以写了这篇文章.我会从概念,管理及特别需要关注的点等几个维度对表空间进行一些介绍.本文以介绍表空间为主,涉及到的其他概念不展开描述.有问题的地 ...

  4. oracle表空间维护常用命令

    ---查看表空间的名字及文件所在位置: select tablespace_name, file_id, file_name,round(bytes/(1024*1024),0) total_spac ...

  5. oracle 表空间总结

                           表空间总结  一.认识表空间 1:表空间概念: 表空间是数据库中最大的逻辑单位,Oracle数据库采用表空间将相关的逻辑组件组合在一起,一个Oracle数 ...

  6. oracle 表空间tablespace

    一.Oracle 表空间的组成 Everoone knows Oracle数据库真正存放数据的是数据文件,Oracle表空间是逻辑上的概念,他在物理上是并不存在的,把多个DataFile合并到一起就是 ...

  7. Oracle表空间,用户,用户授权

    一:Oracle表空间 1,Oracle表空间与SQL Server文件组对比 SQL Server的文件组(文件组包括若干MDF,NDF数据文件)对我们来说并不陌生,前段时间我在博客“怎样玩转千万级 ...

  8. Oracle表空间(tablespaces)

    http://www.cnblogs.com/fnng/archive/2012/08/12/2634485.html 我们知道oarcle数据库真正存放数据的是数据文件(data files),Oa ...

  9. oracle表空间相关

    数据库被划分为若干个表空间,每个表空间内保存一组相关的逻辑对象.每个表空间由一个或者多个数据文件组成.oracle中的数据逻辑上存储在表空间里,物理上存储在属于该表空间的数据文件里.表空间是用户和物理 ...

随机推荐

  1. $.ajax同步/异步(async:false/true)

    虽然说ajax用来执行异步请求的比较多,但有时还是存在需要同步执行的情况的. 比如:我需要通过ajax取执行请求以返回一个值,这个值在ajax后面是需要使用到的,这时就不能用异步请求了.这时候就需要使 ...

  2. ABAP事件分类

    1.报表事件 INITIALIZATION. START-OF-SELECTION. END-OF-SELECTION. 2.选择屏幕事件 在INITIALIZATION和START-OF-SELEC ...

  3. 键盘各键对应的ASCII码值(包括鼠标和键盘所有的键)

    ESC键 VK_ESCAPE (27)回车键: VK_RETURN (13)TAB键: VK_TAB (9)Caps Lock键: VK_CAPITAL (20)Shift键: VK_SHIFT ($ ...

  4. python(一)

    1 python安装 先安装python,之后安装pycharm 创建工程时需要关联解释器路径: 2 python运行 先编译后解释 .py--.pyc文件---解析----结果 .pyc的目的是减少 ...

  5. sql优化实战:从1353秒到135秒(删除索引+修改数据+重建索引)

    最近在优化日结存储过程,日结存储过程中大概包含了20多个存储过程. 发现其有一个存储过程代码有问题,进一步发现结存的数据中有一个 日期字段business_date 是有问题的,这个字段对应的类型是v ...

  6. 打印机 Microsoft Print to PDF 所需的驱动程序 Microsoft Print To PDF 未知。登录之前,请与管理员联系,安装驱动程序。

    这个问题发生后,我觉得很疑惑,因为服务器上确定没有安装打印机.那么打印机是从哪里来的呢? 通过百度搜索,发现网上的一个帖子解答了我的疑惑.原帖地址:http://blog.chinaunix.net/ ...

  7. Android(java)学习笔记125:保存数据到SD卡 (附加:保存数据到内存)

    1. 如果我们要想读写数据到SD卡中,首先必须知道SD的路径: File file = new File(Environment.getExternalStorageDirectory()," ...

  8. Vector 容器简单介绍

    # Vector STL简要介绍 关于STL中的vector容器,以下做一些相关介绍. #### vector 简要概述 vector 称作向量类,属于容器类,实现了动态的数组,用于元素数量变化的对象 ...

  9. ios常见错误之 Failed to instantiate the default view controller for UIMainStoryboardFile 'Main' - perhaps the designated entry point is not set?

    Failed to instantiate the default view controller for UIMainStoryboardFile 'Main' - perhaps the desi ...

  10. SQL Server将列以分隔符分割后存到临时表

    begin if object_id('tempdb..#t') is not null drop table #t; create table #t ( filepath ) ); declare ...