Professional Documents
Culture Documents
existentes
Desde el administrador de SQL Server (SQL Server Management Studio), botón derecho
sobre la base de datos que se quiere mover, hacer clic en Propiedades.
Hacer clic en la opción de archivos.
Se observa que el camino donde están los archivos es el común de la instancia (unidad E
en este caso). Hacer clic en Aceptar para cerrar las propiedades.
Llegados a este punto, tenemos dos opciones:
● Desmontar la base de datos, mover los archivos y cargarla de nuevo con las nuevas
ubicaciones. La afectación sólo sería en esta base de datos y no implica la parada del
servicio de SQL. No se permite cambiar las bases de datos de sistema (master, model,
msdb, tempdb).
● Cambiar todas las ubicaciones de las bases de datos, parar el servidor SQL Server,
mover los archivos y volver a arrancar. Implica la parada del servicio de SQL. Permite
cambiar todas las bases de datos.
Personalmente, opto por esta última al encontrarme en fase de mantenimiento, ya que se
pretende cambiar las ubicaciones de todas las bases de datos y es una buena manera de
hacerlo de golpe.
Desde el administrador de SQL Server, iniciar una nueva consulta haciendo clic en el botón
Nueva consulta de la barra de tareas.
Aunque en los comandos se haga la selección de la base de datos, también prefiero
seleccionar en la ventana de consulta la base de datos correcta. En la barra de tareas, en el
desplegable donde está el nombre de la base de datos, seleccionar la base de datos
MASTER que es donde se ejecutarán las diferentes instrucciones.
Comprobar la ubicación física de las diferentes bases de datos por comandos. Escribir las
siguientes instrucciones en la ventana de consulta, cambiando el nombre de la base de datos
AX_TEST por el que corresponda en cada caso:
USE master
GO
Hacer clic en el botón Ejecutar o pulsar la t ecla F5. En la parte inferior del código se visualiza
su resultado. Para la base de datos que se acaba de crear (AX_TEST) las ubicaciones ya son
las correctas.
El resultado es el mismo que hemos visualizado en sus propiedades. Podemos hacer lo mismo
para el resto de bases de datos de sistema y usuario:
USE master
GO
Para no borrar el listado con los nombres de los archivos y su ubicación, que necesitaremos y
al que volveremos después para comprobar, abrir una nueva consulta (botón Nueva consulta)
y ejecutar el comando de modificación de la ubicación física del archivo dentro de la base
de datos:
MODIFY FILE (NAME = (Corresponde a la primera columna del listado anterior),
FILENAME='(nueva ubicación del archivo)’);
De esta manera, para nuestro ejemplo, los comandos para las bases de datos model, msdb,
tempdb y la del usuario servicedesk (no la incluye en el script al ser un ejemplo), exceptuando
la MASTER que es diferente, serían:
USE master;
GO
Repetir el proceso para el parámetro -l… Cuando esté todo correcto, hacer clic en el botón
Aceptar. Se advierte que para que los cambios tengan validez se tiene que reiniciar el
servicio. No es problema porque ya está el servicio detenido.
Antes de arrancar se deben mover los archivos manualmente en las nuevas ubicaciones.
Recordar que el tipo de archivo SQL Server Database Primary Data (marcados en rojo) va a la
unidad K y el archivo SQL Server Database Transaction Log (marcados en azul) a la unidad L.
Volviendo al administrador de configuración SQL Server, botón derecho sobre SQL
Server (nombre instancia) y hacer clic en Iniciar. Si todo está correcto se debe arrancar el
servicio de SQL Server y ya se puede cerrar esta aplicación.
Volver al Administrador SQL Server (SQL Management Studio), actualizar la conexión con
el servidor, botón derecho sobre el nombre del servidor y hacer clic en Actualizar.
Abrir la pestaña con la consulta de las ubicaciones de los archivos de la base de datos
para volverla a ejecutar (Tecla F5 o hacer clic en Ejecutar). Las ubicaciones de los archivos
de las bases de datos ya están en las nuevas. Operación completada con éxito.