梳理一下重装sql2008R2sp1步骤
我的电脑是这样,最早的时候装的是2005,后来公司用到2008,我就手动卸载,但是好像卸载的不够彻底,在装2008的时候,选择升级方式安装。
虽然成功了,但是在运行select @@version 时,发现还是2005,但奇怪的是,启动界面确是2008,这说明升级安装虽然表面上成功了,但并不是很彻底。尤其是升级后,存在着一些类似复制这样的功能不好使的情况。但是我本机仅是用来做实验,所以也没太在意。
但最近,我需要还原正式库的备份文件,因为服务器上装的是64bit的sql2008r2sp1,所以和我本机不兼容,所以无法恢复。
没办法,只好想法升级到2008r2sp1,由于之前的状况,既有2005残留文件,又有2008残留文件,尝试了一下,升级到R2,结果不成功,干脆全部卸载,重新装吧。于是手动各种删除,又进注册表,又进控制面板,又停服务,折腾了一小天,最后一装,发现还是卸载的不干净,无法安装成功。
百度了一下,发现有一款软件,名字叫Windows Installer Clean Up,下载后,发现卸载那叫一个快,而且非常干净。

于是正常安装sql2008r2,一切顺利,安装完后,记住要安装sp1的补丁程序,地址如下:
http://download.microsoft.com/download/0/9/9/099E0C83-072B-42A5-83A0-9BB3D2E6E2A3/SQLServer2008R2SP1-KB2528583-x86-CHS.exe
记得下载的时候,注意网速通畅。安装的时候尽量不要同时运行其它程序,我发现该程序不稳定,解压缩时容易出现文件损坏提示,其实并没有损坏。多解压几次就好。
之后正常安装,不要略过其中的安装步骤。
正常启动后想用sa账户登陆,选择sqlserver方式登陆,但是发现密码不对提示,于是想改sa密码。
用windows验证模式登陆,打开服务器属性对话框,启用sqlserver和windows验证模式。点确定。然后找安全性==>登陆名==>sa==>属性,修改密码后,重新启动数据库服务,在相关项点重新启动即可。之后即可以以sqlserver方式登陆了。
然后准备还原数据库,最好用语句还原,这样有一个好处,就是如果有错误,它会提示相关的错误:
restore database heb00 from
disk = 'e:\heb000_2012-12-25 01.40.00.bak'
with replace
虽然现在版本一致了,但是还是有错误,如下:
消息 3183,级别 16,状态 2,第 1 行
在从该备份集进行读取时,RESTORE 检测到在数据库 "heb00" 中的页(0:0)上存在错误。
消息 3013,级别 16,状态 1,第 1 行
RESTORE DATABASE 正在异常终止。
根据提示,以为是heb00这个新建的数据库问题,由于原数据库34个G左右,而初始的数据库很小,以为有这种可能,所以把初始大小定为35个G,但问题依旧,反复试了几次,感觉应该是处在备份文件上。拷备份时,先把备份文件从服务器上拷到移动硬盘上,再从移动硬盘上拷到本机上,根据经验,一般大文件在复制过程中,都容易受损。
突然想到可以查看日志文件:
日期2012-12-28 10:33:29
日志SQL Server (当前 - 2012-12-28 10:33:00)
源spid55
消息
The backup data at the end of "e:\heb000_2012-12-25 01.40.00.bak" is incorrectly formatted. Backup sets on the media might be damaged and unusable. To determine the backup sets on the media, use RESTORE HEADERONLY. To determine the usability of the backup sets, run RESTORE VERIFYONLY. If all of the backup sets are incomplete, reformat the media using BACKUP WITH FORMAT, which destroys all the backup sets.
根据提示,估计出在备份文件上的问题可能性很大了。
再根据提示,做了一下对比:
RESTORE HEADERONLY
FROM DISK = N'e:\heb000_2012-12-25 01.40.00.bak'
WITH NOUNLOAD;
GO
RESTORE HEADERONLY
FROM DISK = N'd:\book.bak'
WITH NOUNLOAD;
GO

