State Service 應用程式未定義資料庫 (SharePoint Server)

適用于:yes-img-132013 yes-img-16 2016yes-img-192019 yes-img-se訂閱版本 no-img-sopMicrosoft 365 中的 SharePoint

規則名稱: 某個 State Service 應用程式未定義資料庫

總結: State Service 服務應用程式未定義 State Service 資料庫。 這可能導致使用某些 SharePoint 元件時發生錯誤,例如 InfoPath 網頁瀏覽器表單和 Microsoft SharePoint Server 圖表網頁元件。

原因: 可能原因包括下列一或多項:

  • 伺服器陣列管理員已刪除與 State Service 服務應用程式相關聯的所有資料庫。

  • 伺服器陣列管理員從未建立資料庫,或從未建立資料庫與 State Service 服務應用程式的關聯。

解決方案:使用 Microsoft PowerShell 為 State Service 服務應用程式建立新資料庫,或使用現有的資料庫

  1. 確認您具備下列成員身分:

    • SQL Server 執行個體上的 securityadmin 固定伺服器角色。

    • 所有要更新之資料庫上的 db_owner 固定資料庫角色。

    • 正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。

    系統管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint 2013 產品 Cmdlet 的權限。

    注意事項

    [!附註] 如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。 如需 PowerShell 權限的其他資訊,請參閱 Add-SPShellAdmin

  2. 啟動 SharePoint 管理命令介面。

    如需如何與 Windows Server 2012 互動的詳細資訊,請參閱<Windows 的常見管理工作及瀏覽方式>。

  3. 如果尚未存在您可以使用的資料庫,請在 PowerShell 命令提示字元處,輸入下列命令:

    New-SPStateServiceDatabase -Name <DatabaseName> -DatabaseServer <ServerName> [-DatabaseCredentials <Credential>] [-ServiceApplication <ID>]
    

    其中:

    • <DatabaseName> 是以字串表示的資料庫名稱。

    • <ServerName> 是資料庫伺服器的名稱。

    • <Credential> 是資料庫的 SQL Server 驗證認證。 如果未使用此參數,將會使用 Windows 驗證。

    • <ID> 是以字串或 GUID 表示的 State Service 服務應用程式識別碼。 如果只有一個 State Service 服務應用程式,則不需要指定此參數。

  4. 在某些環境中,您必須連線至現有的空白 SQL 資料庫。 在此情況下,請於 Windows PowerShell 命令提示字元處,輸入下列命令:

    Mount-SPStateServiceDatabase -Name <DatabaseName> -DatabaseServer <ServerName> [-DatabaseCredentials <Credential>] [-ServiceApplication <ID>]
    

    其中:

    • <DatabaseNname> 是以字串表示的資料庫名稱。

    • <ServerName> 是資料庫伺服器的名稱。

    • <Credential> 是資料庫的 SQL Server 驗證認證。 如果未使用此參數,將會使用 Windows 驗證。

    • <ID> 是以字串或 GUID 表示的 State Service 服務應用程式識別碼。 如果只有一個 State Service 服務應用程式,則不需要指定此參數。

如需詳細資訊,請參閱 Mount-SPStateServiceDatabaseNew-SPStateServiceDatabase