用代码还原数据库,操作界面已经提示完成,但是数据库处一直是“正在还原”

在网上搜的资料并实践,可以用以下代码来还原备份的数据库
RESTORE DATABASE [new_ttttt] --新库名字
FROM  DISK = N‘E:\DBBackup\tttt_1\tttt_1_Full_2016_06_04_155332.bak‘ --备份文件
WITH  FILE = 1,  
MOVE N‘tttt_1‘ TO N‘E:\test\new_tttt.mdf‘,  --原始数据库名字 新的附加位置
MOVE N‘tttt_1_log‘ TO N‘E:\test\new_tttt_1.LDF‘, --原始数据库名字 新的附加位置
NORECOVERY,  
NOUNLOAD,  STATS = 10
GO --完整备份还原

RESTORE DATABASE [new_ttttt] --新库名字
FROM  DISK = N‘E:\DBBackup\tttt_1\tttt_1_Diff_2016_06_04_160529.bak‘  --备份文件
WITH  FILE = 1,
MOVE N‘tttt_1‘ TO N‘E:\test\new_tttt.mdf‘,  --原始数据库名字 新的附加位置
MOVE N‘tttt_1_log‘ TO N‘E:\test\new_tttt_1.LDF‘, --原始数据库名字 新的附加位置
NOUNLOAD,  STATS = 10
GO--差异备份还原

但是还原的过程中遇到个问题,就是题目所说的“正在还原”的问题

找了资料实践以后发现可行

具体方法是

原因分析 (转自http://www.111cn.net/database/mssqlserver/50360.htm)

1)管理器不会主动刷新,需要手工刷新一下才能看到最新状态(性能方面的考虑)

2)很少情况下,恢复进程被挂起了。这个时候假设你要恢复并且回到可访问状态,要执行:

RESTORE database   dbname with recovery

这使得恢复过程能完全结束。

3)如果你要不断恢复后面的日志文件,的确需要使数据库处于“正在还原状态”,

这通常是执行下面命令:

RESTORE database dbname with norecovery

时间: 2024-10-14 11:51:10

用代码还原数据库,操作界面已经提示完成,但是数据库处一直是“正在还原”的相关文章

图书数据库操作界面升级

今年年初,我写了一篇名为<图书管理库以及操作界面>的文章(链接:http://blog.csdn.net/qq_32897527/article/details/50493313),但是由于技术问题,导致程序不是很优化,界面也不是很友好.最近得空稍微研究了下,对界面进行了升级. 1.使用表格进行数据项显示 升级前 升级后 #coding:gbk import wx,sqlite3 import wx.lib.sheet as sheet class find(wx.Frame): def lo

sqlserver 2008R2新建数据库时报错,提示无法获得数据库&quot;model&quot;上的排它锁

刚新装了个sqlserver2008 R2,在建立数据库时候报错,提示无法获得数据库"model"上的排它锁.解决办法如下: 打开查询页面,执行下面的语句即可. use master declare @sql varchar(100) while 1=1 begin select top 1 @sql = 'kill '+cast(spid as varchar(3)) from master..sysprocesses where spid > 50 and spid <

小白5分钟上手c#数据库操作(一) 搭建简单的Sqlite数据库

搭建好Sqlite数据库环境,构建一个简单的SQlite数据库文件 1. 安装 SQlite Database Browser 2. 新建一个数据库 3. 新建一张表 4. 添加一些字段 5. 添加数据 保存,命名为Student.db OK, 用了几分钟我们的数据库已经准备妥当,下面就开始通过c#操作数据库. 原文地址:https://www.cnblogs.com/chenyingzuo/p/12099451.html

【java】对数据库操作的那些事(包含数据库中的预处理)

一.连接问题 前面刚介绍了怎么连接数据库,也写了对应的模板.可是它的可维护性很差.那么怎么解决问题呢? 首先写一个配置文件jdbc.properties <span style="font-size:18px;">## MySQL driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/hncu? useUnicode=true&characterEncoding=UTF-8 username=roo

【java】对数据库操作的那些事(包括数据库中的预处理)

一.连接问题 前面刚介绍了怎么连接数据库,也写了相应的模板,但是它的可维护性非常差,那么怎么解决这个问题呢? 首先写一个配置文件jdbc.properties <span style="font-size:18px;">## MySQL driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/hncu?useUnicode=true&characterEncoding=UTF-8 username=r

Java Web的数据库操作(一)

一.JDBC技术 1.JDBC简介 JDBC是Java程序与数据库系统通信的标准API,它定义在JDK的API中,通过JDBC技术,Java程序可以非常方便地与各种数据库交互,JDBC在Java程序与数据库系统之间假期了一座桥梁. JDBC由一组用Java语言编写的类和接口组成,它对数据库的操作提供了基本方法,但由于数据库种类跟多且多有不同,所以对数据库的细节操作由数据库厂商进行实现,且厂商需要提供数据库的驱动程序,下图为Java程序与数据库相交互的示意图: 2.JDBC连接数据库的过程 l 

(转)JSP+mysql数据库操作 连接,增加,删除,修改,查询例子

来源:ab蓝学网     时间:2013-06-06    点击:3894 简介:java教程|JSP中的数据库操作(1):MySQL数据库创建及管理本文目录顺序:安装MySQLMySQL管理软件SQLYogEnterprise--30天试用期到期解决方法使用SQLYogEnterprise建立... JSP中的数据库操作(1):MySQL数据库创建及管理 本文目录顺序: 安装MySQL MySQL管理软件SQLYog Enterprise --30天试用期到期解决方法 使用SQLYog Ent

数据库连接&数据库进程&数据库操作

[email protected]:/home/xiachengjiao# vi/webwall/mysql/my.cnf(看配置文件中的参数) [email protected]:/webwall/mysql/bin# ./mysql -u root -S /var/mysql1.sock -p Enter password: Enter password:******** ERROR 2002 (HY000): Can't connect to local MySQL serverthrou

android菜鸟学习笔记20----Android数据存储(四))Android数据库操作

Android内置了一个名为SQLite的关系型数据库,这是一款轻量型的数据库,操作十分简便.SQLite与别的数据库不同的是,它没有数据类型.可以保存任何类型的数据到你所想要保存的任何表的任何列中.但它又支持常见的类型比如: NULL, VARCHAR, TEXT, INTEGER, BLOB, CLOB...等. 唯一的例外是:integer primary key 此字段只能存储64位整数. 在JAVA项目中,要使用JDBC操作数据库需要加载数据库驱动,连接数据库等操作.Android简化