Sql-Server
如何修復文件流?
我有 SQL Server 2008 R2,當我嘗試訪問儲存在文件流中的任何值時,我收到以下錯誤:
Msg 233, Level 20, State 0, Line 0
從伺服器接收結果時發生傳輸級錯誤。(提供者:共享記憶體提供者,錯誤:0 - 管道的另一端沒有程序。)
SQL ERRORLOG 文件中還引發以下錯誤:
SqlDumpExceptionHandler:程序 51 生成致命異常 c0000005 EXCEPTION_ACCESS_VIOLATION。SQL Server 正在終止此程序。
我閱讀了有關該異常的資訊,Microsoft 有它的 KB ( KB972936 ),但在我安裝了它的修補程序後它也沒有工作。
如果我
SELECT
使用該表中的記錄計數:SELECT COUNT(1) FROM [Table_Name]
我得到正確的結果。
以下是數據庫文件和文件組的一些詳細資訊。數據庫有 2 個文件,即“行數據”文件和“日誌”文件,其中還應包含“文件流數據”項。
該數據庫具有以下文件組:
- 行:帶 1 個文件的主
- 文件流:$$ MyFileName $$有 0 個文件!
該錯誤似乎指向 SQL Server 服務帳戶無法訪問文件流數據。嘗試使用 SQL Server 配置管理器(不是 Windows 服務管理器!)將 SQL Server 服務帳戶更改為內置帳戶之一。然後將其更改回原始帳戶(您需要在這裡知道密碼!)。
這應該可以解決任何訪問權限問題。但是,它將導致兩次服務重新啟動。