@ECHO off
ECHO database bakup start!
REM Backup Database Script Log Files
SET dbbak_source_dir=d:\cnad_online\
SET dbbak_source_dir2=d:\cnad_online
SET target_dir=d:\
SET database_dir=e:\database\
if not exist %dbbak_source_dir% mkdir %dbbak_source_dir%
REM Backup Database Name
SET Database_Name=cnad
SET Date_Today=%date:~0,4%%date:~5,2%%date:~8,2%
cd %dbbak_source_dir2%
ECHO download file
REM 下载文件
REM echo wget -c http://ip地址/log/%Database_Name%_%Date_Today%.rar
if not exist %Database_Name%_%Date_Today%.rar wget -c http://218.30.126.163/log/%Database_Name%_%Date_Today%.rar
REM 解压缩文件
rar x -y %dbbak_source_dir%%Database_Name%_%Date_Today%.rar %target_dir%
ECHO restore start!
REM 删除数据库
ECHO use master >%dbbak_source_dir%restore_%Date_Today%.sql
ECHO go >>%dbbak_source_dir%restore_%Date_Today%.sql
ECHO drop database %Database_Name%>>%dbbak_source_dir%restore_%Date_Today%.sql
REM 还原数据库
ECHO use master >>%dbbak_source_dir%restore_%Date_Today%.sql
ECHO go >>%dbbak_source_dir%restore_%Date_Today%.sql
ECHO restore database %Database_Name% >>%dbbak_source_dir%restore_%Date_Today%.sql
ECHO FROM DISK = '%dbbak_source_dir%%Database_Name%_%Date_Today%.bak' >>%dbbak_source_dir%restore_%Date_Today%.sql
ECHO WITH NORECOVERY,>>%dbbak_source_dir%restore_%Date_Today%.sql
ECHO MOVE 'cnad' TO '%database_dir%cnad.mdf',>>%dbbak_source_dir%restore_%Date_Today%.sql
ECHO MOVE 'cnad_log' TO '%database_dir%cnad_log.ldf';>>%dbbak_source_dir%restore_%Date_Today%.sql
ECHO go >>%dbbak_source_dir%restore_%Date_Today%.sql
REM 使用末move参数是因为现在的服务器上数据库的路径为g盘,因此需要移动到备份机器存放数据库的盘上
REM 还原数据库
ECHO use master >>%dbbak_source_dir%restore_%Date_Today%.sql
ECHO go >>%dbbak_source_dir%restore_%Date_Today%.sql
ECHO restore database %Database_Name% >>%dbbak_source_dir%restore_%Date_Today%.sql
ECHO WITH RECOVERY;>>%dbbak_source_dir%restore_%Date_Today%.sql
REM osql.exe path
SET OSQL_PATH=C:\Program Files\Microsoft SQL Server\90\Tools\Binn\
REM Database user name and password
SET DBUser=***
SET DBpassword=***
ECHO RESTORE DATABASE
REM ECHO RESTORE DATABASE
"%OSQL_PATH%osql.exe" -U %DBUser% -P %DBpassword% -i %dbbak_source_dir%restore_%Date_Today%.sql -o %dbbak_source_dir%%Database_Name%_%Date_Today%.log
ECHO restore complete!
REM 删除文件
ECHO del start!
REM DEL /Q %dbbak_source_dir%backup_%Date_Today%.sql
DEL /Q %dbbak_source_dir%%Database_Name%_%Date_Today%.log
DEL /Q %dbbak_source_dir%%Database_Name%_%Date_Today%.bak
DEL /Q %dbbak_source_dir%restore_%Date_Today%.sql
REM DEL /Q %dbbak_source_dir%%Database_Name%_%Date_Today%.log
REM 删除1天以前的数据 测试用,正式使用7天
REM FORFILES的目录必须不能以\结尾
FORFILES /P %dbbak_source_dir2% /D -1 -M %Database_Name%*.rar /C "cmd /c del @file"
REM 把信息都记录到日志里
ECHO Date_Today=%date:~0,4%%date:~5,2%%date:~8,2%>>%dbbak_source_dir%%Database_Name%_%Date_Today%.log
ECHO if not exist %Database_Name%_%Date_Today%.rar wget -c http://218.30.126.163/log/%Database_Name%_%Date_Today%.rar>>%dbbak_source_dir%%Database_Name%_%Date_Today%.log
ECHO rar x -y %dbbak_source_dir%%Database_Name%_%Date_Today%.rar %target_dir%>>%dbbak_source_dir%%Database_Name%_%Date_Today%.log
ECHO "%OSQL_PATH%osql.exe" -U %DBUser% -P %DBpassword% -i %dbbak_source_dir%restore_%Date_Today%.sql -o %dbbak_source_dir%%Database_Name%_%Date_Today%.log>>%dbbak_source_dir%%Database_Name%_%Date_Today%.log
REM ECHO DEL /Q %dbbak_source_dir%backup_%Date_Today%.sql>>%dbbak_source_dir%%Database_Name%_%Date_Today%.log
ECHO DEL /Q %dbbak_source_dir%%Database_Name%_%Date_Today%.log>>%dbbak_source_dir%%Database_Name%_%Date_Today%.log
ECHO DEL /Q %dbbak_source_dir%%Database_Name%_%Date_Today%.bak>>%dbbak_source_dir%%Database_Name%_%Date_Today%.log
ECHO DEL /Q %dbbak_source_dir%restore_%Date_Today%.sql>>%dbbak_source_dir%%Database_Name%_%Date_Today%.log
ECHO FORFILES /P %dbbak_source_dir2% /D -1 -M %Database_Name%*.rar /C "cmd /c del @file">>%dbbak_source_dir%%Database_Name%_%Date_Today%.log
分享到:
相关推荐
标题中的“只能还原MS SQL数据库”表明这是一个专为恢复Microsoft SQL Server数据库而设计的应用程序。在IT领域,数据库是存储和管理数据的核心组件,而SQL Server是微软公司提供的一种关系型数据库管理系统,广泛...
### SQL Server 数据库备份后登录名丢失问题及解决方法 #### 背景与问题概述 在进行SQL Server数据库的备份与恢复操作时,经常会出现一个棘手的问题:原本数据库中的登录名在恢复到另一台服务器后消失不见,导致...
在IT行业中,MS SQL Server是微软公司开发的关系型数据库管理系统,广泛应用于企业级数据存储、管理和分析。本篇文章将深入探讨一些MS SQL Server的关键数据库技巧,帮助你优化工作流程,提高效率。 一、查询优化 ...
### MS SQL SERVER2005 SP1镜像高可用性实施关键知识点 #### 一、镜像技术概览 **MS SQL Server 2005**的**镜像功能**是一项重要的高可用性和灾难恢复机制,它允许在主服务器与备用服务器之间同步数据,从而在主...
### 基于SQL Server的数据库备份与还原 #### 一、引言 在现代信息技术领域,数据库系统作为数据管理的核心部分,在企业运营和个人信息管理中扮演着至关重要的角色。然而,无论是硬件故障还是软件错误,都可能对...
Acronis Recovery for MS SQL Server 是一款专门针对微软SQL Server数据库管理系统设计的备份与恢复解决方案。这款工具旨在确保企业能够迅速、有效地恢复SQL Server数据库,从而保护关键业务数据免受意外损失,例如...
在SQL Server环境中,MDF文件(主数据文件)是构成数据库的重要组成部分之一。当MDF文件出现损坏或丢失时,可能会导致整个数据库无法正常运行。本文将详细介绍如何仅通过MDF文件来恢复数据库,并解决在恢复过程中...
在SQL Server数据库管理中,定期备份是确保数据安全的关键步骤。本话题主要涉及如何使用脚本实现自动全备份,并结合7-Zip进行压缩,以节省存储空间和提高备份效率。以下将详细介绍相关知识点: 1. **SQL Server ...
这款工具的主要功能是针对Microsoft SQL Server数据库管理系统(MS SQL Server)的核心文件,即主数据文件(mdf)和事务日志文件(ldf),提供高效且便捷的还原操作。同时,它也支持直接从备份文件进行恢复,这对于...
本篇文章将详细介绍在MS SQL中如何进行数据库的备份和还原,以便于在数据丢失或系统故障时能迅速恢复。 一、通过企业管理器进行单个数据库备份 这是最基础的备份方式,适合于偶尔需要备份的情况。首先,打开SQL ...
《编程Microsoft SQL Server 2008》是针对微软数据库管理系统SQL Server 2008的一本详尽指南。SQL Server 2008作为一款强大的企业级数据库平台,提供了丰富的功能,包括数据存储、查询优化、安全性管理、数据集成等...
在IT行业中,数据库管理系统(DBMS)是至关重要的组成部分,特别是Microsoft SQL Server(MS SQL Server)作为企业级的关系型数据库系统,广泛应用于数据存储、分析和处理。本篇将深入探讨MS SQL Server的一些常用...
1. 下载并安装提供的`SQLSERVER数据库检测修复工具_cr.exe`文件。 2. 运行工具,连接到出现问题的SQL Server实例。 3. 执行全面的数据库扫描,识别潜在问题。 4. 查看工具报告,了解数据库的健康状况和存在的问题。 ...
此外,PB支持SQLAnywhere、Oracle、DB2等多种数据库,但这里我们关注的是与MS SQL Server的连接。确保选择正确的驱动程序,如SQL Native Client或ODBC驱动,以便正确通信。 接下来是**创建数据库**。在PB中,你可以...
在IT行业中,MS-SQL Server作为一款广泛使用的数据库管理系统,其安全性与数据完整性至关重要。然而,在实际操作过程中,用户可能会遇到忘记数据库管理员密码的情况,这无疑会给数据库的管理和维护带来不便。本文将...
本篇文章将详细探讨如何将ORACLE数据库中的BLOB(Binary Large Object)字段导入到SQL SERVER中的IMAGE字段,这通常涉及到数据转换、数据迁移以及可能的数据类型兼容性问题。 首先,让我们了解BLOB和IMAGE字段的...
4. **日志备份与还原**:SQL Server支持完整备份、差异备份和日志备份。日志备份仅备份事务日志,可以实现更细粒度的恢复策略,比如点-in-time恢复。 5. **日志截断**:为了避免日志文件无限增长,管理员需要定期...
本篇文章将详细介绍如何使用SQL Server 2000进行数据库的附加、备份和还原操作,这些都是数据库管理员日常工作中不可或缺的部分。 首先,我们来讨论数据库的“附加”操作。当一个数据库文件(MDF)和日志文件(LDF...
MS SQL Server数据库技巧总绍与T-SQL主要语句详解 在IT领域,数据库管理是至关重要的,尤其在企业级应用中,Microsoft SQL Server(MS SQL Server)作为一款广泛使用的数据库管理系统,其强大的功能和高效的性能...
### MS SQL Server 2008 服务器配置详解 #### 一、说明 本文旨在深入探讨与性能相关的SQL Server配置(基于SQL Server 2008)设置,并介绍如何使用SQL Server Management Studio或系统过程`sp_configure`来调整...