Volver a generar bases de datos del sistema

Las bases de datos del sistema deben volver a generarse para corregir problemas por daños en las bases de datos master, model, msdb o resource, o para modificar la intercalación de nivel de servidor predeterminada. En este tema se ofrecen instrucciones paso a paso para volver a generar las bases de datos del sistema.

Antes de volver a generar las bases de datos del sistema

Cuando se vuelven a generar las bases de datos master, model, msdb y tempdb, las bases de datos se quitan y se vuelven a crear en su ubicación original. Si se especifica una nueva intercalación en la instrucción para volver a generar las bases de datos del sistema, estas se crearán con esa configuración de intercalación. Se perderán las modificaciones que los usuarios hayan realizado en esas bases de datos. Por ejemplo, es posible que haya objetos definidos por los usuarios en la base de datos master, trabajos programados en msdb, o cambios en la configuración predeterminada de la base de datos model.

Realice las tareas siguientes antes de volver a generar las bases de datos del sistema para asegurarse de que puede restaurar la configuración actual de las mismas.

  1. Registre todos los valores de configuración del servidor.

    SELECT * FROM sys.configurations;
    
  2. Registre todos los Service Pack y todas las revisiones que se hayan aplicado a la instancia de SQL Server y la intercalación actual. Deberá aplicar estas actualizaciones de nuevo después de volver a generar las bases de datos del sistema.

    SELECT
    SERVERPROPERTY('ProductVersion ') AS ProductVersion,
    SERVERPROPERTY('ProductLevel') AS ProductLevel,
    SERVERPROPERTY('ResourceVersion') AS ResourceVersion,
    SERVERPROPERTY('ResourceLastUpdateDateTime') AS ResourceLastUpdateDateTime,
    SERVERPROPERTY('Collation') AS Collation;
    
  3. Registre la ubicación actual de todos los archivos de registro y datos de las bases de datos del sistema. Al volver a generar las bases de datos del sistema, todas ellas se instalan en su ubicación original. Si ha movido los archivos de registro o de datos de las bases de datos del sistema a otra ubicación, deberá volver a moverlos.

    SELECT name, physical_name AS current_file_location
    FROM sys.master_files
    WHERE database_id IN (DB_ID('master'), DB_ID('model'), DB_ID('msdb'), DB_ID('tempdb'));
    
  4. Busque la copia de seguridad actual de las bases de datos master, model y msdb.

  5. Si la instancia de SQL Server se configura como Distribuidor de replicación, busque la copia de seguridad actual de la base de datos de distribución.

  6. Asegúrese de que tiene los permisos adecuados para volver a generar las bases de datos del sistema. Para realizar esta operación, debe ser miembro de la función fija de servidor sysadmin. Para obtener más información, vea Funciones de nivel de servidor.

  7. Compruebe que haya copias de los archivos de plantilla de registro y de datos de las bases de datos master, model y msdb en el servidor local. La ubicación predeterminada de los archivos de plantilla es C:\Archivos de programa\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn\Templates. Estos archivos se usan durante el proceso de volver a generar las bases de datos y deben estar presentes para que la instalación se realice correctamente. Si no lo están, ejecute la característica de reparación del programa de instalación o copie los archivos manualmente desde el disco de instalación. Para encontrar los archivos en el disco de instalación, navegue hasta el directorio de la plataforma correcta (x86, x64 o ia64) y, a continuación, navegue hasta setup\sql_engine_core_inst_msi\Pfiles\SqlServr\MSSQL.X\MSSQL\Binn\Templates.

Procedimiento para volver a generar las bases de datos del sistema

Con el procedimiento siguiente se vuelven a generar las base de datos del sistema master, model, msdb y tempdb. No se pueden especificar las bases de datos del sistema que se van a volver a generar. Para las instancias en clúster, este procedimiento se debe realizar en el nodo activo y el recurso de SQL Server en el grupo de aplicaciones de clúster correspondiente se debe tomar sin conexión antes de realizar el procedimiento.

Este procedimiento no vuelve a generar la base de datos resource. Vea la sección "Procedimiento para volver a generar la base de datos resource" más adelante en este mismo tema.

