Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En esta lección se supone que ya tiene otro servidor SQL Server, que podría residir en otro equipo local o en una máquina virtual de Azure. Para obtener información sobre cómo crear una máquina virtual de SQL Server en Azure, consulte Aprovisionamiento de una máquina virtual de SQL Server en Azure. Después de aprovisionar una máquina virtual de SQL Server en Azure, asegúrese de que puede conectarse a una instancia de SQL Server en esta máquina virtual a través de SQL Server Management Studio en otro equipo.
En esta lección también se supone que ya ha completado los pasos siguientes:
Tiene una cuenta de Azure Storage.
Ha creado un contenedor en la cuenta de Azure Storage.
Ha creado una política en un contenedor con derechos de lectura, escritura y listar. Usted también generó una clave SAS.
Ha creado una credencial de SQL Server en la máquina de origen.
Ya ha creado una máquina virtual de SQL Server de destino en Azure. Se recomienda crearla seleccionando una imagen de plataforma que incluya SQL Server 2014.
Para migrar una base de datos de SQL Server local a otra máquina virtual de Azure, puede seguir estos pasos:
En la máquina de origen (que es un equipo local de este tutorial), abra una ventana de consulta en SQL Server Management Studio. Desasocie la base de datos para moverla a otra máquina mediante la ejecución de estas instrucciones:
-- Detach the database in the source machine USE master EXEC sp_detach_db 'TestDB1', 'true';Si necesita transferir una base de datos a una máquina de destino, primero debe prepararla. Para preparar la máquina de destino, primero debe crear una credencial de SQL Server en la máquina de destino. Si se trata de una base de datos cifrada, también debe importar el certificado de la máquina de origen a la máquina de destino.
Para crear una credencial de SQL Server en la máquina de destino, siga estos pasos:
Conéctese a la máquina de destino a través de SQL Server Management Studio en el equipo de origen. O bien, inicie SQL Server Management Studio directamente en el equipo de destino.
En la barra de herramientas Estándar, haga clic en Nueva consulta.
Copie y pegue el ejemplo siguiente en la ventana de consulta y modifique según sea necesario. La instrucción siguiente crea una credencial de SQL Server para almacenar el certificado de acceso compartido del contenedor de almacenamiento.
USE master GO CREATE CREDENTIAL [http://teststorageaccnt.blob.core.windows.net/testcontainer] WITH IDENTITY='SHARED ACCESS SIGNATURE', SECRET = 'your SAS key' GOPara ver todas las credenciales disponibles, puede ejecutar la siguiente instrucción en la ventana de consulta:
SELECT * from sys.credentialsCuando esté conectado al servidor de destino, abra la ventana de consulta y ejecute:
-- Create a master key and a server certificate USE master GO CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'MySQLKey01'; -- You may use a different password. GO CREATE CERTIFICATE MySQLCert FROM FILE = 'C:\certs\MySQLCert.CER' WITH PRIVATE KEY ( FILE = 'C:\certs\MySQLPrivateKeyFile.PVK', DECRYPTION BY PASSWORD = 'MySQLKey01' ); GOAl final de este paso, la máquina de destino ha importado el certificado de cifrado del que se ha realizado una copia de seguridad desde la máquina de origen. A continuación, puede adjuntar los archivos de datos en la máquina de destino.
A continuación, cree una base de datos con archivos de datos y de registro que apunte a los archivos existentes en Azure Storage mediante la opción FOR ATTACH. En la ventana de consulta, ejecute la instrucción siguiente:
--Create a database on the destination server CREATE DATABASE TestDB1onDest ON (NAME = TestDB1_data, FILENAME = 'https://teststorageaccnt.blob.core.windows.net/testcontainer/TestDB1Data.mdf' ) LOG ON (NAME = TestDB1_log, FILENAME = 'https://teststorageaccnt.blob.core.windows.net/testcontainer/TestDB1Log.ldf') FOR ATTACH GOEn el Explorador de objetos, haga clic en Bases de datos, haga clic con el botón derecho en Actualizar. Debería poder ver "TestDB1onDest", la base de datos recién creada, en la lista.
A continuación, ejecute la siguiente instrucción en la ventana de consulta:
USE TestDB1onDest SELECT * FROM Table1; GOEsto debería enumerar todos los datos que escribió en la lección 4.
Tenga en cuenta que la base de datos cifrada se transfirió a otra instancia de proceso sin movimiento de datos.
Para crear una base de datos con archivos de datos y de registro que apunte a los archivos existentes en Azure Storage mediante la interfaz de usuario de SQL Server Management Studio, realice estos pasos:
En el Explorador de objetos, conéctese a una instancia del Motor de base de datos de SQL Server y expándala.
Haga clic con el botón derecho en Bases de datos y, a continuación, haga clic en Nueva base de datos. A continuación, haga clic con el botón derecho en TestDB1. Haga clic en Tareas y luego haga clic en Desasociar. En la ventana de diálogo Separar, active Eliminar conexiones. Haz clic en Aceptar.
Conéctese a la máquina de destino, que tiene SQL Server 2014 CTP2 o posterior. Para preparar la máquina de destino, debe crear una credencial de SQL Server en la máquina de destino para que apunte al mismo contenedor en el que puso TestDB1. Si va a volver a conectar en el mismo equipo, no es necesario crear otra credencial.
En el Explorador de objetos, haga clic con el botón derecho en Bases de datos y haga clic en Adjuntar.
En el cuadro de diálogo Adjuntar bases de datos , para especificar la base de datos que se va a adjuntar, haga clic en Agregar. En la ventana de diálogo Buscar archivos de base de datos :
En Ubicación del archivo de datos de base de datos, escriba:
https://teststorageaccnt.blob.core.windows.net/testcontainer/.En Nombre de archivo, escriba:
TestDB1Data.mdf.Haz clic en Aceptar.
Lección siguiente:
Lección 7: Traslado de los archivos de datos a Azure Storage