oracle移动数据文件11g,Oracle 11g笔记——调整表空间和数据文件的大小、移动数据文件、联机重做日志文件、控制文件...

一、调整表空间和数据文件的大小

1、调整表空间大小

alter database datafile '/u01/app/oracle/oradata/rmanrep/users01.dbf' resize 15m;

2、调整表空间大小为允许自动扩展

SQL>alter database datafile '/u01/app/oracle/oradata/rmanrep/users01.dbf'

autoextend on

next 20M

maxsize 1g;

注:autoextend设为on时,允许扩展数据文件,设为OFF时,不允许扩展

next :分配给数据文件的下一个磁盘空间量的大小,单位:K、M、G、T

maxsize :设为unlimited时,数据文件的大小是无限的;大文件表空间,最大为128TB;具有32K块的小文件表空间,数据文件最大为128GB。单位:K、M、G、T

3、增加表空间,将数据文件放至users表空间

SQL>alter tablespace users add datafile '/u03/oradata/users02.dbf'

size 50m

autoextend on

next 10m

maxsize 200m;

4、从表空间中删除数据文件,以前的版本有以下三个方法:

(1)容忍该数据文件

(2)缩减该数据文件并关闭AUTOEXTEND

(3)创建新的表空间,将所有的对象移动至新的表空间,并且删除原来的表空间

目前版本,可使用EM Database Control的Reorganize

5、使用alter tablespace调整大文件表空间的大小

create bigfile tablespace dmarts

datafile '/u05/oradata/dmarts.dbf' size 750m

autoextend on next 100m maxsize unlimited

extent management local

segment space management auto;

修改大小,注:大文件的表空间只有一个数据文件,不需要指定数据文件名,并可用alter tablespace

alter tablespace dmarts resize 1g;

二、移动数据文件

1、使用ALTER DATABASE移动数据文件

a.作为SYSDBA连接至数据库,并且关闭实例

b.使用操作系统命令移动数据文件

c.以MOUNT模式打开数据库

d.使用alter database改变对数据库中数据文件的引用

e.以OPEN模式打开数据库

f.对包括控制文件的数据库执行增量备份或完整备份

例:将表空间XPORT的数据文件从文件系统/u04移动至文件系统/u06:

sqlplus / as sysdba

SQL>select d.name,t.name

from v$datafile d join v$tablespace t using(ts#)

where t.name='XPORT';

查询后显示的数据文件名为:/u04/oradata/xport.dbf

a.关闭实例

SQL>shutdown immediate;

b.移动数据文件,以“!”转义字符。

SQL>! mv /u04/oradata/xport.dbf /u06/oradata

c.以MOUNT模式启动数据库,从而在不需要打开数据文件的情况下就可以使用控制文件:

SQL>startup mount

d.改变控制文件中的路径名引用,以将其指向数据文件的新位置:

SQL>alter database rename file '/u04/oradata/xport.dbf' to 'u06/oradata/xport.dbf';

e.alter database open;

f. 建立更新过的控制文件的备份副本:

SQL>alter database backup controlfile to trace;

2、使用ALTER TABLESPACE移动数据文件

如果希望移动的数据文件是某个表空间的一部分,而该表空间不是SYSTEM、SYSAUX、活动的撤销表空间或临时表空间,则推荐使用ALTER TABLESPACE的方法。

原因:除了其数据文件将被移动的表空间外,所有用户在整个操作期间都可以使用数据库的剩余部分,比较少的中断时间。

a.使用alter tablespace权限的账户,对表空间进行脱机处理:

SQL>alter tablespace xport offline;

b.移动数据文件

SQL>! mv /u04/oradata/xport.dbf /u06/oradata

c.使用alter tablespace改变对数据库中数据文件的引用

SQL>alter database rename file '/u04/oradata/xport.dbf' to 'u06/oradata/xport.dbf';

d.将表空间返回到联机状态

SQL>alter tablespace xport online;

三、移动联机重做日志文件

1、查看重做日志文件

SQL>select group#,member from v$logfile order by group#,member;

显示结果为:

1

/u01/app/oracle/oradata/redo01.log

1

/u05/oradata/redo01.log

2

/u01/app/oracle/oradata/redo02.log

2

/u05/oradata/redo02.log

3

/u01/app/oracle/oradata/redo03.log

3

/u05/oradata/redo03.log

注:有三个日志文件是在/u01/app/oracle/oradata中,此目录为oracle安装目录,需要移至别的目录,以消除写入日志文件与访问Oracle组件之间的争用问题。

SQL>shutdown immediate;

SQL>! mv /u01/app/oracle/oradata/redo0[1-3].log /u04/oradata

SQL>startup mount

SQL>alter database rename file '/u01/app/oracle/oradata/redo01.log' to '/u04/oradata/redo01.log';

SQL>alter database rename file '/u01/app/oracle/oradata/redo02.log' to '/u04/oradata/redo02.log';

SQL>alter database rename file '/u01/app/oracle/oradata/redo03.log' to '/u04/oradata/redo03.log';

SQL>alter database open;

SQL>select group#,member from v$logfile order by group#,member;

显示结果为:

1

/u04/oradata/redo01.log

1

/u05/oradata/redo01.log

2

/u04/oradata/redo02.log

2

/u05/oradata/redo02.log

3

/u05/oradata/redo03.log

3

/u05/oradata/redo03.log

注:重做日志文件不再和Oracle软件竞争I/O,/u04与/u05之间多元复用了重做日志文件。

四、移动控制文件

1、在使用初始参数文件时,移动控制文件类似于:移动数据文件或重做日志文件。

过程:关闭实例、使用操作系统命令移动文件、重新启动实例

在使用服务器参数文件(SPFILE)时,该过程稍有不同。需要改变初始文件参数CONTROL_FILES

SQL>select name,value from v$spparameter where name='control_files';

显示结果为:

control_files

/u01/app/oracle/oradata/control01.log

control_files

/u01/app/oracle/oradata/control02.log

control_files

/u01/app/oracle/oradata/control03.log

SQL>show parameter control_files

SQL>alter system set control_files='/u02/oradata/control01.log','/u02/oradata/control02.log','/u02/oradata/control03.log' scope=spfile;

SQL>shutdown immediate

SQL>! mv /u01/app/oracle/oradata/control01.log /u02/oradata

SQL>! mv /u01/app/oracle/oradata/control02.log /u03/oradata

SQL>! mv /u01/app/oracle/oradata/control03.log /u04/oradata

SQL>startup

至此已将3个控制文件移动至单独的文件系统,不再位于具有Oracle软件的卷上,如果包含一个控制文件的卷失败,那么其他两个卷包含更新的控制文件。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值