执行语句"expdp owa_ss/owa_ss**@10.92.3.22/orcl dumpfile='星期%date:~11,3%.dmp' logfile='星期%date:~11,3%.log' directory=E:\testkg exclude=TABLE:\"IN \'SYS_LOG\'\" parallel=16"时报"LRM-00112: 参数 'logfile' 不允许有多个值",请分析原因,及解决办法
时间: 2024-04-03 15:32:38 浏览: 132
根据你提供的命令,其中的日志文件名和导出文件名都包含了一个日期字符串,这个字符串是通过 Windows 的 %date% 环境变量来获取的。但是,这个日期字符串在不同的地区和操作系统上可能会有所不同,因此可能会导致导出文件名和日志文件名不一致。
在你的命令中,你使用了类似于"星期%date:~11,3%.dmp"的字符串来生成导出文件和日志文件的名称。这个字符串的意思是从%date%环境变量中取出从第11个字符开始的3个字符,即星期几的缩写。这个字符串在不同的操作系统上可能会有所不同,例如在美国英语的 Windows 系统上,星期几的缩写是"Wed",而在中国的 Windows 系统上,星期几的缩写是"周三"。
因此,为了避免这个问题,你可以使用一个固定的日期格式来作为文件名的一部分,例如"YYYYMMDD",这样就可以确保文件名在不同的操作系统和地区上都是一致的。另外,你还需要将日志文件名和导出文件名分别指定,不能使用相同的文件名,否则就会出现"LRM-00112"错误。
修改后的命令如下所示:
expdp owa_ss/owa_ss**@10.92.3.22/orcl dumpfile='dumpfile_YYYYMMDD.dmp' logfile='logfile_YYYYMMDD.log' directory=E:\testkg exclude=TABLE:\"IN \'SYS_LOG\'\" parallel=16
其中"YYYYMMDD"是一个固定的日期格式,你需要根据具体的需求来修改。
相关问题
检查这条语句是否正确,以及引号的使用,这条语句将在windows下运行:expdp owa_aa/owa_aa**@10.92.4.23/orcl dumpfile=星期%date%:~11,3%.dmp logfile=星期%date%:~11,3%.log directory=F:\testkg exclude=TABLE:\"IN \'SYS_LOG\'\" parallel=16
这条语句的引号使用不正确。应该将整个 `exclude` 参数放入双引号中,而将其中的单引号用双引号代替。正确的语句如下所示:
```
expdp owa_aa/owa_aa**@10.92.4.23/orcl dumpfile=星期%date%:~11,3%.dmp logfile=星期%date%:~11,3%.log directory=F:\testkg exclude="TABLE:\"IN \"SYS_LOG\"\"" parallel=16
```
注意到这里需要使用转义字符 `\` 来转义双引号。
这条语句之前运行在windows上,现在将在linux服务器上运行,是否需要做出调整,如果是请调整并说明原因。语句为:expdp ora_ss/ora_ss**@10.92.3.83/orcl dumpfile=星期%date%:~11,3%.dmp logfile=newtext.log directory=dp_test exclude="TABLE:\"IN \"SYS_LOG\"\"" parallel=16
是的,需要对语句进行调整,因为Windows和Linux的命令行语法是不同的。具体的调整如下:
- 将日期格式的命令%date%改为`$(date +%Y%m%d)`,即获取当前日期并将其转换为YYYYMMDD格式。
- 将文件名中的“:”替换为“_”或其他符号,因为Linux不允许文件名中包含冒号。
- 将exclude参数的双引号改为单引号,并将内部的双引号转义,即将`exclude="TABLE:\"IN \"SYS_LOG\"\""`改为`exclude='TABLE:"IN \"SYS_LOG\""'
最终的调整后的语句如下:
```
expdp ora_ss/ora_ss**@10.92.3.83/orcl dumpfile=星期$(date +%Y%m%d)_$(date +%a | tr A-Z a-z).dmp logfile=newtext.log directory=dp_test exclude='TABLE:"IN \"SYS_LOG\"" parallel=16
```
这个调整后的语句在Linux上应该可以正确执行。
阅读全文