常见故障 - densen2014/docs GitHub Wiki
SQL 2005日志文件损坏后应当如何恢复
- 在MSSE停止数据库服务。
- 将需要恢复的数据库文件移动到另外的位置。
- 启动数据库服务。
- 确认要恢复的数据库文件已经成功复制到另外的位置,然后在SQL Server Management Studio中删除要恢复的数据库。
- 新建同名的数据库 ds_shop
- 停止数据库服务。
- 用第2步中备份的 ds_shop.mdf 文件覆盖新数据库的同名文件。 位置 C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA,删除 ds_shop_log.LDF
- 启动数据库服务。
- 打开数据库,在master数据库上右键新建查询
- 运行下面的命令就可以恢复数据库: 新log文件会在老数据文件位置自动生成 D:\中讯商业管理\DensenAlmacen\Data
假设数据库名称是 ds_shop
alter database ds_shop set emergency
use master
exec sp_dboption ds_shop, N'single', N'true'
dbcc checkdb('ds_shop',REPAIR_ALLOW_DATA_LOSS)
dbcc checkdb('ds_shop',REPAIR_REBUILD)
exec sp_dboption 'ds_shop', N'single', N'false'
exec sp_resetstatus 'ds_shop'
exec sp_dboption 'ds_shop','single user','false'
_2005:exec sp_dboption ds_shop, N'single', N'true' —将目标数据库置为单用户状态 _
2012: ALTER DATABASE ds_shop SET SINGLE_USER WITH ROLLBACK IMMEDIATE --把数据设为单用户模式 ALTER DATABASE ds_shop SET MULTI_USER WITH ROLLBACK IMMEDIATE --把数据设为单用户模式
SQL2012,2016,2019
alter database ds_shop set emergency
use master
ALTER DATABASE ds_shop SET SINGLE_USER WITH ROLLBACK IMMEDIATE
dbcc checkdb('ds_shop',REPAIR_ALLOW_DATA_LOSS)
dbcc checkdb('ds_shop',REPAIR_REBUILD)
ALTER DATABASE ds_shop SET MULTI_USER WITH ROLLBACK IMMEDIATE
exec sp_resetstatus 'ds_shop'
ALTER DATABASE ds_shop SET MULTI_USER WITH ROLLBACK IMMEDIATE
餐馆
alter database res_data set emergency
use master
exec sp_dboption res_data, N'single', N'true'
dbcc checkdb('res_data',REPAIR_ALLOW_DATA_LOSS)
dbcc checkdb('res_data',REPAIR_REBUILD)
exec sp_dboption 'res_data', N'single', N'false'
exec sp_resetstatus 'res_data'
exec sp_dboption 'res_data','single user','false'
- 分离ds_shop数据库,停止数据库服务,剪切 C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\ds_shop.mdf 到 D:\中讯商业管理\DensenAlmacen\Data
- 使用单机版或者工具附加文件测试是否连接成功
Epson TM-T88V 小票机终极设置