`
icyheart
  • 浏览: 775902 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

用批处理写的:数据库备份还原工具

阅读更多

由于平时要进行数据库的备份和还原操作,为了提高效率和节省时间就有了下面的批处理程序,这是针对oracle编写的,可以用在不同的电脑上,因为它会自动读取当前电脑的环境变量,从而取得oracle的安装路径,唯一有一点不足的地方是程序中运行过程中会产生一个中间文本文件,不过这并不碍大事,备份或者还原完了以后将会自动删除产生文本文件,代码如下:

@echo off&setlocal enabledelayedexpansion
color 0a
:start
for /f "tokens=2 delims==" %%a in ('path') do (
    set "str=%%a"
    set str=!str: =+!
    for %%i in (!str!) do (
        set "var=%%i"
        set var=!var:+= !
        echo !var!>>change.txt
	for /f "delims=" %%i in ('findstr "Db_1\bin" change.txt') do set var=%%i
    )
    
)

set /p choice=1.备份 2.还原 3.按任意键退出:
if %choice%==1 goto exp
if %choice%==2 goto imp
:exp
del /q change.txt
set /p file=请输入备件数据库的文件名:
set /p path=请输入存放的路径(记得输冒号:):
"%var%"\exp.exe smhr/smhr@orcl file=%path%\%file% full=n
set /p choice=1.继续 2.按任意键退出:
if %choice%==1 goto start
:imp
del /q change.txt
set /p file=请将要导入的数据库文件拖入窗体内:
"%var%"\imp.exe smhr/smhr@orcl file=%file% full=y
set /p choice=1.继续 2.按任意键退出:
if %choice%==1 goto start

 

 要注意代码中的@orcl 如果你的电脑上只有一个数据库,那么这个写不写是不碍事的,但是如果有两个数据那么这个是必须得写的,否则会出现用户名密码失败。

 

今天(2010.07.15)又再次看了看,以前写过的这个批处理,发现了一些问题,以前考虑的是环境变量中的第一条路径是oracle的,可是在我现在工作的电脑上的环境变量是这样的

e:\Oracle\product\10.1.0\Client_1\bin;e:\Oracle\product\10.1.0\Client_1\jre\1.4.2\bin\client;e:\Oracle\product\10.1.0\Client_1\jre\1.4.2\bin;e:\oracle\product\10.1.0\Db_1\bin;e:\oracle\product\10.1.0\Db_1\jre\1.4.2\bin\client;e:\oracle\product\10.1.0\Db_1\jre\1.4.2\bin;E:\Python26;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files\Microsoft SQL Server\80\Tools\BINN;E:\Program Files\Subversion\bin;C:\Program Files\Common Files\Thunder Network\KanKan\Codecs

 

看到了吧前面的并不是我们想要的,我写的这个批处理真正需要的是以下这行路径

e:\oracle\product\10.1.0\Db_1\bin

 所以需要将原代码中的

for /f "delims=" %%i in ('findstr "oracle" change.txt') do set var=%%i

 

改为

for /f "delims=" %%i in ('findstr "Db_1\bin" change.txt') do set var=%%i

 这样以来,就能适应任何环境的主机了,因为我们查询的是Db_1\bin

 

5
0
分享到:
评论
1 楼 zhaoliaoyuan 2010-05-24  
收藏咯,谢谢共享!

相关推荐

    用批处理写的:数据库备份还原工具(修正加强版)

    标题 "用批处理写的:数据库备份还原工具(修正加强版)" 暗示这是一个使用批处理脚本编写的工具,主要用于数据库的备份和恢复操作。批处理是Microsoft Windows操作系统中的一个简单但强大的命令行工具,它允许用户...

    使用批处理实现数据库的备份和还原

    数据库备份和还原是数据库管理的重要环节,使用批处理可以实现数据库的自动备份和还原。下面将详细介绍使用批处理实现数据库的备份和还原的步骤和知识点。 一、创建.sql 文件 首先,需要创建三个.sql 文件,分别是...

    批处理(bat)实现SQLServer数据库备份与还原

    ### 批处理(BAT)实现SQL Server数据库备份与还原 #### 一、概述 在日常的数据库维护工作中,定期对数据库进行备份是非常重要的一个环节,它能够帮助我们防止因硬件故障、软件错误或其他不可预见的情况导致的数据...

    数据库备份批处理

    数据库备份批处理是数据库管理中的一个关键操作,它涉及到数据安全性和业务连续性。在这个过程中,我们通常使用脚本或批处理文件自动化备份过程,以确保在系统出现故障时能够快速恢复数据。以下是对这个主题的详细...

    数据库 备份还原 脚本执行工具 源代码

    综上所述,"数据库备份还原脚本执行工具源代码"是用C# 2012开发的一个实用工具,它帮助数据库管理员执行关键的数据库管理任务,如备份和恢复,同时提供脚本执行功能,提高效率。源代码的开放性使得用户可以根据自身...

    oracle数据库备份还原BAT脚本

    "Oracle数据库备份还原BAT脚本"就是这样一个工具,它允许用户通过简单的脚本配置进行数据库的备份操作,并且可以设定为Windows计划任务以实现定时备份。 首先,我们需要理解BAT脚本的基本结构。在批处理文件中,...

    任务计划+批处理实现Oracle数据库的定时备份

    以下是一个简单的Oracle数据库备份批处理文件(DYHX_SYS_bak.bat)示例: ```batch @echo off set ORACLE_HOME=C:\Oracle\product\11.2.0\dbhome_1 set PATH=%ORACLE_HOME%\bin;%PATH% set ORACLE_SID=your_sid ...

    批处理写的 oracle 数据库备份还原工具

    ### Oracle数据库备份与恢复工具——批处理脚本详解 #### 一、背景介绍 在日常工作中,Oracle数据库作为企业级应用的重要组成部分,其数据的安全性和稳定性至关重要。因此,定期进行数据库备份并具备快速恢复的能力...

    批处理数据库备份恢复

    批处理数据库备份恢复是数据库管理中的重要环节,它涉及到数据安全性、系统稳定性和业务连续性。在企业级应用中,定期备份和及时恢复是保障数据安全的重要手段。本主题将详细解析如何通过批处理文件来实现这一过程。...

    oracle数据库备份与恢复命令(批处理)

    一、Oracle数据库备份 1. **RMAN (Recovery Manager)**: Oracle提供的强大工具,用于数据库的备份、恢复和维护。RMAN可以直接连接到运行中的数据库,也可以通过控制文件、服务器进程或者网络连接进行离线备份。 -...

    MsSQL Servr2000 批处理 备份 还原

    这个命令会将名为"YourDatabaseName"的数据库备份到"C:\Backup\YourDatabaseName.bak"路径下,并使用`WITH FORMAT`选项来清理旧的备份历史记录。请确保替换为实际的数据库名和备份路径。 除了完整备份,还可以进行...

    数据库备份数据库备份.doc

    数据库备份是信息系统管理中的关键环节,它保护了重要的数据免受意外损失,如硬件故障、软件错误、病毒攻击或人为误操作。SQL Server数据库备份主要涉及以下几个方面: 1. **备份类型**: - **完整备份**:这是最...

    MySQL 备份还原数据库批处理

    ### MySQL备份与还原数据库批处理详解 在IT领域中,数据的安全性和完整性至关重要。对于数据库管理系统(DBMS),定期备份数据库是确保数据安全的关键措施之一。MySQL作为一种广泛使用的开源关系型数据库系统,提供...

    MySQL数据库自动备份、还原bat

    进行数据库备份 - 使用`mysqldump`命令导出所有数据库到指定文件。命令解析如下: - `-opt`:使用优化的选项,包括锁表、快速模式等。 - `-u`:指定数据库用户名。 - `-p`:指定数据库密码。 - `-P`:指定...

    7天数据库自动备份并压缩

    3. **批处理文件(.bat)**:"7天数据库备份.bat"可能是一个批处理文件,包含了运行数据库备份命令的脚本。用户只需双击该文件,就能启动整个备份流程,包括执行备份命令、压缩备份文件等。 4. **压缩技术**:在...

    用批处理实现自动备份和清理mysql数据库的代码

    如果需要从备份文件还原数据库,可以使用`mysql.exe`命令,如下所示: ```bash D:/html/wamp/mysql/bin/mysql.exe -uroot -p123456 –default-character-set=utf8 bugdb < F:/bugdb_20100312.sql ``` 这里,`mysql...

    SQL SERVER数据库自动备份与还原方法.pdf

    在IT系统维护中,数据库的备份与恢复是保障数据安全的至关重要的环节。...通过详细的配置和定期的维护,可以确保数据库备份与还原过程的自动化和稳定性,从而在关键时刻保护数据安全,减少数据丢失的风险。

    简单的oracle备份恢复批处理文件

    `imp`是Oracle的导入工具,它的用法与`exp`类似,但用于将之前导出的数据还原到数据库中: ```bash imp 用户名/密码@数据库 file=备份文件.dmp tables=(表1,表2) ignore=y ``` `ignore=y`参数表示如果目标表已经...

    备份本地的数据库到远程机上

    在这个场景中,`backup.bat`可能是一个执行数据库备份的批处理脚本,可能使用SQL Server的`BACKUP DATABASE`命令或其他数据库管理系统(如MySQL, PostgreSQL等)的类似功能。 2. **远程备份**: - 将本地数据库...

    Pb怎么备份SQLSERVE数据库.doc

    在实际项目中,备份和还原过程可能需要自动化,可以考虑编写批处理脚本或使用SQL Server Management Studio(SSMS)的备份计划功能。 请注意,以上代码片段仅供参考,具体实现可能需要根据你的数据库结构、安全...

Global site tag (gtag.js) - Google Analytics