重庆思庄Oracle、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1163|回复: 0
打印 上一主题 下一主题

12c新特性之二:在线进行数据文件移动

[复制链接]
跳转到指定楼层
楼主
发表于 2017-4-1 17:51:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 郑全 于 2017-4-1 17:53 编辑

比如我们的users表空间对应的数据文件和其他数据文件 不在一个位置,觉得维护起来不方便,
如下:

SQL> select name from v$datafile;

NAME
-------------------------------------------------------

D:\ORACLE\ORADATA\ORCL\SYSTEM01.DBF
D:\ORACLE\ORADATA\ORCL\SYSAUX01.DBF
D:\ORACLE\ORADATA\ORCL\UNDOTBS01.DBF
D:\ORACLE\USERS01.DBF

SQL>


其他文件都在D:\ORACLE\ORADATA\ORCL\,而users数据文件在d:\oracle\,我们想移动该数据文件,12c以前版本,我们在移动之前,必须把这个数据文件必须offline,然后拷贝到目标位置,之后,在修改数据库字典信息,最后,让数据文件在线.如果是windows,还可能出现原始文件无法移动的问题,现在在12c里面,我们只需要一条命令即可以搞定:


会话一:
SQL> conn hr/hr
已连接。
SQL> create table emp tablespace users as select * from employees;

表已创建。

SQL> COL SEGMENT_Name for a30
SQL> select segment_name,tablespace_name from user_segments where segment_name='EMP'

SEGMENT_NAME                   TABLESPACE_NAME
------------------------------ ------------------------------
EMP                            USERS

SQL> update emp set salary=salary*1.10 where employee_id=100;

已更新 1 行。

SQL>





会话二:
  另外开一个窗口:
  SQL> alter database move datafile 'D:\ORACLE\USERS01.DBF' to 'D:\ORACLE\ORADATA\ORCL\USERS01.DBF';

数据库已更改。

  SQL>  在看文件,已经移动了,如果看操作系统上,文件也已经移动到新的位置.
  SQL> select name from v$datafile;

  NAME
  -----------------------------------------------------

  D:\ORACLE\ORADATA\ORCL\SYSTEM01.DBF
  D:\ORACLE\ORADATA\ORCL\SYSAUX01.DBF
  D:\ORACLE\ORADATA\ORCL\UNDOTBS01.DBF
  D:\ORACLE\ORADATA\ORCL\USERS01.DBF

  再回到会话一:
  SQL> select employee_id,salary from emp where employee_id=100;

  EMPLOYEE_ID     SALARY
  ----------- ----------
          100      26400

  SQL> r
    1* select employee_id,salary from emp where employee_id=100

  EMPLOYEE_ID     SALARY
  ----------- ----------
        100      26400

  SQL> commit;

  提交完成。

  SQL>

  我们看到,会话一并没有提交事务,可以看出移动数据文件确实是在线作的,不需要在移动数据文件之前,需要把数据文件离线,然后在在线.





分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2024-5-3 09:27 , Processed in 0.084373 second(s), 19 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表