今天調試一個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