Excepciones de SQL desconocidas. Evento 5586

 

Se aplica a: SharePoint Foundation 2010, SharePoint Server 2010

Última modificación del tema: 2009-11-10

Nombre de alerta: excepciones de SQL desconocidas

Identificador de evento: 5586

Resumen:   Microsoft SharePoint Foundation usa bases de datos de Microsoft SQL Server 2008 para almacenar los valores de configuración y la mayor parte del contenido de sitios web. Por ejemplo, todas las páginas del sitio, los archivos de las bibliotecas de documentos, los archivos adjuntos a las listas y la información de las listas se almacenan en la base de datos de contenido, mientras que la configuración de seguridad y permisos, junto con otros valores de configuración, se almacenan en la base de datos de configuración de SQL Server 2008.

Microsoft SharePoint Foundation usa una cuenta de servicio para comunicarse con la base de datos en nombre de una solicitud de usuario. Esta cuenta de servicio puede ser un nombre de usuario específico y una contraseña (nombre de dominio y contraseña) o una cuenta predefinida del sistema, como Sistema local o Servicio de red. Al crear una base de datos de SQL Server, se establece un valor para el tamaño máximo de la base de datos. Cada base de datos tiene establecido un valor de tamaño de base de datos independiente. Tenga en cuenta que es posible asociar una aplicación web a una o varias bases de datos.

Síntomas: es posible que se muestren los síntomas siguientes.

  • En el registro de eventos aparece este evento: Identificador de evento: 5586 Descripción: error completo de base de datos en una instancia de SQL Server <nombre de instancia> en la base de datos <nombre de la base de datos>. A continuación, se incluye información adicional de SQL Server sobre el error. <mensaje de error de SQL>.

    Nota

    La descripción cambia según el código de error de SQL.

Causa: el problema se puede deber a una o varias de las causas siguientes.

  1. Permisos insuficientes en la base de datos de SQL Server

  2. Base de datos de SQL Server llena

  3. Versión incorrecta de MDAC

  4. No se encontró la base de datos de SQL Server

  5. Versión incorrecta de SQL Server

  6. No se admite la intercalación de SQL Server

  7. La base de datos es de solo lectura.

Nota

Para realizar las siguientes tareas, debe pertenecer al grupo de administradores del conjunto o granja de servidores de SharePoint.

Solución: conceder los permisos correctos para la cuenta de acceso a la base de datos

  • Para solucionar este problema, asigne la cuenta de acceso a la base de datos y, a continuación, compruebe si tiene el permiso correcto en SQL Server.

    Para asignar la cuenta de acceso a la base de datos:

    1. En el sitio web de Administración central de SharePoint, haga clic en Seguridad y, en la sección Seguridad general, haga clic en Configurar cuentas de servicio.

    2. En la sección Administración de credenciales de la página Configurar cuentas de servicio, seleccione el grupo de aplicaciones web correcto para la aplicación web.

    3. En la sección Seleccione una cuenta para este componente, seleccione la cuenta de dominio que desee asociar a este grupo de aplicaciones web o haga clic en Registrar una nueva cuenta administrada para asociar la cuenta de dominio nueva a este grupo de aplicaciones.

    4. Haga clic en Aceptar para guardar los cambios.

    Para comprobar si la cuenta tiene el permiso correcto en SQL Server:

    1. Conecte con el equipo que ejecuta SQL Server con una cuenta con permisos de administrador.

    2. En SQL Server Management Studio, en el panel de navegación del Explorador de objetos, expanda el nodo Seguridad y, a continuación, expanda el nodo Inicios de sesión. El nombre de la cuenta de acceso a la base de datos indica que se trata de una cuenta de inicio de sesión de SQL, por ejemplo, ##MS_PolicyTsqlExecutionLogin##.

    3. Si la cuenta existe, expanda el nodo Bases de datos, expanda el nodo Seguridad y, a continuación, haga clic en Funciones.

    4. Expanda el nodo Funciones de base de datos, haga clic con el botón secundario en db_owner y seleccione Propiedades.

    5. En el cuadro de diálogo Propiedades de la función de la base de datos, compruebe si la cuenta de acceso a la base de datos está incluida en la lista Miembros de esta función. Si la cuenta no está incluida, haga clic en Agregar.

Nota

Para realizar las siguientes tareas, debe pertenecer al grupo de administradores de la granja de servidores de SharePoint.

