sql server問題集錦【自用】
阿新 • • 發佈:2020-07-28
1、System.Data.SqlClient.SqlError: 無法執行 BACKUP LOG,因為當前沒有資料庫備份。
解決辦法:還原選擇中去掉結尾日誌就可以了
原文地址:http://tnblog.net/aojiancc2/article/details/188
2、System.Data.SqlClient.SqlError: 磁碟卷 'C:\' 上的可用空間不足,無法建立資料庫。資料庫尚需 29015998464 位元組的可用空間,但只有 23556284416 位元組可用。
我從伺服器上備份過來的資料庫,還原到本機上就提示空間不足,後來一看,日誌檔案居然佔了10多個G,我的資料庫才十幾兆。之後從網上找到了收縮日誌的方法,挺好用的。
原文地址:https://blog.csdn.net/Sunsame_Wei/article/details/107459716
USE [master] GO ALTER DATABASE 庫名 SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE 庫名 SET RECOVERY SIMPLE --簡單模式 GO USE 庫名 GO DBCC SHRINKFILE (N'日誌檔案邏輯名' , 11, TRUNCATEONLY) GO USE[master] GO ALTER DATABASE 庫名 SET RECOVERY FULL WITH NO_WAITGO ALTER DATABASE 庫名 SET RECOVERY FULL --還原為完全模式 GO ———————————————— 版權宣告:本文為CSDN博主「Sunsame_Wei」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處連結及本宣告。 原文連結:https://blog.csdn.net/Sunsame_Wei/java/article/details/107459716
USE庫名 GO select * from sysfiles
其中紅色圈出來的就是日誌檔案邏輯名
3、資料庫 'med_hospital' 已開啟,並且一次只能有一個使用者訪問。
原文地址:https://blog.csdn.net/a497785609/article/details/47781879
USE master; GO DECLARE @SQL VARCHAR(MAX); SET @SQL='' SELECT @SQL=@SQL+'; KILL '+RTRIM(SPID) FROM master..sysprocesses WHERE dbid=DB_ID('庫名'); EXEC(@SQL); GO ALTER DATABASE 庫名 SET MULTI_USER;
4、資料庫還原失敗後,一直提示“正在還原”
restore database datebasename with recovery --datebasename要替換成資料庫的名稱
以後可能還會繼續補充,貼出來的只是簡化版,如果遇到相關問題,可點選原文地址,檢視詳細解決辦法。