Bases de datos del sistema

Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance

SQL Server incluye las siguientes bases de datos del sistema.

Base de datos del sistema Descripción
Base de datos maestra Registra toda la información del sistema para una instancia de SQL Server.
Base de datos msdb La utiliza el Agente SQL Server para programar alertas y trabajos.
Base de datos model Se utiliza como plantilla para todas las bases de datos creadas en la instancia de SQL Server. Las modificaciones hechas a la base de datos model , como el tamaño de la base de datos, la intercalación, el modelo de recuperación y otras opciones de base de datos, se aplicarán a las bases de datos que se creen con posterioridad.
Base de datos Resource Base de datos de solo lectura que contiene objetos del sistema que se incluyen con SQL Server. Los objetos del sistema persisten físicamente en la base de datos Resource , pero aparecen lógicamente en el esquema sys de cada base de datos.
Base de datos tempdb Área de trabajo que contiene objetos temporales o conjuntos de resultados intermedios.

Importante

En el caso de los grupos elásticos y las bases de datos únicas de Azure SQL Database, solo se aplican la base de datos maestra y la base de datos tempdb. Para obtener más información, vea la Qué es un servidor de Azure SQL Database. Para ver información sobre tempdb en el contexto de Azure SQL Database, vea Base de datos tempdb en SQL Database. En el caso de Azure SQL Managed Instance, se aplican todas las bases de datos del sistema. Para más información sobre Instancias administradas en Azure SQL Database, consulte ¿Qué es Instancia administrada de SQL Database?

modificar datos del sistema

SQL Server no permite a los usuarios actualizar directamente la información de objetos del sistema, como tablas del sistema, procedimientos almacenados del sistema y vistas de catálogo. En vez de eso, SQL Server proporciona un completo conjunto de herramientas administrativas con las que los usuarios pueden administrar totalmente el sistema, los usuarios y los objetos de una base de datos. que incluyen la siguiente información:

  • Utilidades de administración, como SQL Server Management Studio.

  • API de SQL-SMO. Permite a los programadores incluir funcionalidad completa para administrar SQL Server en sus aplicaciones.

  • Scripts Transact-SQL y procedimientos almacenados. Pueden utilizar procedimientos almacenados del sistema e instrucciones DDL de Transact-SQL.

Estas herramientas protegen a las aplicaciones de cambios en los objetos del sistema. Por ejemplo, en ocasiones SQL Server tiene que cambiar las tablas del sistema de nuevas versiones de SQL Server para que admitan las nuevas funciones agregadas. Las aplicaciones que utilizan instrucciones SELECT que hacen referencia directa a tablas del sistema suelen basarse en el formato anterior de estas tablas. Los sitios tal vez no se puedan actualizar a una nueva versión de SQL Server hasta que hayan reescrito las aplicaciones que realizan operaciones de selección de las tablas del sistema. SQL Server tiene en cuenta los procedimientos almacenados del sistema, DDL y las interfaces publicadas de SQL-SMO, y trabaja para mantener la compatibilidad con versiones anteriores de estas interfaces.

SQL Server no admite la definición de desencadenadores en las tablas del sistema, debido a que podrían alterar el funcionamiento del sistema.

Nota:

Las bases de datos del sistema no pueden residir en directorios de recursos compartidos UNC.

ver datos de bases de datos del sistema

No debe utilizar en sus programas instrucciones de Transact-SQL que consulten directamente las tablas del sistema, a menos que ese sea el único modo de obtener la información que requiere la aplicación. En su lugar, las aplicaciones deben obtener información de catálogo y del sistema mediante el uso de:

  • Vistas de catálogo del sistema

  • SQL-SMO.

  • Interfaz de Instrumental de administración de Windows (WMI).

  • Funciones de catálogo, métodos, atributos o propiedades de la API de datos usada en la aplicación, como ADO, OLE DB u ODBC.

  • Procedimientos almacenados del sistema y funciones integradas de Transact-SQL.