Solución: aumentar el tamaño de la base de datos de SQL Server

  • SharePoint Foundation no puede escribir en una base de datos que alcanzó su tamaño máximo. Una solución es aumentar el valor de configuración del tamaño máximo de la base de datos que está llena, nombrada en el mensaje de evento.

    Para aumentar el tamaño de la base de datos:

    1. En SQL Server Management Studio, en el panel de navegación del Explorador de objetos, expanda el nodo del servidor, expanda el nodo Bases de datos, haga clic con el botón secundario en la base de datos que desee y, a continuación, haga clic en Propiedades. El nombre de la base de datos se proporciona en el mensaje de evento.

    2. En el cuadro de diálogo Propiedades, en el panel de navegación, haga clic en Archivos.

    3. En el cuadro de diálogo Archivos de la base de datos, en la columna Crecimiento automático, haga clic en los puntos suspensivos para el archivo de base de datos.

    4. En el cuadro de diálogo Cambiar crecimiento automático, debajo de Tamaño máximo del archivo, si la opción Limitar el crecimiento de los archivos (MB) está seleccionada, aumente el tamaño máximo del archivo en el cuadro a la derecha. También puede configurar la base de datos para que su tamaño aumente sin restricciones. Para ello, seleccione la opción No limitar el crecimiento de los archivos.

    5. Haga clic en Aceptar para guardar los cambios.

Nota

Para realizar las siguientes tareas, debe pertenecer al grupo de administradores de la granja de servidores de SharePoint.

Solución: restaurar la base de datos

  • Si la base de datos de SQL Server no está en el equipo que ejecuta SQL Server o no se puede tener acceso a ella, restaure dicha base de datos a partir de una copia de seguridad y vuelva a conectarla con SharePoint Foundation 2010.

    Para restaurar la base de datos a partir de una copia de seguridad:

    1. Copie la copia de seguridad de la base de datos en el host de SQL Server.

    2. Restaure la base de datos con el comando RESTORE SQL Server . Para obtener más información acerca del comando RESTORE , vea https://msdn.microsoft.com/es-es/library/ms186858(sql.90).aspx.

    Para volver a conectar la base de datos en Administración central:

    1. En la página de Administración central, haga clic en Administración de aplicaciones y, en la sección Bases de datos, haga clic en Administrar bases de datos de contenido.

    2. En la página Administrar bases de datos de contenido, haga clic en Agregar una base de datos de contenido y, en la sección Aplicación web, seleccione la aplicación web.

    3. En la sección Nombre y autenticación de base de datos, escriba el nombre del servidor en el cuadro de texto Servidor de la base de datos y el nombre de la base de datos en el cuadro de texto Nombre de la base de datos.

    4. Haga clic en Aceptar para guardar los cambios.

Solución: instalar la versión correcta de SQL Server.

  • El equipo que hospeda el rol o función del servidor de la base de datos debe tener instalada la Actualización acumulativa (CU) 3 del Service Pack 3 de Microsoft SQL Server 2005 o la Actualización acumulativa 2 del Service Pack 1 de SQL Server 2008. Puede instalar o actualizar el servidor a la versión correcta de SQL Server.

Nota

Debe tener permisos de acceso db_owner a la base de datos para realizar la siguiente tarea.

Solución: seleccionar la intercalación de SQL Server correcta.

  1. Conéctese al equipo que ejecuta SQL Server con una cuenta con permisos db_owner para la base de datos.

  2. En SQL Server Management Studio, en el panel de navegación del Explorador de objetos, expanda el nodo Bases de datos. Haga clic con el botón secundario en la base de datos específica que se indicó en el evento 4972 y, a continuación, haga clic en Propiedades.

  3. En la pestaña General, la intercalación se muestra en la sección Mantenimiento.

  4. Para cambiar la intercalación, abra la página Opciones.

  5. Seleccione la intercalación correcta en el cuadro Intercalación.

Solución: cambiar la base de datos para lectura/escritura.

  • Cambie la base de datos de modo que sea de lectura y escritura realizando los pasos que se indican a continuación, con el propósito de aumentar el tamaño de la base de datos.

    Nota

    Debe tener acceso db_owner a la base de datos para realizar esta acción.

    Para aumentar el tamaño de la base de datos:

    1. En SQL Server Management Studio, en el panel de navegación del Explorador de objetos, expanda el nodo del servidor y, a continuación, expanda el nodo Bases de datos.

    2. Haga clic con el botón secundario en la base de datos que desee y, a continuación, haga clic en Propiedades. El nombre de la base de datos se proporciona en el mensaje de evento.

    3. En el cuadro de diálogo Propiedades de la base de datos, en el panel de navegación, haga clic en Archivos.

    4. En la columna Crecimiento automático de la sección Archivos de la base de datos, haga clic en los puntos suspensivos del archivo de base de datos.

    5. En la sección Tamaño máximo del archivo del cuadro de diálogo Crecimiento automático, si la opción Limitar el crecimiento de los archivos está seleccionada, aumente el tamaño de archivo máximo en el cuadro de la derecha. También puede configurar la base de datos para que su tamaño aumente sin restricciones. Para ello, seleccione la opción No limitar el crecimiento de los archivos.

    6. Haga clic en Aceptar para guardar los cambios.

Para comprobar si se han solucionado los problemas de la base de datos:

  1. En la consola de administración de SharePoint, ejecute el comando de Windows PowerShell Get-SPSite | Format-Table -Property ID,WebApplication,ContentDatabase para obtener una lista de los sitios de cada aplicación web que enumere todos los sitios de las distintas bases de datos y ubicar un sitio en cada base de datos.

  2. Vaya al sitio.