4008-116-022
联系客服

SQL数据库bak备份恢复完整教程:代账公司账套恢复实操指南

金蝶睿服4008116022

前两天有个做代账的朋友半夜给我打电话,声音都变了。他们公司一个会计不小心把客户整套账套数据给覆盖了,客户第二天要审计,急得团团转。我问了一句:之前有没有做过 bak 备份?他说有,但没人会恢复。

这事儿其实不复杂。我这些年帮不少代账公司处理过 SQL 数据库的备份恢复,今天就把整套流程拆开讲清楚。学完这篇,你能独立完成从 bak 文件到账套正常使用的全部操作,不用再求人。

一、动手前,先把这几样东西备齐

别急着打开数据库,先确认下面这些条件都满足:

  • SQL Server Management Studio(简称 SSMS),版本最好和备份时一致,2016 以上都行

  • 要恢复的 .bak 备份文件,确认文件完整、没被杀毒软件隔离

  • 数据库的 sa 账号或具备 sysadmin 权限的登录名

  • 目标服务器上至少有备份文件 2 倍大小的磁盘空间

  • 如果账套要对接财务软件(比如金蝶账无忧这类 SaaS 平台),提前确认软件端的数据库连接配置

我见过一个案例,备份文件 8 个 G,结果 C 盘只剩 5 个 G,恢复直接卡死。这种低级错误,提前看一眼就能避免。

二、分步操作,跟着做就行

Step 1:把 bak 文件放到服务器能访问的位置

别放在网络共享盘上直接恢复,速度慢还容易断。复制到服务器本地磁盘,比如 D:\Backup\。路径里不要有中文和空格,这是很多恢复失败的隐藏原因。

常见问题:文件复制过去后提示"拒绝访问"?右键文件属性,看是不是被锁定了,解除锁定即可。

Step 2:在 SSMS 里连接数据库引擎

打开 SSMS,服务器类型选"数据库引擎",服务器名称填 localhost 或 .,身份验证用 SQL Server 身份验证,输入 sa 账号密码。连上之后,左侧对象资源管理器里能看到"数据库"文件夹。

Step 3:右键"数据库",选择"还原数据库"

在弹出的窗口里,源设备选"设备",点右边的浏览按钮,添加你的 bak 文件。这时候 SSMS 会自动读取备份集信息,目标数据库名称可以改成你想要的账套名,比如"客户A_2024"。注意不要选成"源数据库"覆盖,那样会把现有库搞乱。

Step 4:勾选"覆盖现有数据库"并检查文件路径

左侧选项页里,点"选项",勾选"覆盖现有数据库(WITH REPLACE)"。下面两行"还原为"的路径,确认指向当前服务器的数据目录。如果服务器换过,路径可能还是旧的,手动改一下。

常见问题:提示"无法获得独占访问权"?说明有其他人连着这个库,去"活动监视器"里把对应进程 kill 掉再试。

Step 5:点击确定,等待恢复完成

恢复时间看数据量,几个 G 的库一般几分钟。成功后弹窗提示"已成功还原数据库"。刷新一下"数据库"文件夹,新账套就出现了。

Step 6:验证数据并重新连接财务软件

打开账套对应的财务软件,重新登录。如果是金蝶账无忧这类云端平台,需要在管理后台确认数据库连接串指向新恢复的库。金蝶账无忧服务了 60000 多家代账公司,后台有专门的账套管理模块,恢复后通常只需要在设置里刷新一下数据源就行。

三、几个容易踩的坑

坑点后果正确做法
恢复时没勾选"覆盖"提示数据库已存在,恢复失败选项页里勾选 WITH REPLACE
bak 文件来自更高版本 SQL低版本无法还原确认版本号,必要时升级 SQL
磁盘空间不足恢复中途报错,库可能损坏预留备份文件 2 倍以上空间

还有一点,恢复完成后别急着把 bak 文件删了。我一般建议保留最近 3 次备份,代账行业数据丢了不是小事,客户资料、凭证、报表全在里面。

四、做完之后你会看到什么

全部步骤走完,SSMS 的数据库列表里会多出一个账套库。打开财务软件,用原来的账号登录,客户数据、凭证、余额表都在。之前那个半夜打电话的朋友,按这个流程 20 分钟就恢复了,客户审计没耽误。

说句实在的,代账公司账套多,会计流动也快,定期做 bak 备份并且让至少两个人会恢复操作,比买什么保险都管用。你公司现在是谁在管备份这件事?如果只有一个人知道,建议明天就让他把这篇教程转给同事。

金蝶睿服4008116022 www.kingdee-tj.com


未经允许不得转载: SQL数据库bak备份恢复完整教程:代账公司账套恢复实操指南