qq_42649008 2020-07-08 09:45 采纳率: 100%
浏览 161

oracle 数据库备份提示监听错误

@echo off

echo ================================================

echo Windows环境下Oracle数据库的自动备份脚本

echo 1. 使用当前日期命名备份文件。

echo 2. 自动删除7天前的备份。

echo ================================================
::以“YYYYMMDD”格式取出当前时间。

set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2%
REM 设置所有者、用户名和密码
set OWNER=lianxi
set USER=lianxi
set PASSWORD=aqhis
set BUCKUPPATH=E:\DataSource\

REM 创建备份用目录,目录结构为E:\DataSource\nisDBbackup
if not exist %BUCKUPPATH%nisDBbackup mkdir %BUCKUPPATH%nisDBbackup
if not exist %BUCKUPPATH%nisDBbackup\%CURDATE%\ mkdir %BUCKUPPATH%nisDBbackup\%CURDATE%\
set CURDIR=%BUCKUPPATH%nisDBbackup\%CURDATE%
set FILENAME=%CURDIR%\%OWNER%_%CURDATE%_%CURTIME%.DMP
set EXPLOG=%CURDIR%\%OWNER%_%CURDATE%_%CURTIME%_log.log

REM 调用ORACLE的exp命令导出用户数据
REM exp userid=%USER%/%PASSWORD%@lianxi file=%FILENAME% log=%EXPLOG%

REM 这里是为了删除大于七天的数据文件 适用于:Windows Server中,Windows Vista的
forfiles /p %BUCKUPPATH%nisDBbackup /s /m . /d -4 /c "cmd /c del @path"
dir /ad/b/s %BUCKUPPATH%nisDBbackup |sort /r >%BUCKUPPATH%kill.txt
For /f "tokens=*" %%i in (%BUCKUPPATH%kill.txt) DO rd "%%i"
del %BUCKUPPATH%kill.txt

exit

我这样写完执行就提示
EXP-00056: 遇到 ORACLE 错误 12514
ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
EXP-00000: 导出终止失败

但是直接cmd执行
exp userid=lianxi/aqhis%@lianxi file=his.dmp log=hi.log
就没问题 是什么原因

  • 写回答

1条回答 默认 最新

  • 关注
    评论

报告相同问题?

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)