API de instancia de SQL Server Express LocalDB

Se aplica a:SQL Server

En el mundo tradicional de SQL Server basado en servicios, las instancias individuales de SQL Server instaladas en un único equipo están separadas físicamente. Cada instancia debe instalarse y quitarse por separado, tiene un conjunto independiente de archivos binarios y se ejecuta en un proceso de servicio independiente. El nombre de la instancia de SQL Server se utiliza para especificar a qué instancia de SQL Server se desea conectar el usuario.

La API de instancia de SQL Server Express LocalDB usa un modelo simplificado de instancia ligera. Aunque las instancias individuales de LocalDB estén separadas en el disco y en el Registro, utilizan el mismo conjunto de archivos binarios compartidos de LocalDB. Además, LocalDB no usa servicios. Las instancias de LocalDB se inician a petición mediante llamadas API de instancia de LocalDB. En LocalDB, el nombre de instancia se utiliza para especificar la instancia de LocalDB con la que va a trabar el usuario.

Una instancia de LocalDB siempre es propiedad de un solo usuario y solo es visible y accesible desde el contexto de este usuario, a menos que se habilite el uso compartido de instancias.

Aunque técnicamente las instancias de LocalDB no son las mismas que las instancias tradicionales de SQL Server, su uso previsto es similar. Se llaman instancias para enfatizar esta similitud y hacerlas más intuitivas para los usuarios de SQL Server.

LocalDB admite dos tipos de instancias: instancias automáticas (AI) e instancias con nombre (NI). El identificador para una instancia de LocalDB es el nombre de instancia.

Instancias automáticas de LocalDB

Las instancias automáticas de LocalDB son públicas; Se crean y gestionan automáticamente para el usuario y pueden ser utilizados por cualquier aplicación. Existe una instancia automática de LocalDB para cada versión de LocalDB instalada en el equipo del usuario. El nombre de la instancia automática de LocalDB es MSSQLLocalDB.

Las instancias automáticas de LocalDB proporcionan una administración agilizada de la instancia. El usuario no necesita crear la instancia. De esta forma, los usuarios pueden instalar aplicaciones con facilidad y migrarlas a equipos diferentes. Si el equipo de destino tiene la versión especificada de LocalDB instalada, la instancia automática de LocalDB de esa versión también estará disponible en ese equipo.

Administración automática de instancias

Un usuario no necesita crear una instancia automática de LocalDB. La instancia se crea de forma diferir la primera vez que se usa la instancia, siempre y cuando la versión especificada de LocalDB esté disponible en el equipo del usuario. Desde el punto de vista del usuario, la instancia automática siempre está presente si los archivos binarios de LocalDB están presentes.

En las instancias automáticas están también operativas otras operaciones de administración de estancias, como Eliminar, Compartir y No compartir. En concreto, la eliminación de una instancia automática restablece eficazmente la instancia, que se vuelve a crear en la siguiente operación Start. Es posible que se requiera eliminar una instancia automática si las bases de datos del sistema están dañadas.

Instancias de LocalDB con nombre

Las instancias de LocalDB nombradas son privadas; Una instancia es propiedad de una sola aplicación responsable de crear y gestionar la instancia. Las instancias con nombre de LocalDB proporcionan aislamiento y mejoran el rendimiento.

Creación de instancias con nombre

El usuario debe crear instancias con nombre explícitamente a través de la API de administración de LocalDB o implícitamente a través del app.config archivo de una aplicación administrada. Una aplicación administrada también puede usar la API.

Cada instancia con nombre tiene una versión de LocalDB asociada; es decir, señala a un conjunto de archivos binarios de LocalDB determinado. La versión de la instancia con nombre se establece durante el proceso de creación de la instancia.

Reglas de nomenclatura de instancias con nombre

Un nombre de instancia de LocalDB puede tener hasta 128 caracteres (el tipo de dato sysname impone este límite). Este límite es una diferencia significativa en comparación con los nombres de instancia tradicionales de SQL Server, que están limitados a nombres NetBIOS de 15 caracteres ASCII. La razón de esta diferencia es que LocalDB trata las bases de datos como archivos, y por tanto implica semántica basada en archivos, por lo que los usuarios tienen más libertad para elegir nombres de instancia.

Los nombres de instancia de LocalDB pueden contener cualquier tipo de caracteres Unicode que sean válidos en el componente de nombre de archivo. Los caracteres no válidos en un componente de nombre de archivo suelen incluir los siguientes caracteres: caracteres ASCII/Unicode de 1 a 31 y comillas ("), menor que (), mayor que (<>), canalización (), retroceso (|), tabulación (\b\t), dos puntos (:), asterisco (*), signo de interrogación (?), barra diagonal inversa (\) y barra diagonal (/). Se permite el carácter NULL (\0) porque se usa para la terminación de cadena; todo después del primer carácter NULL se omite.

Note

La lista de caracteres no válidos puede depender del sistema operativo y podría cambiar en futuras versiones.

Los espacios en blanco iniciales y finales en los nombres de instancia se omiten y recortan.

Para evitar conflictos de nombre, una instancia LocalDB con nombre no puede usar el nombre MSSQLLocalDBautomático reservado de instancia . Un intento de crear una instancia con ese nombre crea efectivamente una instancia predeterminada.

Article Description
Información de versiones y encabezados de SQL Server Express LocalDB Proporciona información sobre el archivo del encabezado y las claves del Registro para encontrar la API de la instancia de LocalDB.
Herramienta de administración de la línea de comandos: SqlLocalDB.exe Describe SqlLocalDB.exe, una herramienta para administrar las instancias de LocalDB desde la línea de comandos.
Función LocalDBCreateInstance Describe la función para crear una nueva instancia de LocalDB.
Función de Instancia LocalDBDeleteInstant Describe la función para quitar una instancia de LocalDB.
Función LocalDBFormatMessage Describe la función para devolver la descripción localizada para un error de LocalDB.
Función LocalDBGetInstanceInfo Describe la función para obtener información de una instancia de LocalDB, como si existe, información de versión, si se está ejecutando, etc.
Función LocalDBGetInstances Describe la función para devolver todas las instancias de LocalDB con una versión determinada.
Función LocalDBGetVersionInfo Describe la función para devolver información de una versión concreta de LocalDB.
Función LocalDBGetVersions Describe la función para devolver todas las versiones de LocalDB disponibles en un equipo.
Función de LocalDBShareInstance Describe la función para compartir una instancia especificada de LocalDB.
Función LocalDBStartInstance Describe la función para iniciar una instancia especificada de LocalDB.
Función de rastreo de LocalDBStartTracing Describe la función para habilitar el seguimiento de API para un usuario.
Función LocalDBStopInstance Describe la función para detener la ejecución de una instancia determinada de LocalDB.
Función de LocalDBStopTracing Describe la función para deshabilitar el seguimiento de API para un usuario.
Función LocalDBUnshareInstance Describe la función para detener el uso compartido de una instancia determinada de LocalDB.