可以看到,第二个数据库备份文件是可以识别出来的,但第一个要还原的数据库文件确显示未完成,所以到这里,问题应该可以肯定出在备份文件上了,
命苦啊,只能重新复制了。
“因为数据库正在使用,所以无法获得对数据库的独占访问权”,终解决方案如下
关键SQL语句:
ALTER DATABASE [datebase] SET OFFLINE WITH ROLLBACK IMMEDIATE
用完之后再
ALTER database [ datebase] set online
梳理一下重装sql2008R2sp1步骤的更多相关文章
- 重装mysql步骤
, 卸载MySQL 2, 删除目录 C:\Documents and Settings\All Users\Application Data\MySQL (这个真的有,原先没注意到,删掉!) 如果没有 ...
- TFS 2010 迁移/重装/还原 步骤
1.签入所有代码 2.停止TFS服务:运行命令行,并将路径切换到TFS安装路径:C:\Program Files\Microsoft Team Foundation Server 2010\Tools ...
- Dell台式机Window10恢复重装window7步骤
1.开机页面出现Dell标识时,连续点击F2 2.进入bois页面,选择boot ,将光标移动到USB启动盘符位置, 3.按 - 号,将 USB Srorage Device 改为第一启动项,F10保 ...
- Win7重装系统遇到的问题以及MysQL的问题解决
连续三天因为系统的错误,android方面的软件一直不能正确运行.而且每次开机的时候QQ 微信等聊天工具也出现损坏.虽然重新下载一个可以保证在电脑不管的情况下正常的运行.可是作为玩电脑时间不长的我来说 ...
- 电脑重装后 python 2 3快速安装
背景: 电脑重装后,python也要跟着重装,将安装包.环境变量备份等安装完成后直接安装 重装前 1. pip包备份,命令窗口 pip freeze > py2.txt #python2的包 p ...
- U盘重装系统
一.准备工作 (1)8G以上空间的U盘一个: (2)将U盘制作好启动工具: 1.下载启动工具制作软件(常用的有:大白菜.电脑店.老毛桃.快启动等等一系列软件,直接百度这些软件的名称,或者百度U盘启动制 ...
- Mac 电脑如何卸载 重装node
由于在日常开发中,部分node版本不支持,因此,我们需要对已安装的node进行卸载重装,步骤如下: 一.在终端依次输入以下命令 sudo npm uninstall npm -g sudo r ...
- 异步编程 In .NET
概述 在之前写的一篇关于async和await的前世今生的文章之后,大家似乎在async和await提高网站处理能力方面还有一些疑问,博客园本身也做了不少的尝试.今天我们再来回答一下这个问题,同时我们 ...
- Mac MySQL启动不了解决办法(MySQL卸载重新安装教程)
一段时间没用MySQL,今天使用时突然发现启动不了了,怎么点start都没用,或者输入密码了 还是没用... 好急...找了一圈资料,没发现特别好的解决办法,只能使用大招了----->< ...
随机推荐
- c++ enum用法【转】
1.为什么要用enum 写程序时,我们常常需要为某个对象关联一组可选alternative属性.例如,学生的成绩分A,B,C,D等,天气分sunny, cloudy, rainy等等. ...
- ajenti试用感受
ajenti试用感受_展现技术动态_百度空间 ajenti试用感受 今天看开源中国介绍一款名为"服务器管理系统"的开源软件发布了,名为ajenti,页面感觉不错,对机器的采集信 ...
- VC++6.0中各种文件的作用
VC++ 6.0是一款很经典的C/C++开发工具,虽然是1998年的东西了,但是现在使用依然很广!在用它开发的时候,会发现在建立的工程的文件夹里面,有很多文件,各种后缀名.在这里呢,我主要说一下各个文 ...
- 2014 android毕设代做 代做Android毕设 安卓毕设
近期略有闲暇. 看到部分老友帮忙做毕业设计. 一来能够锻炼下小技能,二来能够得点零花小钱. 心遂小动.跃跃欲试. 毕设这件事情,个人觉得还是自己做的好. 只是每一个人都有各种各样的原因不能自己完毕. ...
- Floodlight之 FloodlightContextStore 数据结构
FloodlightContextStore 代表的是一种缓存模型(利用的是ConcurrentHashMap).里面存储的是上下文相关的对象,可以依据对应的key得到详细的 Object. ...
- 去除List列表中反复值(稍作调整,也适合于List<T> 和 List<?>)
方法一 循环元素删除 [c-sharp] view plaincopy public static void removeDuplicate(List list) { for ( int i = 0 ...
- Spring源码地址和相关介绍的网址
Spring源码地址下载: https://github.com/spring-projects/spring-framework/tags >多图详解Spring框架的设计理念与设计模式:ht ...
- JavaBean的一个小例子
一.创建一个javaBean类: UseBean package com.oncall24h.ruchi; import java.io.Serializable; public class UseB ...
- struts2的坑以及tomcat的一些常识
Struts2中坑 1:一个很简单的跳转,死活跳不过去,总是404,那这个时候可以把struts.xml这个配置文件用IE浏览器打开,如果能够正常打开,那么说明struts.xml文件本身没有语法错误 ...
- Laravel 简单使用七牛云服务
前言 路漫漫其修远兮,吾将上下而求索.学习 Laravel 之初觉得所有东西都很厉害的样子,现在看来就是很厉害啊!最近在写一个项目上传的模块,要上传图片到七牛云,昨天看了一下午七牛云官方的文档感觉还是 ...