下面是一个测试过程

1。首先创建裸设备:
root@ultra66 # cd /opt/app/oradata/test             
root@ultra66 # ls
control01.ctl  control03.ctl  redo04.log     system01.dbf   tools01.dbf    users01.dbf
control02.ctl  indx01.dbf     redo05.log     temp01.dbf     undotbs01.dbf
root@ultra66 # ln -s /dev/rdsk/c0t0d0s3 hts.dbf
root@ultra66 # ls -l
total 747634
-rw-r-----   1 oracle   oinstall 1613824 May 26 08:46 control01.ctl
-rw-r-----   1 oracle   oinstall 1613824 May 26 08:46 control02.ctl
-rw-r-----   1 oracle   oinstall 1613824 May 26 08:46 control03.ctl
lrwxrwxrwx   1 root     other         18 May 26 08:46 hts.dbf -> /dev/rdsk/c0t0d0s3
-rw-r-----   1 oracle   oinstall 15736832 May 26 07:05 indx01.dbf
-rw-r-----   1 oracle   oinstall 10486272 May 26 07:05 redo04.log
-rw-r-----   1 oracle   oinstall 10486272 May 26 08:45 redo05.log
-rw-r-----   1 oracle   oinstall 199237632 May 26 08:14 system01.dbf
-rw-r-----   1 oracle   oinstall 10493952 May 26 06:50 temp01.dbf
-rw-r-----   1 oracle   oinstall 10493952 May 26 07:05 tools01.dbf
-rw-r-----   1 oracle   oinstall 104865792 May 26 08:44 undotbs01.dbf
-rw-r-----   1 oracle   oinstall 26222592 May 26 07:05 users01.dbf
2。创建一个表空间作为实验文件
root@ultra66 # su - oracle
Sun Microsystems Inc.   SunOS 5.8       Generic Patch   February 2004
You have new mail.
ultra66% sqlplus /nolog

SQL*Plus: Release 9.2.0.1.0 - Production on 星期四 5月 26 08:47:18 2005

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

SQL> conn /as sysdba
Connected.

SQL> create tablespace test datafile '/opt/app/oradata/test/ht1.dbf' size 6M;

Tablespace created.

3。使用alter database create datafile ... as ...来迁移,首先要把datafile offline

SQL> alter database create datafile '/opt/app/oradata/test/ht1.dbf' as '/opt/app/oradata/test/hts.dbf';
alter database create datafile '/opt/app/oradata/test/ht1.dbf' as '/opt/app/oradata/test/hts.dbf'
*
ERROR at line 1:
ORA-01182: cannot create database file 6 - file is in use or recovery
ORA-01110: data file 6: '/opt/app/oradata/test/ht1.dbf'

SQL> alter database datafile '/opt/app/oradata/test/ht1.dbf' offline;
alter database datafile '/opt/app/oradata/test/ht1.dbf' offline
*
ERROR at line 1:
ORA-01145: offline immediate disallowed unless media recovery enabled

SQL> alter tablespace test offline;

Tablespace altered.

SQL> alter database create datafile '/opt/app/oradata/test/ht1.dbf' as '/opt/app/oradata/test/hts.dbf';

Database altered.

4。检查一下

SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------------
/opt/app/oradata/test/system01.dbf
/opt/app/oradata/test/undotbs01.dbf
/opt/app/oradata/test/indx01.dbf
/opt/app/oradata/test/tools01.dbf
/opt/app/oradata/test/users01.dbf
/opt/app/oradata/test/hts.dbf

6 rows selected.

5。把表空间online,需要首先recover

SQL> alter tablespace test online;
alter tablespace test online
*
ERROR at line 1:
ORA-01113: file 6 needs media recovery
ORA-01110: data file 6: '/opt/app/oradata/test/hts.dbf'

SQL> alter database recover datafile 6;

Database altered.

SQL> alter tablespace test online;

Tablespace altered.

SQL>

6。ok,完成

 

