用网上查询的办法,例如傲世狂少的方法USE master
GO
ALTER DATABASE test SET SINGLE_USER
GO
ALTER DATABASE test SET EMERGENCY
GO
DBCC CHECKDB(test,REPAIR_ALLOW_DATA_LOSS)
go
ALTER DATABASE test SET ONLINE
GO
ALTER DATABASE test SET MULTI_USER
GO
求大神帮忙看下,有没有办法可以处理。数据库文件70G,日志文件90G,磁盘剩余空间130G。服务器会不会
11 个解决方案
#1
文件损坏了,找备份来恢复吧
#2
这种情况等它自动恢复没办法么?
#3
你要一个个步骤去执行,不是一次性执行所有代码。
先看能否切换到EMERGENCY,
再是设置数据为EMERGENCY,
然后再是checkdb。
如果到checkdb出现824错误,那么才考虑是否可以使用
DBCC CHECKDB (dbname, repair_allow_data_loss) with NO_INFOMSGS
恢复,这步骤会导致丢失一些数据,总比什么都好。
等数据库修复ok了,再执行最后的两句。
ALTER DATABASE test SET ONLINE
GO
ALTER DATABASE test SET MULTI_USER
GO
如果以上的方法都没解决问题,那么可能要通过之前的数据库备份文件恢复了。
先看能否切换到EMERGENCY,
再是设置数据为EMERGENCY,
然后再是checkdb。
如果到checkdb出现824错误,那么才考虑是否可以使用
DBCC CHECKDB (dbname, repair_allow_data_loss) with NO_INFOMSGS
恢复,这步骤会导致丢失一些数据,总比什么都好。
等数据库修复ok了,再执行最后的两句。
ALTER DATABASE test SET ONLINE
GO
ALTER DATABASE test SET MULTI_USER
GO
如果以上的方法都没解决问题,那么可能要通过之前的数据库备份文件恢复了。
#4
先看能否切换到SINGLE_USER
#5
能的话,先切到这个下面再操作,否则操作过程中再可能会有新数据之类产生
会越来越麻烦.
#6
没办法切到SINGLE_USER,难受
#7
提示 语法错误,是不是你输入法问题?
你看其他进程正在使用superfzyk数据库,能kill就先kill掉
你看其他进程正在使用superfzyk数据库,能kill就先kill掉
#8
语法错误是空格的问题,改过来了也是一样的结果,奔溃了
#9
根据提示一个一个的解决,
磁盘空间没问题吧?,检查下数据库文件属性中的权限是否设置正确。
#10
检查磁盘是否满了,要是没满就执行下面语句(注意数据库名称)
ALTER DATABASE EPDM SET SINGLE_USER
ALTER DATABASE EPDM SET ONLINE
ALTER DATABASE EPDM SET MULTI_USER
ALTER DATABASE EPDM SET SINGLE_USER
ALTER DATABASE EPDM SET ONLINE
ALTER DATABASE EPDM SET MULTI_USER
#11
产自要把磁盘空间清理出来,不然恢复无法完成(
从你的戴图来看,你明显没有清理磁盘,仍然是提示空间不足)
其次,提示已经告诉你正在恢复了,你查下 sql server 日志(sp_readerrorlog) ,日志中应该有该库正在恢复的日志记录(里面有进度的百分比),除非这个进度长时间不动,否则正常情况都是等它完成
其次,提示已经告诉你正在恢复了,你查下 sql server 日志(sp_readerrorlog) ,日志中应该有该库正在恢复的日志记录(里面有进度的百分比),除非这个进度长时间不动,否则正常情况都是等它完成
#1
文件损坏了,找备份来恢复吧
#2
文件损坏了,找备份来恢复吧
#3
你要一个个步骤去执行,不是一次性执行所有代码。
先看能否切换到EMERGENCY,
再是设置数据为EMERGENCY,
然后再是checkdb。
如果到checkdb出现824错误,那么才考虑是否可以使用
DBCC CHECKDB (dbname, repair_allow_data_loss) with NO_INFOMSGS
恢复,这步骤会导致丢失一些数据,总比什么都好。
等数据库修复ok了,再执行最后的两句。
ALTER DATABASE test SET ONLINE
GO
ALTER DATABASE test SET MULTI_USER
GO
如果以上的方法都没解决问题,那么可能要通过之前的数据库备份文件恢复了。
先看能否切换到EMERGENCY,
再是设置数据为EMERGENCY,
然后再是checkdb。
如果到checkdb出现824错误,那么才考虑是否可以使用
DBCC CHECKDB (dbname, repair_allow_data_loss) with NO_INFOMSGS
恢复,这步骤会导致丢失一些数据,总比什么都好。
等数据库修复ok了,再执行最后的两句。
ALTER DATABASE test SET ONLINE
GO
ALTER DATABASE test SET MULTI_USER
GO
如果以上的方法都没解决问题,那么可能要通过之前的数据库备份文件恢复了。
#4
先看能否切换到SINGLE_USER
#5
先看能否切换到SINGLE_USER
能的话,先切到这个下面再操作,否则操作过程中再可能会有新数据之类产生
会越来越麻烦.
#6
先看能否切换到SINGLE_USER
没办法切到SINGLE_USER,难受
#7
提示 语法错误,是不是你输入法问题?
你看其他进程正在使用superfzyk数据库,能kill就先kill掉
你看其他进程正在使用superfzyk数据库,能kill就先kill掉
#8
提示 语法错误,是不是你输入法问题?
你看其他进程正在使用superfzyk数据库,能kill就先kill掉
语法错误是空格的问题,改过来了也是一样的结果,奔溃了
#9
提示 语法错误,是不是你输入法问题?
你看其他进程正在使用superfzyk数据库,能kill就先kill掉
语法错误是空格的问题,改过来了也是一样的结果,奔溃了
根据提示一个一个的解决,
磁盘空间没问题吧?,检查下数据库文件属性中的权限是否设置正确。
#10
检查磁盘是否满了,要是没满就执行下面语句(注意数据库名称)
ALTER DATABASE EPDM SET SINGLE_USER
ALTER DATABASE EPDM SET ONLINE
ALTER DATABASE EPDM SET MULTI_USER
ALTER DATABASE EPDM SET SINGLE_USER
ALTER DATABASE EPDM SET ONLINE
ALTER DATABASE EPDM SET MULTI_USER
#11
产自要把磁盘空间清理出来,不然恢复无法完成(
从你的戴图来看,你明显没有清理磁盘,仍然是提示空间不足)
其次,提示已经告诉你正在恢复了,你查下 sql server 日志(sp_readerrorlog) ,日志中应该有该库正在恢复的日志记录(里面有进度的百分比),除非这个进度长时间不动,否则正常情况都是等它完成
其次,提示已经告诉你正在恢复了,你查下 sql server 日志(sp_readerrorlog) ,日志中应该有该库正在恢复的日志记录(里面有进度的百分比),除非这个进度长时间不动,否则正常情况都是等它完成