SQLSERVER数据库备份后无法还原的解决办法

SQLSERVER数据库备份后无法还原的解决办法,第1张

有时候为了考虑数据安全我们都会备份数据库 sqlserver的备份格式一般都是bak结尾的 但覆盖时容易出问题 这里简单介绍下 需要的朋友可以参考下   有时候完全备份 当还原的时候说不时数据库文件不让还原 解决办法: 可以直接复制数据库文件 xxx mdf 和 xxx ldf (实际复制过程中需要先停止sqlserver服务才可以) 用 sp_attach_db 存储过程 就能搞定 示例 下面的示例将 pubs 中的两个文件附加到当前服务器 EXEC sp_attach_db @dbname = N pubs @filename = N c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs mdf @filename = N c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs_log ldf N 表示Unicode的含义 就象类型中有varchar和nvarchar一样 一个Unicode字符占两个字节 使用N 的情况主要是在双字节系统环 境中强制系统对每个字符用Unicode标准来解释 否则如果你的数据库 mdf文件是中文名而又不加N 的话 数据库加载后名称可能就变成乱码 因为系 统按单字节处理字符造成! 如果确认是SQL SERVER无法启动 请按照下面步骤操作: 重装SQL SERVER(注意要保留原来数据库的数据库文件 日志文件可不要) 在SQL Analysis中用sp_attach_db将数据库加到服务器 sp_attach_db用法: sp_attach_db 将数据库附加到服务器 语法 sp_attach_db [ @dbname = ] dbname [ @filename = ] filename_n [ ] 参数 [@dbname =] dbname 要附加到服务器的数据库的名称 该名称必须是唯一的 dbname 的数据类型为 sysname 默认值为 NULL [@filename =] filename_n 数 据库文件的物理名称 包括路径 filename_n 的数据类型为 nvarchar( ) 默认值为 NULL 最多可以指定 个文件名 参数名称以 @filename 开始 递增到 @filename 文件名列表至少必须包括主文件 主文件包含指向数据库中其它文件的系统表 该列表还必须包括数据库分离后所有被移动的文件 返回代码值 (成功)或 (失败) 结果集 无 注释 只应对以前使用显式 sp_detach_db 操作从数据库服务器分离的数据库执行 sp_attach_db 如果必须指定多于 个文件 请使用带有 FOR ATTACH 子句的 CREATE DATABASE 如果将数据库附加到的服务器不是该数据库从中分离的服务器 并且启用了分离的数据库以进行复制 则应该运行 sp_removedbreplication 从数据库删除复制 权限 只有 sysadmin 和 dbcreator 固定服务器角色的成员才能执行本过程   lishixinzhi/Article/program/MySQL/201311/29555

问题1:在没有备份的情况下,卸载了软件,但是账套数据文件存在,如何恢复数据?

引子:通常情况下,应该提醒用户经常在系统管理中进行账套备份。如果在没有备份的情况下,卸载了软件(或重装了系统),这时软件是安装在其他盘上,比如D盘。

若这两个文件存在的话,可以通过以下方法把数据恢复。

解决方法:

(1)、把zt991文件夹备份好,卸载干净后,重新安装软件;

(2)、在“系统管理”创建991账套,启用年份及行业性质都与原账套相同。如果原来账套是多个年度的,则一定要建立年度账(比如001账套是2006年启用的,则要新建一个001账套,启用年份是2006年,并且要建立2007年和2008年的年度账)。这样在软件安装目录下会形成一个文件夹zt991。

(3)、将sqlserver服务关闭(可在任务栏中使用“sqlserver服务管理器”进行服务停止,或在控制面板--管理工具--服务中将mssqlserver服务停用)

(4)、将已经备份出去的zt991文件夹覆盖新的zt991文件夹。

(5)、重新启动sqlserver服务和U6的服务,然后登录U6应用程序,即可看到原账套中的信息,确认信息无误后,及时进行数据备份。

