续加oracle表空间,续: [转]Oracle 表空间与数据文件

续 http://nvd11.blog.163.com/blog/static/20001831220127710369356/

五、数据文件

数据文件是数据库中最重要的一个要求,是所有的数据库内容存放的地方

datafile是按照表空间为组织单位,表空间的构成是按照段区块为层次---数据文件的逻辑结构

datafile就是表空间的物理文件。

datafile中的内容是通过dbwr把data buffer cache中的dirty buffer data写入的

dbwr触发:

ckpt触发,dirty buffer到一定量的时候,data buffer caceh的内存空间快用完了

查询空闲内存空间超时,表空间offline/read only,表的drop, truncate开始执备份表空间的时候*/

--查看数据文件

SQL> select file# ,name,status,enabled,bytes/1024/1024 M from v$datafile;

FILE# NAMESTATUSENABLEDM

---------- -------------------------------------------------- ------- ---------- ----------

1 /u01/app/oracle/oradata/orcl/system01.dbfSYSTEMREAD WRITE490

2 /u01/app/oracle/oradata/orcl/undotbs01.dbfONLINEREAD WRITE30

3 /u01/app/oracle/oradata/orcl/sysaux01.dbfONLINEREAD WRITE250

4 /u01/app/oracle/oradata/orcl/users01.dbfONLINEREAD WRITE5

5 /u01/app/oracle/oradata/orcl/example01.dbfONLINEREAD WRITE100

6 /u01/app/oracle/oradata/orcl/tbs1_1.dbfONLINEREAD WRITE100

7 /u01/app/oracle/oradata/orcl/tbs1_2.dbfONLINEREAD WRITE60

SQL> select tablespace_name,file_name,user_bytes/1024/1024 M from dba_data_files;

TABLESPACE_NAMEFILE_NAMEM

------------------------------ ------------------------------------------------------- ----------

USERS01/u01/app/oracle/oradata/orcl/users01.dbf4.9375

SYSAUX/u01/app/oracle/oradata/orcl/sysaux01.dbf249.9375

UNDOTBS1/u01/app/oracle/oradata/orcl/undotbs01.dbf29.9375

SYSTEM/u01/app/oracle/oradata/orcl/system01.dbf489.9375

EXAMPLE/u01/app/oracle/oradata/orcl/example01.dbf99.9375

TBS1/u01/app/oracle/oradata/orcl/tbs1_1.dbf99.9375

TBS1/u01/app/oracle/oradata/orcl/tbs1_2.dbf59.9375

--数据文件的增加与删除

--为TBS1增加一个数据文件

SQL> alter tablespace tbs1 add datafile '/u01/app/oracle/oradata/orcl/tbs1_3.dbf' size 10m autoextend on;

--还有一种创建表空间时不指定大小,而是重用一个存在的dbf要用resue参数,reuse是把原有的结构拿来用,里面的数据是用不了的,因为早都没有了。

--删表空间中的数据文件,g以后的版本才用以下功能,在之前版本的就只能把表空间给干掉。

SQL> alter tablespace tbs1 drop datafile '/u01/app/oracle/oradata/orcl/tbs1_3.dbf';

--有数据的数据文件不能删。第一个不能删,如果要删就把表空间干掉,数据文件中有数据写入的文件也不能删除,如下

SQL> alter tablespace tbs1 drop datafile 7;--7是v$datafile中的file#.

alter tablespace tbs1 drop datafile 7

*

ERROR at line 1:

ORA-03262: the file is non-empty

/*

数据文件的日志记录

只有temp表空间是nologing别的都是logging的

日志记录的几种模式

nologin并不是不记录日志而是记录的很少

logging正常记录日志信息

force logging记录的日志比logging还详细记录信息非常多用于DG data guard容灾的情况*/

SQL> select tablespace_name ,logging,force_logging from dba_tablespaces;

TABLESPACE_NAMELOGGINGFOR

------------------------------ --------- ---

SYSTEMLOGGINGNO

UNDOTBS1LOGGINGNO

SYSAUXLOGGINGNO

TEMPNOLOGGING NO

USERS01LOGGINGNO

EXAMPLENOLOGGING NO

TBS1LOGGINGNO

--修改表空间中日志文件记录的方式

SQL> alter tablespace tablespace_name nologging | logging | force logging;

SQL> alter tablespace example logging;

Tablespace altered.

SQL> alter tablespace tbs1 force logging;

Tablespace altered.

SQL> select tablespace_name ,logging,force_logging from dba_tablespaces;

TABLESPACE_NAMELOGGINGFOR

------------------------------ --------- ---

SYSTEMLOGGINGNO

UNDOTBS1LOGGINGNO

SYSAUXLOGGINGNO

TEMPNOLOGGING NO

USERS01LOGGINGNO

EXAMPLELOGGINGNO

TBS1LOGGINGYES

/*

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值