RMAN还原时注意set newname时文件名不要有空格

简介: 今天遇到一个非常奇怪的现象,查看ORACLE数据库的一个文件,明明这个文件是存在的,但是使用ls -lrt 查看都显示这个文件不存在。很是纳闷! 后面发现在终端输入文件名后并使用tab键时,发现文件后其实是有空格(不可见字符)。

 

今天遇到一个非常奇怪的现象,查看ORACLE数据库的一个文件,明明这个文件是存在的,但是使用ls -lrt 查看都显示这个文件不存在。很是纳闷! 后面发现在终端输入文件名后并使用tab键时,发现文件后其实是有空格(不可见字符)。如下截图所示: 

 

[oracle@ehvlnx02 ~]$ ls -lrt /u01/oradata/SCM2/system01.dbf
ls: /u01/oradata/SCM2/system01.dbf: No such file or directory
[oracle@ehvlnx02 ~]$ cd /u01/oradata/SCM2/
[oracle@ehvlnx02 SCM2]$ ls -lrt 
total 5238456
-rw-r----- 1 oracle oinstall   48504832 Nov  8 19:24 users01.dbf           
-rw-r----- 1 oracle oinstall  209715712 Nov  8 19:24 redo06.log
-rw-r----- 1 oracle oinstall  209715712 Nov  8 19:24 redo05.log
-rw-r----- 1 oracle oinstall  209715712 Nov  8 19:24 redo04.log
-rw-r----- 1 oracle oinstall  209715712 Nov  8 19:24 redo02_1.log
-rw-r----- 1 oracle oinstall  367009792 Nov  8 19:24 ppc_x01.dbf           
-rw-r----- 1 oracle oinstall  786440192 Nov  8 20:04 sysaux01.dbf          
-rw-r----- 1 oracle oinstall 2553290752 Nov  8 20:09 undotbs01.dbf         
-rw-r----- 1 oracle oinstall  545267712 Nov  8 20:09 system01.dbf          
-rw-r----- 1 oracle oinstall  209715712 Nov  8 20:14 redo01_1.log
-rw-r----- 1 oracle oinstall    9781248 Nov  8 20:17 control01.ctl
[oracle@ehvlnx02 SCM2]$ ls system01.dbf\ \ \ \ \ \ \ \ \ \  
system01.dbf          
[oracle@ehvlnx02 SCM2]$ ls system01.dbf*
system01.dbf          
[oracle@ehvlnx02 SCM2]$ 
clip_image001

 

 

那么这些数据库数据文件名怎么多了一些空格呢? 由于恰好这台UAT服务器,我几小时前做过RMAN还原,发现然来使用set newname for datafile 后面指定路径和文件名时,双引号之间有大量空格(使用UE的列模式编写的还原命令),第一次遇到这种情况,看来以后使用set newname时,新的文件名要注意不能出现空格。否则就会出现这个情况。

 

 

run {
sql'alter session set nls_date_format="yyyy-mm-dd hh24:mi:ss"';
set until time '2017-11-08 03:30:00';
set newname for datafile   1 to "/u01/oradata/SCM2/system01.dbf          ";  
set newname for datafile   2 to "/u01/oradata/SCM2/undotbs01.dbf         ";
set newname for datafile   3 to "/u04/oradata/SCM2/undotbs02.dbf         ";
set newname for datafile   4 to "/u01/oradata/SCM2/sysaux01.dbf          ";
set newname for datafile   5 to "/u01/oradata/SCM2/users01.dbf           ";
.............................................................
restore database;
switch datafile all; 
recover database;
}

相关文章
|
SQL Oracle 关系型数据库
[20160720]rman set newname for datafile
[20160720]rman set newname for datafile本质.txt --前几天在恢复历史数据库,因为生产系统数据库是asm,恢复必须要转成文件类型。
1517 0
|
1月前
|
存储 JavaScript 前端开发
Set、Map、WeakSet 和 WeakMap 的区别
在 JavaScript 中,Set 和 Map 用于存储唯一值和键值对,支持多种操作方法,如添加、删除和检查元素。WeakSet 和 WeakMap 则存储弱引用的对象,有助于防止内存泄漏,适合特定场景使用。
|
2月前
|
存储 Java API
【数据结构】map&set详解
本文详细介绍了Java集合框架中的Set系列和Map系列集合。Set系列包括HashSet(哈希表实现,无序且元素唯一)、LinkedHashSet(保持插入顺序的HashSet)、TreeSet(红黑树实现,自动排序)。Map系列为双列集合,键值一一对应,键不可重复,值可重复。文章还介绍了HashMap、LinkedHashMap、TreeMap的具体实现与应用场景,并提供了面试题示例,如随机链表复制、宝石与石头、前K个高频单词等问题的解决方案。
37 6
【数据结构】map&set详解
|
1月前
|
存储 缓存 Java
【用Java学习数据结构系列】HashMap与TreeMap的区别,以及Map与Set的关系
【用Java学习数据结构系列】HashMap与TreeMap的区别,以及Map与Set的关系
34 1
|
2月前
|
算法
你对Collection中Set、List、Map理解?
你对Collection中Set、List、Map理解?
36 5
|
2月前
|
存储 JavaScript 前端开发
js的map和set |21
js的map和set |21
|
2月前
|
存储 前端开发 API
ES6的Set和Map你都知道吗?一文了解集合和字典在前端中的应用
该文章详细介绍了ES6中Set和Map数据结构的特性和使用方法,并探讨了它们在前端开发中的具体应用,包括如何利用这些数据结构来解决常见的编程问题。
ES6的Set和Map你都知道吗?一文了解集合和字典在前端中的应用
|
3月前
|
存储 安全 Java
java集合框架复习----(4)Map、List、set
这篇文章是Java集合框架的复习总结,重点介绍了Map集合的特点和HashMap的使用,以及Collections工具类的使用示例,同时回顾了List、Set和Map集合的概念和特点,以及Collection工具类的作用。
java集合框架复习----(4)Map、List、set
|
3月前
|
Java
【Java集合类面试二十二】、Map和Set有什么区别?
该CSDN博客文章讨论了Map和Set的区别,但提供的内容摘要并未直接解释这两种集合类型的差异。通常,Map是一种键值对集合,提供通过键快速检索值的能力,而Set是一个不允许重复元素的集合。

热门文章

最新文章