[20161230]rman checksyntax2.txt

[20161230]rman checksyntax2.txt

--曾经写过一篇rman checksyntax的问题,这个问题存在10g:
http://blog.itpub.net/267265/viewspace-2130511/

--今天看了一个链接重复测试:https://jhdba.wordpress.com/2016/12/29/rman-checksyntax-function/#comment-11009

1.环境:
SYS@book> @ &r/ver1
PORT_STRING                    VERSION        BANNER
------------------------------ -------------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx            11.2.0.4.0     Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

$ cat -n r.rman
     1
     2  run
     3  {
     4    allocate channel c1 device type DISK
     5    allocate channel c2 device type DISK;
     6
     7    release channel c1;
     8    release channel c2;
     9  }

--//注意开头1行空行,第4行我少写一个分号,测试看看.

2.测试:
$ rlrman checksyntax
Recovery Manager: Release 11.2.0.4.0 - Production on Fri Dec 30 10:23:10 2016
Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
connected to target database: BOOK (DBID=1337401710)

RMAN> @ r.rman

RMAN>
RMAN> run
2> {
3>   allocate channel c1 device type DISK
4>   allocate
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00558: error encountered while parsing input commands
RMAN-01009: syntax error: found "allocate": expecting one of: "auxiliary, connect, format, maxopenfiles, maxpiecesize, parms, rate, send, to, ;"
RMAN-01007: at line 5 column 3 file: r.rman

--//如果你看命令输出前面4>,而应该看r.rman文件.实际上错误指向r.rman第5行第3列.如果我修改如下:
$ cat -n r.rman
     1
     2  run
     3  {
     4    allocate channel c1 device type DISK;
     5    allocate channel c2 device type DISK
     6
     7    release channel c1;
     8    release channel c2;
     9  }

RMAN> @ r.rman

RMAN>
RMAN> run
2> {
3>   allocate channel c1 device type DISK;
4>   allocate channel c2 device type DISK
5>
6>   release
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00558: error encountered while parsing input commands
RMAN-01009: syntax error: found "release": expecting one of: "auxiliary, connect, format, maxopenfiles, maxpiecesize, parms, rate, send, to, ;"
RMAN-01007: at line 7 column 3 file: r.rman

--//总之要看这类错误,应该正确的看脚本文件,而不是输出的行号.

时间: 2024-07-30 10:59:47

[20161230]rman checksyntax2.txt的相关文章

[20170208]rman tape.txt

[20170208]rman tape.txt --前一阵子,同事测试使用磁带做rman备份,留下一些备份信息在控制文件,要清除. --我依稀记得我以前也干过这些事情,晚上看了一下书: Apress.RMAN.Recipes.for.Oracle.Database.12c.2nd.Edition.Jul.2013.pdf Allocating an RMAN Maintenance Channel P145 Suppose your current backup strategy uses on

[20161214]rman checksyntax.txt

[20161214]rman checksyntax.txt --rman在命令行使用参数checksyntax可以检查命令语法是否正确,而且并不会真正执行.但是昨天在恢复一个10g的数据库时遇到问题,做 --一个记录: 1.环境: --要恢复的数据库版本: > @ &r/ver1 PORT_STRING                    VERSION        BANNER ------------------------------ -------------- -------

[20171122]rman filesystemio_options.txt

[20171122]rman备份与参数filesystemio_options设置.txt --//这几天写了几篇filesystemio_options参数设置的文章,单独测试这个参数对rman备份以及os缓存的影响. 1.测试环境: SYS@book> @ &r/ver1 PORT_STRING                    VERSION        BANNER ------------------------------ -------------- ----------

[20161101]rman备份与数据文件变化7.txt

[20161101]rman备份与数据文件变化7.txt --//想象一下,如果备份文件时间很长,而这个时候数据文件大小发生了变化,oracle的备份如何解决这个问题呢? --//去年已经测试了建立备份集的情况,一直想做一次image copy的测试,一直脱,主要原因自己不想做这个测试.... --//而且当时的测试很乱,自己主要一边做一边想.... --//链接: http://blog.itpub.net/267265/viewspace-2127386/ http://blog.itpub

[20171121]rman使用copy image恢复.txt

[20171121]rman使用copy image恢复.txt --//上个星期做数据文件块头恢复时,提到使用rman备份数据文件时,文件头数据库信息是最后写入备份集文件的,在filesperset=1的情况 --//下写入备份集文件中的倒数第2块就是文件头的备份.参考链接: http://blog.itpub.net/267265/viewspace-2147297/=>[20171115]恢复数据文件块头4补充.txt --//而且我最后还做了测试证明如果resotre数据文件,实际上文件

[20171121]rman backup as copy.txt

[20171121]rman backup as copy.txt --//上个星期做数据文件块头恢复时,提到使用rman备份数据文件时,文件头数据库信息是最后写入备份集文件的,在filesperset=1的情况 --//下写入备份集文件中的倒数第2块就是文件头的备份.参考链接: http://blog.itpub.net/267265/viewspace-2147297/=>[20171115]恢复数据文件块头4补充.txt --//而且我最后还做了测试证明如果resotre数据文件,实际上文

[20171130]关于rman的一些总结.txt

[20171130]关于rman的一些总结.txt --//最近一直做rman相关测试,测试那个乱,没办法.无法从周围的人获得帮助,纯粹是自己的乱猜,乱测,不知道别人是否能看懂我写的东西. --//有必要做一些总结,不一定对,仅仅是我当前的看法. 1.数据文件备份集中,文件头是最后写到备份集文件的. 2.使用备份集恢复也是一样,文件头也是最好写入的. 3.以上情况对as copy的方式也是一样. --//oracle这样操作主要目的保证备份是好的可用,反之恢复也是一样. 4.关于备份参数file

[20171128]rman Input or output Memory Buffers.txt

[20171128]rman Input or output Memory Buffers.txt --//Input Memory Buffers如何测试,不清楚.不过找到一本电子书.摘要如下: Oracle RMAN 11g Backup and Recovery.pdf 作者:Robert G. Freeman Matthew Hart 页数:689 出版社:Mc graw hill 出版号: ISBN: 978-0-07-162861-7         MHID: 0-07-16286

[20171031]rman备份压缩模式.txt

[20171031]rman备份压缩模式.txt --//测试rman备份压缩模式,那种效果好,我记忆里选择medium在备份时间和备份文件大小综合考虑最佳. --//还是通过脚本测试: 1.环境: SCOTT@book> @ &r/ver1 PORT_STRING                    VERSION        BANNER ------------------------------ -------------- ---------------------------