问题2:在系统管理中进行了账套备份,但是恢复账套的时候,提示“备份信息文件无效,恢复失败”。

引子:在系统管理中进行账套备份,形成两个文件:uferpactlst(通uf2kactlst)和ufdataba_。所以当出现这个提示的时候,先对这两个文件进行操作。首先检查ufdataba_是否可以解压缩,如果解压缩失败,说明物理文件破坏,这时备份文件无效了(这时就要考虑用问题1中的方法来解决了)。如果解压缩成功,可以用以下两个方法来操作。

解决方法一:还原数据

(1)、用产品自带的解压工具把ufdataba_文件解压。解压工具D:\U6SOFT\Admin\ ufuncompexe。双击这个文件,选择源文件,录入解压文件,把ufdataba_解压成ufdatabak,点击“解压缩”按钮。

(2)、在系统管理中新建一个账套,假定账套号是001。

(3)、在sql server 的企业管理器中,逐层展开树形结构,鼠标右键点击“数据库”,选择“所有任务”—“还原数据库”

(4)、进入“还原数据库”界面,从下拉列表中选择“还原为数据库ufdata_001_2008,“从设备”还原,然后点击“选择设备”。

(5)、进入“选择还原设备”,点击“添加”按钮,进入“选择还原目的”界面,点击“文件名”后的浏览按钮,选择ufdatabak文件所在的路径。然后点击“确定”按钮。

(6)、再点击“确定”按钮,又一次进入“还原数据库”界面,在“选项”页签下,选择“在现有数据库上强制还原”。

一定要注意逻辑文件名对应的“移至物理文件名”对应的路径是否正确。点击“确定”就可以了。

注:这样方法也适用于只有ufdataba_文件的情况下恢复数据,以及只对年度账数据进行恢复的情况。

解决方法二:把现有运行正常的账套进行备份,然后用记事本的方式打开uferpactlst文件,同时也打开恢复失败的账套的uferpactlst文件,参照自己备份出来的账套的uferpactlst文件,修改恢复失败的账套的uferpactlst文件,除了保留账套号外,其余不一致的地方都要修改。

bitsCNcom

如何备份、还原MSSQL数据库(新手详细教程)

一、备份数据库 1、企业管理器 2、SQL语句(完全备份):backup database 数据库 to disk='c:/您的备份文件名'

二、还原数据库 1、企业管理器 2、SQL语句:restore database 数据库 from disk='c:/您的备份文件名'

以下为具体的操作步骤:

一、备份数据库

1、打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server;

2、SQL Server组-->双击打开您的服务器-->双击打开数据库目录;

3、选择您的数据库名称(如论坛数据库Forum)-->然后点上面菜单中的工具-->选择备份数据库;

4、备份选项选择完全备份,目的中的备份到如果原来有路径和名称则选中名称点删除,然后点添加,如果原来没有路径和名称则直接选择添加,接着指定路径和文件名,指定后点确定返回备份窗口,接着点确定进行备份。

二、还原数据库

1、打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server;

2、SQL Server组-->双击打开您的服务器-->点图标栏的新建数据库图标,新建数据库的名字自行取;

3、点击新建好的数据库名称(如论坛数据库Forum)-->然后点上面菜单中的工具-->选择恢复数据库;

4、在弹出来的窗口中的还原选项中选择从设备-->点选择设备-->点添加-->然后选择您的备份文件名-->添加后点确定返回,这时候设备栏应该出现您刚才选择的数据库备份文件名,备份号默认为1(如果您对同一个文件做过多次备份,可以点击备份号旁边的查看内容,在复选框中选择最新的一次备份后点确定)-->然后点击上方常规旁边的选项按钮;

