博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RMAN-01009: syntax error: found "dot" 解决方法
阅读量:4212 次
发布时间:2019-05-26

本文共 2810 字,大约阅读时间需要 9 分钟。

 

 

今天调试一个RMAN 的备份脚本,这个脚本以前也用过很多次,并没有什么问题,今天执行时,就是过不去。

 

操作系统:Redhat 5.8

数据库:11.2.0.3

 

错误如下:

RMAN-00571:===========================================================

RMAN-00569: =============== ERROR MESSAGESTACK FOLLOWS ===============

RMAN-00571:===========================================================

RMAN-00552: syntax error in command linearguments

RMAN-01009: syntax error:found "dot": expecting one of: "double-quoted-string,identifier, single-quoted-string, "

RMAN-01007: at line 2 column 1 file:command line arguments

 

这个错误,提示在第二行有问题。

 

根据MOS 文档[ID427224.1]的说明:

How to check for correct RMAN syntax [ID427224.1]

 

我们也可以使用rman checksyntax 命令检查RMAN 脚本的语法问题。

 

如下:

[oracle@rac1 scripts]$ rman checksyntaxrman.sh

 

Argument    Value          Description

-----------------------------------------------------------------------------

target      quoted-string  connect-string fortarget database

catalog     quoted-string  connect-string forrecovery catalog

nocatalog   none           if specified, thenno recovery catalog

cmdfile     quoted-string  name of inputcommand file

log         quoted-string  name of outputmessage log file

trace       quoted-string  name of outputdebugging message log file

append      none           if specified, logis opened in append mode

debug       optional-args  activate debugging

msgno       none           show RMAN-nnnnprefix for all messages

send        quoted-string  send a command tothe media manager

pipe        string         building block forpipe names

timeout     integer        number of secondsto wait for pipe input

checksyntax none           check the commandfile for syntax errors

-----------------------------------------------------------------------------

Both single and double quotes (' or ")are accepted for a quoted-string.

Quotes are not required unless the stringcontains embedded white-space.

 

RMAN-00571:===========================================================

RMAN-00569: =============== ERROR MESSAGESTACK FOLLOWS ===============

RMAN-00571:===========================================================

RMAN-00552: syntax error in command linearguments

RMAN-01009: syntax error: found"rman": expecting one of: "append, auxiliary, catalog,checksyntax, cmdfile, log, msgno, nocatalog, pipe, script, send, target,timeout, using, @, ;"

RMAN-01007: at line 2 column 1 file:command line arguments

 

 

 

RMAN 脚本的开始一段内容如下:

#!/bin/ksh

export LANG=en_US

BACKUP_DATE=`date +%d`

RMAN_LOG_FILE=${0}.out

TODAY=`date`

USER=`id|cut -d "(" -f2|cut -d")" -f1`

echo"-----------------$TODAY-------------------">$RMAN_LOG_FILE

ORACLE_HOME=/u01/app/oracle/11.2.0/db_1

export ORACLE_HOME

RMAN=$ORACLE_HOME/bin/rman

export RMAN

 

错误提示的第二行也只是一个大概范围,我们这里报错,是因为$RMAN_LOG_FILE变量来自shell变量$0,使用了相对路径,而有些版本rman不支持相对路径,因此执行时报错。

 

 

解决方法是给$RMAN_LOG_FILE予绝对路径:

将:

RMAN_LOG_FILE=${0}.out

修改成:

RMAN_LOG_FILE=`pwd`/${0}.out

 

再次执行就ok了。

 

 

 

 

 

版权所有,文章允许转载,但必须以链接方式注明源地址,否则追究法律责任!

QQ:492913789

Email:ahdba@qq.com

Blog:  

Weibo:    

Twitter: 

Facebook:

Linkedin:

你可能感兴趣的文章
test-definitions/blob/master/auto-test/bigdata/bigdata.sh
查看>>
/test-definitions/blob/master/auto-test/blktrace/blktrace.sh
查看>>
test-definitions/blob/master/auto-test/blogbench/blogbench.sh
查看>>
test-definitions/blob/master/auto-test/boost/boost.sh
查看>>
test-definitions/tree/master/auto-test/dd-wr-speed
查看>>
test-definitions/blob/master/auto-test/dhcp/dhcp.sh
查看>>
test-definitions/blob/master/auto-test/disk-partitioning/disk-partitioning.sh
查看>>
test-definitions/blob/master/auto-test/docker/docker.sh
查看>>
test-definitions/blob/master/auto-test/dsdbench/dsdbench.sh
查看>>
test-definitions/blob/master/auto-test/dsdbench/dsdbench.sh
查看>>
test-definitions/blob/master/auto-test/dstat/dstat.sh
查看>>
test-definitions/blob/master/auto-test/etcd/etcd.sh
查看>>
test-definitions/blob/master/auto-test/ftp/ftp.sh
查看>>
test-definitions/blob/master/auto-test/gprof/gprof.sh
查看>>
test-definitions/blob/master/auto-test/hhvm/hhvm.sh
查看>>
test-definitions/blob/master/auto-test/httperf-client/httperf.sh
查看>>
test-definitions/blob/master/auto-test/iostat/iostat.sh
查看>>
test-definitions/blob/master/auto-test/kernel-compilation/kernel-compilation.sh
查看>>
内核ACPI函数API之acpi_platform_fill_resource
查看>>
内核ACPI函数API之acpi_create_platform_device
查看>>