Para volver a generar bases de datos del sistema en una instancia de SQL Server:

  1. Inserte el disco de instalación de SQL Server 2008 en la unidad de disco o, en el símbolo del sistema, cambie los directorios a la ubicación del archivo setup.exe en el servidor local. La ubicación predeterminada en el servidor es C:\Archivos de programa\Microsoft SQL Server\100\Setup Bootstrap\Release.

  2. En una ventana del símbolo del sistema, escriba el siguiente comando. Los parámetros entre corchetes son opcionales. No escriba los corchetes. Cuando se usa el sistema operativo Windows Vista con Control de cuentas de usuario (UAC) habilitado, para ejecutar el programa de instalación se requieren privilegios elevados. El símbolo del sistema se debe ejecutar como Administrador.

    Setup /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=nombreDeInstancia /SQLSYSADMINACCOUNTS=cuentas [/ SAPWD=contraseñaSegura ] [ /SQLCOLLATION=nombreDeIntercalación]

    Nombre del parámetro

    Descripción

    /QUIET o /Q

    Especifica que el programa de instalación se ejecute sin ninguna interfaz de usuario.

    /ACTION=REBUILDDATABASE

    Especifica que el programa de instalación vuelva a crear las bases de datos del sistema.

    /INSTANCENAME=nombreDeInstancia

    Es el nombre de la instancia de SQL Server. Para la instancia predeterminada, escriba MSSQLSERVER. Para una instancia con nombre, escriba el nombre con el formato nombre_servidor\nombre_instancia. 

    /SQLSYSADMINACCOUNTS=cuentas

    Especifica las cuentas individuales o de grupos de Windows que se agregarán a la función fija de servidor sysadmin. Si especifica varias cuentas, sepárelas con un espacio en blanco. Escriba, por ejemplo, BUILTIN\Administrators MiDominio\MiUsuario. Si especifica una cuenta que contiene un espacio en blanco en el nombre de cuenta, agregue la cuenta entre comillas. Por ejemplo, escriba "NT AUTHORITY\SYSTEM."

    [ /SAPWD=contraseñaSegura ]

    Especifica la contraseña de la cuenta sa de SQL Server. Este parámetro es obligatorio si la instancia usa el modo Autenticación mixta (autenticación de SQL Server y de Windows). 

    Nota de seguridadNota de seguridad
    La cuenta sa es una cuenta conocida de SQL Server y suele ser el objetivo de usuarios malintencionados. Es muy importante que use una contraseña segura en el inicio de sesión de sa.

    No especifique este parámetro para el modo Autenticación de Windows.

    [ /SQLCOLLATION=nombreDeIntercalación ]

    Especifica una nueva intercalación de nivel de servidor. Este parámetro es opcional. Cuando no se especifica, se usa la intercalación actual del servidor.

    Nota importanteImportante
    Al cambiar la intercalación de nivel de servidor no se cambia la de las bases de datos de usuario existentes. Todas las bases de datos de usuario nuevas usarán la nueva intercalación de manera predeterminada.

    Para obtener más información, vea Establecer y cambiar la intercalación de servidor.

  3. Una vez completada la regeneración de las bases de datos del sistema, el programa de instalación regresa al símbolo del sistema sin mostrar ningún mensaje. Examine el archivo de registro Summary.txt para comprobar que el proceso se completó correctamente. Este archivo se encuentra en C:\Archivos de programa\Microsoft SQL Server\100\Setup Bootstrap\Logs.

Tareas posteriores al proceso de volver a generar bases de datos

Después de volver a generar la base de datos, quizás deba realizar las tareas adicionales siguientes:

  • Aplicar el último Service Pack y las revisiones correspondientes.

  • Restaurar las copias de seguridad completas más recientes de las bases de datos master, model y msdb. Para obtener más información, vea Consideraciones para hacer copias de seguridad y restaurar las bases de datos.

    Nota importanteImportante

    Si ha cambiado la intercalación del servidor, no restaure las bases de datos del sistema. Si lo hace, reemplazará la nueva intercalación por la antigua.

    Si no dispone de una copia de seguridad o si la copia de seguridad restaurada no es actual, vuelva a crear las entradas que no se encuentren. Por ejemplo, vuelva a crear todas las entradas que no se encuentren de las bases de datos de usuario, los dispositivos de copia de seguridad, los inicios de sesión de SQL Server, los extremos, etc. La mejor forma de volver a crear las entradas es ejecutar los scripts originales que se usaron para crearlas. 

Nota de seguridadNota de seguridad

Se recomienda proteger los scripts para evitar que los modifiquen personas no autorizadas.

Procedimiento para volver a generar la base de datos resource

Con el procedimiento siguiente se vuelve a generar la base de datos resource. Al volver a generar la base de datos resource, se pierden todos los Service Pack y las revisiones y, por lo tanto, se deben volver a aplicar.

Para volver a generar la base de datos de recursos:

  1. Inicie el programa de instalación de SQL Server (setup.exe) desde los discos de distribución de SQL Server 2008.

  2. En el área de navegación izquierda, haga clic en Mantenimiento y, a continuación, en Reparar.

  3. Las rutinas de archivo y de reglas auxiliares del programa de instalación se ejecutan para asegurarse de que el sistema tiene instalados los requisitos previos y que el equipo supera las reglas de validación del programa de instalación. Haga clic en Aceptar o en Instalar para continuar.

  4. En la página Seleccionar instancia, seleccione la instancia que desea reparar y, a continuación, haga clic en Siguiente.

  5. Las reglas de reparación se ejecutarán para validar la operación. Para continuar, haga clic en Siguiente.

  6. En la página Listo para reparar, haga clic en Reparar. La página Operación completada indica que la operación ha finalizado.

Solucionar errores del proceso de volver a generar bases de datos

Los errores de sintaxis y otros errores en tiempo de ejecución se muestran en la ventana del símbolo del sistema. Examine la instrucción de instalación en busca de los siguientes errores de sintaxis:

  • La barra diagonal (/) no aparece delante de los nombres de los parámetros.

  • Se ha omitido el signo de igualdad (=) entre el nombre del parámetro y su valor.

  • Hay espacios en blanco entre el nombre del parámetro y el signo igual.

  • Presencia de comas (,) u otros caracteres que no se especifican en la sintaxis.

Cuando se haya completado el proceso de volver a generar la base de datos, examine los registros de SQL Server en busca de errores. De manera predeterminada, están en C:\Archivos de programa\Microsoft SQL Server\100\Setup Bootstrap\Logs. Para encontrar el archivo de registro que contiene los resultados del proceso de volver a generar bases de datos, cambie el directorio a la carpeta Logs en un símbolo del sistema y, a continuación, ejecute findstr /s RebuildDatabase summary*.*. Esta búsqueda indicará los archivos de registro que contengan los resultados del proceso de volver a generar las bases de datos del sistema. Abra los archivos de registro y compruebe si contienen mensajes de error relevantes.

Vea también

Conceptos

Historial de cambios

Contenido actualizado

Se ha revisado la información sobre clústeres para indicar que el recurso de SQL Server en el grupo de aplicaciones de clúster correspondiente se debe tomar sin conexión antes de realizar el procedimiento.

Se ha agregado un requisito a la definición de /SQLSYSADMINACCOUNTS para escribir los nombres de cuenta entre comillas si el nombre contiene un espacio en blanco.