使用create datafile... as ...迁移数据文件到裸设备的更多相关文章

  1. oracle 迁移数据文件

    步骤: 1.SQL>SELECT FILE_NAME FROM DBA_DATA_FILES; FILE_NAME --------------------------------------- ...

  2. Postgresql迁移数据文件存放位置

    1. POSTGRESQL的安装 centos7 里面默认的pgsql的版本是 如果想用更高的版本需要执行以下如下的命令 rpm -ivh https://download.postgresql.or ...

  3. Oracle数据文件迁移到裸设备

    本文主要描述如何将Oracle表空间的文件系统形式的数据文件迁移到LV裸设备上. 前提条件 1.oracle运行正常. 2.已使用LVM命令规划好LV文件.如/dev/vgoracle/lvdatat ...

  4. 批量迁移Oracle数据文件,日志文件及控制文件

    有些时候需要将Oracle的多个数据文件以及日志文件重定位或者迁移到新的分区或新的位置,比如磁盘空间不足,或因为特殊需求.对于这种情形可以采取批量迁移的方式将多个数据文件或者日志文件实现一次性迁移.当 ...

  5. Oracle 12C 新特性之在线重命名、迁移活跃的数据文件

    Oracle 数据库 12c 版本中对数据文件的迁移或重命名不再需要太多繁琐的步骤,可以使用 ALTER DATABASE MOVE DATAFILE 这样的 SQL 语句对数据文件进行在线重命名和移 ...

  6. 表空间与数据文件Offline,online的区别

    首先明确,表空间与数据文件的关系:Oracle数据库表空间有两种,一种smallfile小文件表空间(默认),另一种bigfile大文件表空间: 默认表空间与数据文件的关系:允许一对多的处理方式,一个 ...

  7. Oracle与SQLSERVER修改数据文件的路径

    1. SQLSERVER ALTER DATABASE CWBASEMSS modify file (name = cwbasemss_dat ,filename = 'c:\cwdata\mss\C ...

  8. oracle 普通数据文件备份与恢复

    普通数据文件指:非system表空间.undo_tablespace表空间.临时表空间和只读表空间的数据文件.它们损坏导致用户数据不能访问,不会导致db自身异常.实例崩溃.数据库不恢复就无法启动的情况 ...

  9. 将数据文件从asm移到普通文件系统

    数据库可以关闭的场景: 1.关闭并重新mount数据库 $ sqlplus '/as sysdba' SQL> shutdown immediate; SQL> startup mount ...

随机推荐

  1. 关于Winform控件调用插入点(光标)的用法

    我们自定义控件中可能会有一些光标的使用,比如插入文字和图片提示,下面是调用WIN32 API的光标用法 Winform控件调用插入点的用法 // 导入处理光标的 Windows 32 位 API // ...

  2. 总结React关于require的问题

    我需要实现的是当登录页面传过来的sex值为1则性别一栏的图片修改为boy.png如果为0性别图片则显示为girl.png‘ 最开始是这么写的为了让他成为变量 所以不行ok我们回到React的生命周期函 ...

  3. 8、二进制中1的个数------------>剑指offer系列

    题目 输入一个整数,输出该数二进制表示中1的个数.其中负数用补码表示. 法一:分析 这是一道考察二进制的题目 二进制或运算符(or):符号为|,表示若两个二进制位都为0,则结果为0,否则为1. 二进制 ...

  4. 两小时学Thinkphp3.1(多数来自thinkphp3.1快速入门)

    调试模式 define('APP_DEBUG',TRUE); 定义自动验证 protected $_validate = array( array('title','require','标题必须'), ...

  5. POJ 2831 Can We Build This One?

    Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 1728   Accepted: 643 Case Time Limit: 2 ...

  6. asp.net core mvc 异步表单(Ajax.BeginForm)

    .net core中已经没有beginform扩展函数了. 通过Bower引入jquery-ajax-unobtrusive: <script src="~/lib/jquery-aj ...

  7. Django 表增加外键

    1.创建临时表,并把原表的数据复制到临时表 先根据python manage syl article查看创建临时表 CREATE TABLE `article_article_temp` ( `id` ...

  8. Django添加tinyMCE编辑器

    tinymce的使用方法很简单,只需要在html页面中包含如下: <!-- Place inside the <head> of your HTML --> <scrip ...

  9. Ubuntu14.04 32位安装Youcompleteme

    前一段时间在ubuntu16.04 64位上安装了vim插件Youcompleteme,花了两三天才弄好.今天在ubuntu14.04 32位上安装同样的插件,才知道之前所做的安装原来是多么的简单.今 ...

  10. GNU make(2)

    GNU make(2) 参考: GNU Make学习总结(二) 变量 变量由一个前导符号$加上字符或者是括号字符组成, 名称区分大小写. 命名: 习惯上用全部大写字符表示常量, 小写字符表示变量, 单 ...