sqlserver 日誌收縮及斷開使用者連線
阿新 • • 發佈:2018-12-28
電腦上還原一個數據庫時在指定盤下空間不足,就臨時還原到有足夠空間的盤下,後面想剪下到指定盤裡,但是空間又不足。所以就開始進行收縮資料庫日誌。具體操作如下:
1.要先在更改的資料庫上右鍵-屬性-選項,把恢復模式更改為 簡單
然後右鍵-任務-收縮-檔案
然後就是選擇相應的檔案型別,收縮操作中更改日誌大小
這樣就更改了大小,然後資料庫分離就能剪下資料到指定的盤下了。但是進行分離的時候遇到一個問題,就是當前資料庫有人連線了就無法進行分離,這時就需要強制性斷開所有的連結,在master資料庫下新建查詢然後執行以下sql即可:
declare@i int declare cur cursor --定義遊標 for select spid from sysprocesses where db_name(dbid)= '資料庫' --根據正在使用的資料庫id查詢會話id open cur --開啟遊標 fetch next from cur into @i while @@fetch_status=0 begin exec('kill '+@i) --關閉當前會話 fetch next from cur into @i --提取當前位置的下一行資料 end close cur deallocate cur --關閉釋放遊標