5、在出现的窗口中选择在现有数据库上强制还原,以及在恢复完成状态中选择使数据库可以继续运行但无法还原其它事务日志的选项。在窗口的中间部位的将数据库文件还原为这里要按照您SQL的安装进行设置(也可以指定自己的目录),逻辑文件名不需要改动,移至物理文件名要根据您所恢复的机器情况做改动,如您的SQL数据库装在D:/Program Files/Microsoft SQL Server/MSSQL/Data,那么就按照您恢复机器的目录进行相关改动改动,并且最后的文件名最好改成您当前的数据库名(如原来是bbs_datamdf,现在的数据库是forum,就改成forum_datamdf),日志和数据文件都要按照这样的方式做相关的改动(日志的文件名是_logldf结尾的),这里的恢复目录您可以自由设置,前提是该目录必须存在(如您可以指定d:/sqldata/bbs_datamdf或者d:/sqldata/bbs_logldf),否则恢复将报错;

6、修改完成后,点击下面的确定进行恢复,这时会出现一个进度条,提示恢复的进度,恢复完成后系统会自动提示成功,如中间提示报错,请记录下相关的错误内容并询问对SQL操作比较熟悉的人员,一般的错误无非是目录错误或者文件名重复或者文件名错误或者空间不够或者数据库正在使用中的错误,数据库正在使用的错误您可以尝试关闭所有关于SQL窗口然后重新打开进行恢复操作,如果还提示正在使用的错误可以将SQL服务停止然后重起看看,至于上述其它的错误一般都能按照错误内容做相应改动后即可恢复。

三、设定每日自动备份数据库

1、打开企业管理器,在控制台根目录中依次点开Microsoft SQL Server-->SQL Server组-->双击打开您的服务器;

2、然后点上面菜单中的工具-->选择数据库维护计划器;

3、下一步选择要进行自动备份的数据-->下一步更新数据优化信息,这里一般不用做选择-->下一步检查数据完整性,也一般不选择;

4、下一步指定数据库维护计划,默认的是1周备份一次,点击更改选择每天备份后点确定;

5、下一步指定备份的磁盘目录,选择指定目录,如您可以在D盘新建一个目录如:d:/databak,然后在这里选择使用此目录,如果您的数据库比较多最好选择为每个数据库建立子目录,然后选择删除早于多少天前的备份,一般设定4-7天,这看您的具体备份要求,备份文件扩展名一般都是bak就用默认的;

6、下一步指定事务日志备份计划,看您的需要做选择-->下一步要生成的报表,一般不做选择-->下一步维护计划历史记录,最好用默认的选项-->下一步完成;

7、完成后系统很可能会提示Sql Server Agent服务未启动,先点确定完成计划设定,然后找到桌面最右边状态栏中的SQL绿色图标,双击点开,在服务中选择Sql Server Agent,然后点击运行箭头,选上下方的当启动OS时自动启动服务;

8、这个时候数据库计划已经成功地运行了,它将按照您上面的设置进行自动备份。

作者“wwwqqcom65127378ol”

bitsCNcom

SQL2000数据库的备份概念

SQL

SERVER

2000有四种类型是:数据库、事务日志、差异、文件和文件组

数据库备份是创建完事数据库的复本。它并非将所有的页都复制到备份集,而只将实际包含数据的页复制到备份集。数据页和事务日志页均复制到备份集。

数据库备份用于重新创建数据库,使其恢复到BACKUP语句完成时的状态。如果数据库只存在数据库备份,那么数据库只能恢复到服务器或数据库发生故障前最后一次数据库备份时的状态。

事务日志备份仅制作日志文件的复本。日志文件备份本身不能用于还原数据库。日志文件用于在数据库还原后将数据库恢复到原始故障点。

例如,某站点在星期天晚上执行数据库备份,而在其它每个晚上执行日志备份。如果数据库的某个数据磁盘在星期二2:30丢失,则该站点可以:

1备份当前事务日志

2还原从星期天晚上开始的数据库备份

3还原从星期一晚上开始的日志备份,以将数据库前滚。

4还原故障之后的日志备份。这将使数据库前滚到故障发生的那一刻。

事务日志恢复需要从数据库备份的那一刻到磁盘丢失那一刻之间所进行的一边串不间断的事务日志备份。

