Mueva el archivo de registro sin desconectar la base de datos


14

Necesito mover un archivo de registro de la base de datos a una nueva partición sin desconectar la base de datos.

La forma normal de hacerlo sería separar la base de datos, mover el archivo de registro y luego volver a conectar la base de datos.

¿Es posible hacer esto sin desconectar la base de datos y, de ser así, cómo?


Respuestas:


16

No hay forma de hacer esto con una base de datos en línea.

Cuando mueve un archivo de base de datos ( ALTER DATABASE ... MODIFY FILE), incluso recibe el siguiente mensaje:

El archivo "YourFile" se ha modificado en el catálogo del sistema. La nueva ruta se usará la próxima vez que se inicie la base de datos .


La forma normal de hacerlo sería separar la base de datos, mover el archivo de registro y luego volver a conectar la base de datos.

Esa no es la forma "normal" o aceptada en que lo haría. Para mover archivos de base de datos, hago lo siguiente:

  1. Ejecute un comando ALTER DATABASE para cambiar la ubicación de los archivos
  2. Poner la base de datos fuera de línea
  3. Mueva físicamente los archivos a la nueva ubicación especificada en el paso 1
  4. Poner la base de datos en línea

Consulte esta referencia en TechNet: Mover bases de datos de usuario


3

Según la referencia en las bases de datos de usuarios de TechNet Move de la respuesta de Thomas Stringer , si desea mover los archivos sin detener toda la instancia de SQL Server (siguiendo el "Procedimiento de reubicación planificado"), el orden debe ser:

ALTER DATABASE database_name SET OFFLINE;
... move the file(s) to new location
ALTER DATABASE database_name MODIFY FILE ( NAME = logical_name, FILENAME = 'new_path\os_file_name' );
ALTER DATABASE database_name SET ONLINE;

Tenga en cuenta el OFFLINE primero; luego mueva los archivos y dígale a SQL Server sobre las nuevas ubicaciones.

Si necesita eliminar toda la instancia de SQL Server (consulte el procedimiento para "Reubicación para el mantenimiento programado del disco"), es mejor modificar primero las ubicaciones de los archivos para que cuando se reinicie la instancia, no haya problemas para encontrar los archivos en las nuevas ubicaciones


1

Sé que esta es una pregunta anterior, pero ¿no puede simplemente agregar un segundo archivo de registro (que luego es utilizado por el DB en lugar del original) en la nueva ubicación y luego reducir / eliminar el original?

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.