Event ID 5586 (Windows SharePoint Services health model)
Applies To: Windows SharePoint Services 3.0
Windows SharePoint Services 3.0 uses SQL Server databases to store most of the content for the Web site and configuration settings. For example, all pages in the site, files in document libraries, files attached to lists, and information in lists are stored in the content database, and security and permission settings along with other configuration settings are stored in the configuration database in SQL Server.
Windows SharePoint Services 3.0 uses a service account to communicate with the database on behalf of a user request. This service account can be either a specific user name and password (domain name and password) or a predefined system account, such as Local System or Network Service. When a SQL Server database is created, a value for the maximum database size is set. Each database has a separate database size setting. Note that a Web application might be associated with one or many databases.
Event Details
Product: |
Windows SharePoint Services |
ID: |
5586 |
Source: |
Windows SharePoint Services 3 |
Version: |
12.0 |
Symbolic Name: |
ULSEvtTag_5586 |
Message: |
Unknown SQL Exception %1 occurred. Additional error information from SQL Server is included below. %2 |
Diagnose
An unhandled SQL Server exception occurred. Additional error information from SQL Server is included in the text of event 5586.
This error might be caused by one of the following conditions:
The account that Windows SharePoint Services 3.0 is using to access the database does not have sufficient permissions.
The wrong SQL Server collation is being used.
The wrong version of SQL Server is installed.
The database is set to Read-Only.
The database has run out of room.
The database has been corrupted.
To check if this account has correct permission in SQL Server
Connect to the computer running SQL Server by using an account with administrator permissions.
In SQL Server Management Studio, open the Security node, and then open the Logins node. You should see the account listed as a SQL Login.
If the account is there, then open the database node, open the Security node under the database, and then open the Roles node.
Open the Database Roles node and double-click the db_owner role to open its properties.
In the Database Roles Properties dialog box, under Members of this role, you should see the database access account. If it is not there, add the account by using the procedure in the Grant correct permissions to the database access account section.
To verify and change the database collation
Connect to the computer running SQL Server by using an account with db_owner permissions to the database.
In SQL Server Management Studio, open the Databases node. You should look for the specific database that was indicated in event 4972 or 5586.
In the database Properties, on the General page, the collation is listed in the Maintenance section.
To change the collation, open the Options page.
Select the correct collation from the Collation drop-down list. The collation should read "Latin1_General_CI_AS_KS_WS". If it is not, you can change the collation by using the procedure in the "Select the correct SQL Server collation" section.
To verify and change the SQL Server version
Connect to the computer running SQL Server by using an account with db_owner permissions to the database.
In SQL Server Management Studio, on the Help menu, click About.
In the About Microsoft SQL Server Management Studio dialog box, under Component Name, look for Microsoft Database Access Components (MDAC). The version should be 2.8.1022.0 or later. SQL Server 2005 will have 2000.086.3959. This version is sufficient. If the version is not correct use the procedure in the "Update the MDAC Version section or the Install correct SQL Server version" section.
To verify and change the database collation
Connect to the computer running SQL Server by using an account with db_owner permissions to the database.
In SQL Server Management Studio, open the Databases node. You should look for the specific database that was indicated in event 4972 or 5586.
In the database Properties, on the Options page, under State, the Database Read-Only option should be "False". If it is not set correctly, use the procedure in the "Change database to Read / Write" section.
To check if Autogrowth is enabled (Autogrowth will prevent the database from running out of room)
In SQL Server Management Suite, open the server node, right-click the database, and then click Properties. The database name is provided in the event message.
On the Properties dialog box, on the left navigation pane, click Files.
In the Database files box, in the Autogrowth column, the text should include "unrestricted growth". If it does not, you enable unrestricted database growth by using the procedure in the "Increase the size of the SQL Server database" section.
If none of these is the problem, then the database might be corrupted. If this is the case, then restore the database using the procedure in the Restore database from backup section.
Resolve
To resolve this issue, use the resolution that corresponds to the cause you identified in the Diagnose section. After performing the resolution, see the Verify section to confirm that the feature is operating properly.
Cause | Resolution |
---|---|
Insufficient SQL Server database permissions |
Grant correct permissions to the database access account |
SQL Server database is full |
Increase the size of the SQL Server database |
SQL Server database is full |
Distribute Web applications across more databases |
Incorrect MDAC version |
Update the MDAC Version |
SQL Server database not found |
Restore database from backup |
Incorrect version of SQL Server |
Install correct SQL Server version |
The SQL Server collation is not supported |
Select the correct SQL Server collation |
Database is Read-Only |
Change database to Read / Write |
Grant correct permissions to the database access account
You must be a member of the SharePoint Administrators group to perform this task.
To assign the database access account
In Central Administration, on the left navigation pane, click Operations.
On the Operations page, in the Security Configuration section, click Security accounts.
On the Security Accounts page, in the Credential Management section, select the Web application pool option.
Select the Web service from the Web service drop-down list. The default is "Windows SharePoint Services Web Application".
Select the Web application pool from the Application pool drop-down list.
Select the Configurable option.
Type the correct domain account into the User name box and the password for that account into the Password box.
Click OK to save changes.
Restart IIS.
To ensure that this account has correct permission in SQL Server
Connect to the computer running SQL Server by using an account with administrator permissions.
In SQL Server Management Studio, open the Security node, and then open the Logins node. You should see the account listed as a SQL Login.
If the account is there, then open the database node, open the Security node under the database, and then open the Roles node.
Open the Database Roles node and double-click the db_owner role to open its properties.
In the Database Roles Properties dialog box, under Members of this role, you should see the database access account. If the account is not there, add it by clicking Add.
Increase the size of the SQL Server database
Windows SharePoint Services 3.0 cannot write to a database if the database has run out of room. One solution is to increase the maximum size setting for the database that is full.
You must be a member of the Administrators group to perform this action.
To increase the size of the database
In SQL Server Management Suite, open the server node, right-click the database, and then click Properties. The database name is provided in the event message.
On the Properties dialog box, on the left navigation pane, click Files.
In the Database files box, in the Autogrowth column, click the ellipsis for the database file.
In the Change Autogrowth dialog box, under Maximum File Size, if the Restricted File Growth option is selected, increase the maximum file size in the box to the right. You can also configure the database to grow without restrictions by selecting the Unrestricted File Growth option.
Click OK.
Distribute Web applications across more databases
Windows SharePoint Services 3.0 cannot write to a database if the database has run out of room. One solution is to distribute the site content across multiple databases. You can do this by adding additional content databases to the Web application. For more information, see Plan for performance and capacity (https://technet2.microsoft.com/windowsserver/WSS/en/library/7bb49963-a511-40aa-b607-7eb244ec1d521033.mspx).
You must be a member of the SharePoint Administrators group to perform this action.
Update the MDAC Version
The Microsoft Data Access Components (MDAC) version needs to be updated. Version 2.8.1022.0 is the minimum required, and is available from the Microsoft Download Center (https://go.microsoft.com/fwlink/?linkid=5317).
You must be a member of the Administrators group to perform this action.
Restore database from backup
The SQL Server database is not present or accessible on the computer running SQL Server. Confirm that the database is online. If it is not, you will need restore the database from a backup, and re-connect it to Windows SharePoint Services 3.0. For information about restoring the database see the Windows SharePoint Services 3.0 documentation.
You must be a member of the SharePoint Administrators group to perform these tasks.
To restore the database from a previous backup
In Central Administration, on the left navigation pane, click Operations.
On the Operations page, in the Backup and Restore section, click Restore from backup.
On the Restore from Backup page, type the backup share path in the Backup location box, and then click OK.
Select the backup from the list.
Important
The backup must be of at least the database and the accompanying Web application.
Click Continue Restore Process.
Select the check box next to the database and click Continue Restore Process.
Under Restore Options, select the Same configuration option. This will overwrite the existing database.
Click OK.
To reconnect the database in Central Administration
In Central Administration, on the left navigation pane, click Application Management.
On the Application Management page, in the SharePoint Web Application Management section, click Content databases.
On the Manage Content Databases page, click Add a content database.
On the Add Content Database page, in the Web Application section, select the Web application from the Web application drop-down list.
Under Database Name and Authentication, type the name of the server in the Database Server box and the database name in the Database Name box.
Click OK to save the changes.
Install correct SQL Server version
The computer that hosts the database server role must have SQL Server 2000 with SP3a or later or Microsoft SQL Server 2005 SP1 or later. You can either install or upgrade the server to the correct version of SQL Server.
To perform this procedure, you must be a member of the Administrators group on the SQL Server computer.
Select the correct SQL Server collation
You must have db_owner access to the database to perform this action.
To verify and change the database collation
Connect to the computer running SQL Server by using an account with db_owner permissions to the database.
In SQL Server Management Studio, open the Databases node. You should look for the specific database that was indicated in event 4972.
In the database Properties, on the General page, the collation is listed in the Maintenance section.
To change the collation, open the Options page.
Select the correct collation from the Collation drop-down list.
Change database to Read / Write
You must have db_owner access to the database to perform this action.
To increase the size of the database
In SQL Server Management Suite, open the server node, right-click the database, and then click Properties. The database name is provided in the event message.
On the Properties dialog box, on the left navigation pane, click Files.
The Enable Autogrowth check box must be selected to make any changes.
In the Database files box, in the Autogrowth column, click the ellipsis for the database file.
In the Change Autogrowth dialog box, under Maximum File Size, if the Restricted File Growth option is selected, increase the maximum file size in the box to the right. You can also configure the database to grow without restrictions by selecting the Unrestricted File Growth option.
Click OK.
Verify
You must be a member of the SharePoint Administrators group to perform this task.
To ensure that any database issues have been resolved
Use the command Stsadm.exe -o enumsites to list the sites for each Web application to list all sites in the various databases, and locate one site in each database.
Browse to that site, and ensure that the appropriate page rendered. If you get an access denied page with an option to request access, or the option to sign in as a different user, the operation completed successfully.
In Central Administration, on the left-hand navigation pane, click Application Management.
On the Application Management page, in the SharePoint Site Management section, click Quota templates.
On the Quota Templates page, create a new quota template. The specific settings are not relevant to this verification test. You are creating the template to see if it can be accessed in step 7.
Click OK to save the quota template.
Refresh the browser window, and then return to the quota templates page. If the quota template that you created can be selected, then access to the Windows SharePoint Services 3.0 Configuration database has been restored.
Click Delete to delete the quota template.