差异备份只追寻数据库中自上一次数据库备份之后修改过的所有页的复本。差异日志主要用于使用频繁的系统,一旦这类系统中的数据库发生故障,必须尽快使其重新联机。差异备份比完事数据库备份小,因此对正在运行的系统影响较小。

例如,某个站点在星期天晚上执行完事数据库备份。在白天每隔4小时制作一个事务日志备份集,并用当天的备份重写头一天的备份。每晚则进行差异备份。如果数据库的某个数据磁盘在星期四上午9:12出现故障,则该站点可以:

1备份当前事务日志。

2还原从星期天晚上开始的数据库备份。

3还原从星期三晚上开始的差异备份,将数据库前滚到这一时刻。

4还原从早上4点到8点的事务日志备份,以将数据库前滚到早上8点。

5还原故障之后的日志备份,这将使数据库前滚到故障发生的那一刻。

SQL2000支持备份或还原数据库中的个别文件或文件组。这是一种相对较完善的备份和还原过程,通常用在具有较高可用性要求的超大型数据库中。如果可用的备份时间不足以支持完事数据库备份,则可以在不同的时间备份数据库的子集。

例如,某站点需要花三小时备份数据库,并且每天只能用两个小时执行备份。该站点可在一个晚上备份一半文件或文件级,并在第二个晚上备份另一半。如果包含数据库文件或文件组的磁盘出现故障,那么该站点可以只还原丢失的文件或文件组。

该站点还必须进行事务日志备份,并且在备份文件或文件组之后必须还原所胡事务日志备份。还可以从完事数据库备份集中还原文件和文件组。这将回忆恢复速度,因为在第一步只还原已损坏的文件或文件组,而不是整个数据库。

一、通过企业管理器进行单个数据库备份。打开SQL SERVER 企业管理器,展开SQL SERVER组LOCAL下的数据库,右键点击你要备份的数据库,在弹出的菜单中选择所有任务下的备份数据库,弹出备份数据库对话框:

点击添加按钮,填写备份文件的路径和文件名,点击确定添加备份文件,点击备份对话框上的备份,开始进行备份。

二、通过企业管理器多数据定时库备份。打开SQL SERVER 企业管理器,展开SQL SERVER组下的管理节点,右键单击数据库维护计划,选择新建维护计划。在弹出的欢迎对话框中选择下一步,然后显示如下对话框:

选择你想要备份的数据库,下一步。在接下来的一步中,我们默认所有选项,下一步。在当前对话框中可以选择是否检查数据库的完整性,这里我们默认就可以进行下一步就行了。对话框入图所示:

选中作为维护计划的一部分来备份数据库,点击更改按钮修改备份数据库的时间,单击下一步,入下图:

在这里,我们可以选择“使用此目录”为备份指定路径,选中“删除早于此时间的文件”可以指定备份文件的保留时间。

下面的几个步骤我们都选择默认设置,最后在完成对话框里为备份起一个名字,点击完成后,数据库会在你指定的时间进行备份。关于数据库维护计划的更多知识请查看其它相关资料。

三、备份数据库文件。打开SQL SERVER 企业管理器,展开SQL SERVER组LOCAL下的数据库,右键点击你要备份的数据库,选择属性。在弹出的对话框中选择数据文件,在这里显示了数据文件的路径,如下图:

打开SQL SERVER 服务管理器,将SQL SERVER 停止。然后打开我的电脑,找到数据文件路径,将其拷贝出来进行备份(注意同时备份LDF文件)。

最后开启SQL SERVER服务

四、回复数据库备份文件(适用于用企业管理器备份的数据库)。打开SQL SERVER 企业管理器,展开SQL SERVER组LOCAL下的数据库,右键点击你要还原的数据库,选择所有任务下的还原数据库,弹出如下对话框:

选择从设备,点击选择设备,为还原添加备份文件路径,然后进行确定还原。

