Oracle 的exp、imp、expdp、impdp命令用于数据库逻辑备份与恢复;
exp命令用于把数据从远程数据库server导出至本地,生成dmp文件。
笔者在实操中遇到:
$exp user/pass file=exp.dmp tables = (TABLE1,TABLE3,TABLE3)
返回以下错误信息:
-bash: syntax error near unexpected token `('
后将命令去掉括号,改为以下形式后,命令正常执行。
exp user/pass file=exp.dmp tables = TABLE1,TABLE3,TABLE3
命令运行的Oracle版本信息如下:
SQL> select * from v$version;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
PL/SQL Release 11.2.0.4.0 - Production
CORE 11.2.0.4.0 Production
TNS for Linux: Version 11.2.0.4.0 - Production
NLSRTL Version 11.2.0.4.0 - Production
那么问题来了:Oracle exp 命令的 tables 参数值到底需不需要加括号呢?
我换了一个环境简单测试了一下,却发现带括号和不带括号,两种形式的命令都能正常执行。
这也算是oracle exp命令的一个小坑吧,特此记录。
本文来自博客园,作者:超然楼,转载请注明原文链接:https://www.cnblogs.com/soft1314/p/17347595.html