
我嘗試在使用 sql 2008 合併複製的伺服器上執行以下命令
sp_addscriptexec MyPub, '\\my-server\MSSQL\updateTablePermissions.sql', 1
我收到以下錯誤訊息
Msg 21330, Level 16, State 1, Procedure sp_MSreplcopyscriptfile, Line 40
無法在快照資料夾下建立子目錄(如果不存在“\my-server\mssql\repldata\unc\my-server_my_db_MyPub\UserScripts” md“\my-server\mssql\repldata\unc\my-server_my_db_MyPub\UserUserUsers ” )。確保有足夠的可用磁碟空間,並且運行快照代理的帳戶有權在快照資料夾下建立子目錄。
有足夠的空間,我的快照運行沒有問題。我確信我錯過了一些簡單的東西,但我一生都沒有看到它。在此伺服器的父伺服器上執行類似的命令,沒有出現任何問題。
答案1
這很可能是權限問題。
根據sp_addscriptexec,要使用 sp_addscriptexec,SQL Server 服務帳戶必須具有對快照位置的讀寫權限以及對儲存任何腳本的位置的讀取權限。
若要使用 sp_addscriptexec,SQL Server 服務帳戶必須具有對快照位置的讀寫權限以及對儲存任何腳本的位置的讀取權限。
請驗證您的 SQL Server 服務帳戶對快照目錄具有讀寫權限,然後重試。