五、还原数据库备份文件。在企业管理器中对数据库节点右键单击,选择所有任务下的附加数据库,弹出附加数据库对话框。如下图:

选择一个你之前拷贝的数据文件,然后点击确定即可附加成功(注:如果数据库已经存在,请删除数据库后在对其进行附加)。

您可能感兴趣的文章:sqlserver备份还原数据库功能封装分享SQLSERVER数据库备份后无法还原的解决办法简化SQL Server备份与还原到云工作原理及操作方法MySQL数据库备份和还原的常用命令小结解决SQL2005备份数据库dat或bak还原时的结构错误的解决方法sql server 2005数据库备份还原图文教程

欢迎分享,转载请注明来源:品搜搜测评网

原文地址:https://pinsoso.cn/shuma/975672.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-08-20
下一篇2023-08-20

随机推荐

  • 关于泰坦尼克号的十个问题

      泰坦尼克号疑问解答之 TOP10  本人的回答都是根据当今的主流观点。  第一 为什么那么大的船面对小小的冰山撞击不堪一击  专家们普遍认为,冰山撞击可能并不是致命原因;冰山撞击来得太突然,加上轮船的速度稍快,人员操作失误,再加上钢板较

    2024-04-15
    43600
  • 国产隔离霜什么牌子好

    问题一:什么牌子的隔离霜好?不要用化学成分的,最好用专门针对敏感皮肤的药妆,薇姿、理肤泉、雅漾这3个牌子的隔离霜都不错,在各大药房里都有得卖,国产的佰草集也不错,可以试试!问题二:国产隔离霜什么牌子好梵洁诗问题三:大

    2024-04-15
    30300
  • 一瓶神仙水230ml成本

    -ll神仙水230ml :1520元一瓶精华水80MI:560元眼霜15MI:640元一套加起来在2720左右,敬请参考:Sk2明星产品:1、SK-II环采臻皙钻白精华露这款精华人称它为"小灯泡"。提取自日本杏的珍稀精萃及Pixel-Whi

    2024-04-15
    40500
  • 妮维雅630为什么放那么多香精

    妮维雅630因为化妆品一般成分是化学物质不加香精不好闻。根据查询详细资料显示,妮维雅630淡斑焕白精华液揉开淡淡的香味,有人觉得味道不够高级,但是效果是很好的,油皮擦毫无压力,还有高渗透小分子玻尿酸帮助630更快的深入肌底,放大抑黑效果,想

    2024-04-15
    34200
  • 神仙水和清莹露的使用方法

    1、清洗干净脸部以后,待脸部自然晾干。2、按压瓶体,将清莹露挤到手中并均匀涂抹在脸上,轻轻一抹,帮助净白成分吸收。3、将神仙水少量倒在掌心后,在脸部均匀的按压,重复三遍,神仙水含天然活肤酵母精华,促进肌肤新陈代谢正常化,具有调整肌肤酸碱值平

    2024-04-15
    26700
  • 植美人瓷肌套装十件套使用方法

    1、首先植美人是山东红杉生物医药科技有限公司旗下品牌,用萃取科技结合传统中草药护肤秘方的化妆品品牌,准备好瓷肌套装。2、其次使用洗面奶进行洁面,敷面膜15分钟后清洗脸部。3、最后均匀涂抹爽肤水,精华液,补水霜。非常不错的。东方美人是花西子。

    2024-04-15
    27400
  • 什么男士洗面奶让你觉得很好用呢?谈谈你的经验

    第一款芙丽芳丝洗面奶是在某猫忍痛割爱花了一百多买的,就是跟风,想体验一下高端产品的感觉芙丽芳丝洗面奶使用了椰油酰甘氨酸钾作为主要的清洁成分,能够清除面部的污垢、部分彩妆以及防水型的防晒。 洗面奶中还加入了一些植物成分,有保湿和舒缓作用,在脸

    2024-04-15
    30600

发表评论

登录后才能评论
保存