首页 > 系统答疑 > bcp经典数据库修复技巧

bcp经典数据库修复技巧

更新时间:2024-09-30 18:45

340 点赞

问题说明:

此方法适用于索引坏、DBCC、数据库置疑常规方式不能修复的数据库!如果数据库损坏彻底,不能保证百分百修复。

注:在进行此操作前,务必请先备份好对应数据库(备份.mdf和.ldf文件)。


解决方法:

步骤1:首先在D盘建立一个文件夹,命名为TESTDB。


image.png


步骤2:在查询分析器中选择对应软件数据库,运行以下语句。

注:语句中需填写实际的问题数据库名称、服务器ip或名称、sa密码。

select 'bcp 问题数据库..'+name + ' out '+'d:\testdb\'+name+'.txt -c -Usa -S服务器ip或名称 -Psa密码' FROM SYSOBJECTS WHERE TYPE = 'U' 

ORDER BY NAME


image.png


步骤3:把查询的结果集全部复制下来,新建一个文本文件取名为“导出.bat”,把结果集复制进去并保存,把该文件存放在D盘目录下。


image.png


步骤4:在查询分析器中选择对应软件数据库,运行以下语句。

select 'bcp 问题数据库..'+name + ' IN '+'d:\testdb\'+name+'.txt -c -Usa -S服务器名小写 -Psa密码' FROM SYSOBJECTS WHERE TYPE = 'U' 

ORDER BY NAME


image.png


步骤6:把查询的结果集全部复制下来,新建一个文本文件取名为“导入.bat”,把结果集复制进去并保存,把该文件存放在d盘目录下。


image.png


步骤7:运行“导出.bat”(注意:该文件双击即可运行),数据库中的数据会倒出到TESTDB目录中。


image.png


步骤8:在SQL数据库中删除原来的问题数据库,重新建立一个新的对应数据库(比如商云X,用hbposv10_server安装一个空库即可)。


image.png


步骤9:在查询分析器中选择对应软件数据库,运行以下语句,把执行语句后返回的结果进行复制。

select 'delete '+name FROM SYSOBJECTS WHERE TYPE = 'U' 


image.png


步骤10:新建一个查询分析器窗口,把复制的内容粘贴后执行(此语句为删除所有表数据)。


image.png


步骤11:最后运行D盘的“导入.bat” ,倒入成功后就恢复数据库了!


步骤12:最后在查询分析器中选择思迅数据库运行

use hbposv10

go

update t_sys_system set sys_var_value=(select max(flow_id) from t_im_flow where num2=1) where sys_var_id='ioflow_pointer'

go


步骤13:可在软件中进行日结,检查数据是否完整。


标签:

预约专家,解答问题

提交后公司宝专家顾问会联系您
*手机号码:
需求描述:
提交

提交成功!

谢谢您的支持,公司宝就您反馈的问题尽快联系您,祝您生活愉快。
我知道了

您可能还需要

热门视频

更多