zoukankan      html  css  js  c++  java
  • 在ORACLE中移动数据库文件

    转载:

    在ORACLE中移动数据库文件

    --ORACLE数据库由数据文件,控制文件和联机日志文件三种文件组成。

    --由于磁盘空间的变化,或者基于数据库磁盘I/O性能的调整等,

    --我們可能会考虑移动数据库文件。

    --下面以LUNIX平台为例,分别讨论三种数据库文件的移动方法。

    一.移动数据文件:

    -- 可以用ALTER DATABASE,ALTER TABLESPACE两种方法移动数据文件。

    1. ALTER DATABASE方法;

    -- 用此方法,可以移动任何表空间的数据文件。

    STEP 1. 下数据库:

    $ sqlplus /nolog

    SQL> CONNECT INTERNAL;

    SQL> SHUTDOWN;

    SQL> EXIT;

    STEP 2.用操作系统命令移动数据文件:

    -- 将数据文件 'test.ora' 从/ora/oracle/data1目录移动到/ora/oracle/data2目录下:

    $ mv /ora/oracle/data1/test.ora /ora/oracle/data2

    STEP 3. Mount数据库,用ALTER DATABASE命令将数据文件改名:

    $ sqlplus /nolog

    SQL> CONNECT INTERNAL;

    SQL> STARTUP MOUNT;

    SQL> ALTER DATABASE RENAME FILE '/ora/oracle/data1/test.ora' TO '/ora/oracle/data2/test.ora';

    STEP 4. 打开数据库:.

    SQL> ALTER DATABASE OPEN;

    SQL>SELECT NAME,STATUS FROM V$DATAFILE;

    2. ALTER TABLESPACE方法:

    -- 用此方法,要求此数据文件既不属于SYSTEM表空间,也不属于含有ACTIVE回滚段或临时段的表空间。

    STEP1. 将此数据文件所在的表空间OFFLINE:

    $ sqlplus /nolog

    SQL> CONNECT INTERNAL;

    SQL> ALTER TABLESPACE test OFFLINE;

    SQL> EXIT;

    STEP2. 用操作系统命令移动数据文件:

    将数据文件 'test.ora' 从/ora/oracle/

    data1目录移动到/ora/oracle/data2目录下:

    $ mv /ora/oracle/data1/test.ora /ora/oracle/data2

    STEP3. 用ALTER TABLESPACE命令改数据文件名:

    $ sqlplus /nolog

    SQL> CONNECT INTERNAL;

    SQL> ALTER TABLESPACE test RENAME DATAFILE '/ora/oracle/data1/test.ora' TO '/ora/oracle/data2/test.ora';

    STEP4. 将此数据文件所在的表空间ONLINE:

    SQL> ALTER TABLESPACE test ONLINE;

    SQL> SELECT NAME,STATUS FROM V$DATAFILE;

    二. 移动控制文件:

    -- 控制文件 在 INIT.ORA文件中指定。移动控制文件相对比较简单,下数据库,

    -- 编辑INIT.ORA,移动控制文件,重启动数据库。

    STEP 1. 下数据库:

    $ sqlplus /nolog

    SQL> CONNECT INTERNAL;

    SQL> SHUTDOWN;

    SQL> EXIT;

    STEP 2.用操作系统命令 移动控制文件:

    --将控制文件'ctl3orcl.ora' 从/ora/oracle/data1目录移动到/ora/oracle/data2目录下:

    $ mv /ora/oracle/data1/ctrlorcl3.ora /ora/oracle/data2

    STEP 3. 编辑INIT.ORA文件:

    INIT.ORA文件的在$ORACLE_HOME/dbs目录下,

    修改参数 "control_files",其中指定移动后的控制文件:

    control_files = (/ora/oracle/data1/ctrlorcl1.ora,/ora/oracle/data1/ctrlorcl2.ora,/ora/oracle/data2/ctrlorcl3.ora)

    STEP 4. 重启动数据库:

    $ sqlplus /nolog

    SQL> CONNECT INTERNAL;

    SQL> STARTUP;

    SQL>SELECT name FROM V$CONTROLFILE;

    SQL> EXIT;

    三. 移动联机日志文件:

    STEP 1. 停数据库:

    $ sqlplus /nolog

    SQL> CONNECT INTERNAL;

    SQL> SHUTDOWN;

    SQL> EXIT;

    STEP 2. 用操作系统命令移动联机日志文件:

    --将联机日志文件'redolog1.ora' 从/ora/oracle/data1目录移动到/ora/oracle/data2目录下:

    $ mv /ora/oracle/data1/redolog1.ora /ora/oracle/data2

    STEP 3. Mount数据库,用ALTER DATABASE 命令改联机日志文件名:.

    $ sqlplus /nolog

    SQL> CONNECT INTERNAL;

    SQL> STARTUP MOUNT ;

    SQL> ALTER DATABASE RENAME FILE '/ora/oracle/data1/redolog1.ora' TO '/ora/oracle/data2/redolog1.ora';

    STEP 4.重启动数据库: .

    SQL> ALTER DATABASE OPEN;

    SQL>SELECT MEMBER FROM V$LOGFILE;

    记录下,方便日常维护

  • 相关阅读:
    实现高效易用的java操作mysql包装
    部分NLuke版本源码更新(2009111)
    ASP.NET Forms验证的安全性问题研究——为什么加密代码需要配置为服务
    VirtualBox 虚拟机 Debian系统上安装Cassandra步骤及遇到的问题
    mysql master/slave 使用感受
    一个不必要的设计
    应对服务器端访问限制的一些办法(Cookie,Session,IP等)
    qq四国军旗2.1 beat03 builde017记牌器开发思路(一)
    MVC与WebForm最大的区别
    dell笔记本的Broadcom 802.11b/g 无线网卡ubuntu 9.10下安装
  • 原文地址:https://www.cnblogs.com/advocate/p/3718486.html
Copyright © 2011-2022 走看看