首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 操作系统 > Linux > 如何通过只读方式更改Oracle数据文件位置
【标  题】:如何通过只读方式更改Oracle数据文件位置
【关键字】:Oracle
【来  源】:http://www.cublog.cn/u/19637/showart.php?id=206592

如何通过只读方式更改Oracle数据文件位置

来源:作者:eygle
出处:http://www.eygle.com/blog [HowTo]

在Oracle数据库中,有多种方式可以移动数据文件的位置,之前介绍过几种方法:Oracle HowTo:在非归档模式下如何更改数据文件位置Oracle HowTo:如何移动数据文件的位置?
以上两种方法,可能在要求较高的24x7系统中不适合采用,因为会使表空间长时间不可用
特别是当表空间数据文件巨大时,物理拷贝可能需要较长的时间。

本文推荐另外一种方法,可以做一个折中,以下是一个简单的步骤说明:
1.将表空间置于只读
只读状态可以使数据仍然可为用户访问.
alter tablespace tablespace_name read only;
2.物理拷贝文件
3.将表空间offline
alter tablespace tablespace_name offline;
4.rename数据文件
alter database rename file 'old_dir_file' to 'new_dir_file';
5.将表空间联机
alter tablespace tablespace_name online;
6.将表空间置于read write模式
alter tablespace tablespace_name read write;
以下是示范步骤:

1.将表空间置于只读状态
[oracle@jumper oracle]$ sqlplus "/ as sysdba"

SQL*Plus: Release 9.2.0.4.0 - Production on Sat Nov 12 21:10:49 2005

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.


Connected to:
Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
With the Partitioning option
JServer Release 9.2.0.4.0 - Production

SQL> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            /opt/oracle/oradata/conner/archive
Oldest online log sequence     7
Next log sequence to archive   10
Current log sequence           10
SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------
/opt/oracle/oradata/conner/system01.dbf
/opt/oracle/oradata/conner/undotbs01.dbf
/opt/oracle/oradata/conner/users01.dbf

SQL> alter tablespace users read only;

Tablespace altered.

2.物理拷贝文件
SQL> ! cp /opt/oracle/oradata/conner/users01.dbf /opt/oracle/oradata/users01.dbf

3.将表空间脱机
SQL> alter tablespace users offline;

Tablespace altered.

4.修改文件名称
SQL> alter database rename file '/opt/oracle/oradata/conner/users01.dbf' to '/opt/oracle/oradata/users01.dbf';

Database altered.

5.将表空间联机
SQL> alter tablespace users online;

Tablespace altered.

6.将表空间置于读写状态
SQL> alter tablespace users read write;

Tablespace altered.

SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------
/opt/oracle/oradata/conner/system01.dbf
/opt/oracle/oradata/conner/undotbs01.dbf
/opt/oracle/oradata/users01.dbf

SQL> 

-----
玄奘之路 心灵里程的回顾:【上一篇】
一篇比较全的gnus编码介绍文章:【下一篇】
【相关文章】
  • oracle数据库入侵时常用的操作命令
  • Oracle存储过程中去掉重复字符串的函数
  • Oracle 参数绑定性能实践
  • 学生笔记(Oracle第二章)
  • oracle10g在FC6下的安装
  • Oracle 9i 分析函数参考手册(转)
  • ORACLE DBA不定时更新小知识(如有不同请指正)
  • SQL与ORACLE的对比
  • oracle命令
  • oracle常用命令1
  • 【随机文章】
  • 六个枕头
  • 台湾人眼中的上海
  • 技嘉主板编号规则
  • 简易 NAT 服务器--转台湾鸟哥私房菜
  • 在Linux上安装Matlab6.1
  • SQL Server 2005 - 如何在预存程序中调用另外一个预存程序
  • QQ安全之如何防止qq代码攻击
  • 大数运算(五)
  • FreeHand 创建页面卷边效果(1)
  • CorelDRAW 绘制线段及曲线
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.