Post on 11-Jan-2016
description
Asistente para la publicación de bases de datos © Microsoft Corporation
Introducción .............................................................................................................................................. 1
Requisitos previos para la instalación ..................................................................................................... 2
Versiones admitidas de SQL Server ........................................................................................................ 2
Permisos ..................................................................................................................................................... 2
Objetos de base de datos en secuencias de comandos ............................................................................ 2
Páginas del asistente ................................................................................................................................. 3
Asistente para la publicación de bases de datos (página de bienvenida) ................................................ 3
Seleccione el servidor de origen ............................................................................................................. 3
Seleccionar base de datos de origen........................................................................................................ 3
Seleccione una ubicación para el resultado ............................................................................................ 3
Seleccione una ubicación para el resultado: Proveedores de hospedaje ................................................. 4
Seleccione una ubicación para el resultado: Configuración de proveedor ............................................. 4
Seleccione una ubicación para el resultado: Configuración de base de datos................................................ 5
Seleccionar opciones de publicación ...................................................................................................... 6
Revisar resumen ...................................................................................................................................... 6
Progreso de la publicación de la base de datos ....................................................................................... 7
Complemento de Visual Studio................................................................................................................ 7
Utilidad de la línea de comandos ............................................................................................................. 7
Sintaxis de la línea de comandos ............................................................................................................ 8
Modificadores de la línea de comandos .................................................................................................. 9
Verbos principales .............................................................................................................................. 9
Opciones de la conexión de origen ..................................................................................................... 9
Opciones de servicio Web de hospedaje ........................................................................................... 10
Opciones de archivo de destino ........................................................................................................ 10
Modificadores de opción de secuencia de comandos ....................................................................... 11
Modificadores generales ................................................................................................................... 12
Valor devuelto ....................................................................................................................................... 12
Ejemplos con el verbo script ................................................................................................................. 12
A. Ejemplo de secuencia de comandos simple ................................................................................. 12
B. Ejemplo de secuencia de comandos con autenticación de SQL Server ....................................... 12
C. Ejemplo de secuencia de comandos con cadena de conexión ...................................................... 12
Ejemplos con el verbo publish .............................................................................................................. 12
A. Ejemplo sencillo ........................................................................................................................... 12
B. Ejemplo avanzado ........................................................................................................................ 13
Introducción El Asistente para la publicación de bases de datos permite la implementación de bases de datos de
SQL Server (esquema y datos) en un entorno de hospedaje compartido.
La herramienta admite dos modos de implementación:
1. Genera un único archivo de secuencias de comandos SQL que se puede utilizar para volver
a crear el contenido de una base de datos mediante la ejecución manual de una secuencia
de comandos en un servidor de destino.
2. Se conecta a un servicio Web que proporciona el anfitrión y publica directamente el
contenido de la base de datos de origen en la base de datos de destino hospedada que se
especifique.
Requisitos previos para la instalación Para usar el Asistente para la publicación de bases de datos en un equipo cliente, se
necesitan los siguientes componentes. Se instalan con las Herramientas cliente de Microsoft SQL
Server 2005 y SQL Server 2005. No es necesario que SQL Server 2005 esté instalado en el equipo
cliente. Si el instalador del Asistente para la publicación de bases de datos no detecta estos
componentes, se le pedirá que los descargue de un sitio Web de Microsoft.
.NET 2.0 Framework
Objetos de administración de SQL Server 2005 (SMO)
Versiones admitidas de SQL Server
Se admiten todas las ediciones de SQL Server 2000 y SQL Server 2005 (excepto la compacta)
como servidores de origen y destino. Los servidores de origen y destino no tienen que ser de la
misma versión o edición, pero el servidor de destino debe admitir todos los tipos de datos y objetos
que haya en la base de datos de origen.
Permisos El Asistente para la publicación de bases de datos incluirá en las secuencias de comandos todos los
objetos que el usuario suministrado tenga permiso para ver en la base de datos de origen.
Si se utiliza la opción “Publicar”, hay que crear la base de datos de destino antes de usar la
herramienta. Si se utiliza la opción “Secuencia de comandos”, es necesario crear la base de datos
de destino antes de usar la secuencia de comandos que genera la herramienta. En ambos casos, el
usuario empleado para conectarse a la base de datos de destino debe disponer de los premisos
necesarios para crear todos los objetos que había en la base de datos de origen. Normalmente,
esto se consigue siendo miembro de las funciones db_ddladmin y db_owner.
Objetos de base de datos en secuencias de comandos
La mayoría de los objetos de base de datos se incluyen tal cual en las secuencias de comandos. Sin
embargo, hay algunas excepciones:
Los usuarios que no son del sistema, que existen en la base de datos de origen y que no están
basados en inicios de sesión de Windows se incluyen en las secuencias de comandos como
funciones.
Los objetos creados con la opción “WITH ENCRYPTION” (con cifrado) no se pueden incluir en las
secuencias de comandos. Si en la base de datos de origen hay objetos de este tipo, la herramienta
no generará la secuencia de comandos.
Páginas del asistente
Asistente para la publicación de bases de datos (página de bienvenida) La página de bienvenida proporciona una breve introducción a la herramienta y una opción para
omitirla cuando se abra la herramienta en el futuro.
Seleccione el servidor de origen Use esta página para seleccionar el servidor en el que se encuentra la base de datos que se va a
publicar.
Puesto que la base de datos debe adjuntarse a un servidor SQL en ejecución para que el Asistente
para la publicación de bases de datos la inspeccione y la publique, se necesitan los datos de dicho
servidor y las credenciales de inicio de sesión.
Puede optar por proporcionar datos de conexión básicos seleccionando la opción “Especificar la
información del servidor”, o bien por proporcionar la cadena de conexión exacta seleccionando la
opción “Proporcionar una cadena de conexión”.
Si selecciona “Especificar la información del servidor”, las bases de datos de ese servidor
aparecerán en la siguiente página del asistente y podrá seleccionar una de ellas.
Si selecciona “Proporcionar una cadena de conexión”, la cadena debe especificarse en el formato
esperado para ADO.NET, con el nombre del servidor, el nombre de la base de datos, la información
de inicio de sesión y las demás opciones que desee incluir. Ésta es la única forma de utilizar una
“instancia de usuario” de SQL Server Express.
Seleccionar base de datos de origen Si selecciona la opción “Especificar la información del servidor” en la página “Seleccione el servidor
de origen”, la página muestra una lista de las bases de datos en el servidor especificado.
Si en la página “Seleccione el servidor de origen” selecciona la opción “Proporcionar una cadena de
conexión”, esta página se omitirá, ya que la base de datos está especificada como parte de la
cadena de conexión.
Seleccione una ubicación para el resultado Esta página permite elegir entre publicar en un archivo T-SQL o en un servicio Web proporcionado
por un anfitrión.
Si va a publicar en una base de datos de un anfitrión que ofrece un servicio Web de publicación, la
elección de la opción “Publicar en el proveedor de hospedaje compartido” le permitirá transferir los
objetos de la base de datos de origen local directamente a la base de datos de destino del entorno
alojado. Si se elige esta opción, hay que seleccionar un proveedor de hospedaje y una base de
datos.
Dos listas desplegables permiten la selección de los proveedores de hospedaje y las bases de datos
de destino que ya se hayan configurado. Para cambiar un proveedor existente, agregar uno nuevo;
cambiar una base de datos o agregar una nueva; use el botón “Más”.
Si su proveedor de hospedaje no le ha proporcionado una dirección de servicio Web de publicación,
seleccione “Generar secuencia de comandos en un único archivo”. Si además selecciona la opción
“Sobrescribir el archivo existente”, el asistente sobrescribirá el archivo que haya en la ruta
especificada. En caso contrario, se producirá un error si ya hay un archivo con el nombre
especificado.
Seleccione una ubicación para el resultado: Proveedores de hospedaje Use este cuadro de diálogo para ver, agregar, editar, eliminar o probar los proveedores de
hospedaje configurados.
Botón Descripción
Nueva Haga clic aquí para abrir el cuadro de diálogo
Configuración de proveedor y agregar un nuevo
proveedor de hospedaje.
Editar Haga clic aquí para abrir el cuadro de diálogo
Configuración de proveedor y editar un proveedor de
hospedaje existente.
Eliminar Haga clic aquí para eliminar el proveedor de hospedaje
seleccionado.
Probar Haga clic aquí para probar la conexión al proveedor de
hospedaje seleccionado usando la información que
aparece en el cuadro de diálogo Configuración de
proveedor.
Aceptar Haga clic aquí para guardar en el archivo de configuración
todos los cambios que realizó en el cuadro de diálogo
Proveedor de hospedaje.
Cancelar Haga clic aquí para deshacer todos los cambios que realizó
en el cuadro de diálogo Proveedor de hospedaje.
Seleccione una ubicación para el resultado: Configuración de proveedor Use este cuadro de diálogo para modificar la información del proveedor de hospedaje en el
archivo de configuración.
Ver, agregar o editar la información de conexión de un proveedor de hospedaje.
Ver, agregar, editar o eliminar bases de datos de un proveedor de hospedaje.
Campo Descripción
Nombre Escriba un nombre seleccionado por el usuario para el
proveedor de hospedaje.
Dirección de servicio
Web
Escriba la dirección HTTPS del servicio de publicación que
proporciona el proveedor de hospedaje.
Autenticación de
servicio Web
Escriba el nombre de usuario y la contraseña del
proveedor de hospedaje. Tenga en cuenta que es
probable que no coincidan con el nombre de usuario y la
contraseña de la base de datos hospedada de SQL Server.
Guardar contraseña Seleccione esta opción para cifrar y guardar la contraseña
en el archivo de configuración local. Si no la selecciona, se
le pedirá la contraseña cuando use este proveedor de
hospedaje en lo sucesivo.
Botón Descripción
Nueva Haga clic aquí para abrir el cuadro de diálogo de configuración
de base de datos y agregar una nueva base datos.
Editar Haga clic aquí para abrir el cuadro de diálogo de
configuración de base de datos de la base de datos
seleccionada.
Eliminar Haga clic aquí para eliminar la base de datos seleccionada.
Establecer como
predeterminado
Seleccione la base de datos seleccionada como
predeterminada.
Aceptar Seleccione esta opción para guardar todos los cambios
realizados en este cuadro de diálogo y volver al asistente.
Cancelar Seleccione esta opción para deshacer todos los cambios
realizados en este cuadro de diálogo y volver al asistente.
Seleccione una ubicación para el resultado: Configuración de base de datos Use este cuadro de diálogo para proporcionar la información de configuración de la base de datos
seleccionada en el cuadro de diálogo Configuración de proveedor.
Elemento de la
interfaz de usuario Descripción
Nombre de la base
de datos
Escriba el nombre de la base de datos de SQL Server.
Nombre de servidor Escriba el nombre del servidor SQL.
Autenticación de
base de datos
Especifique el inicio de sesión de SQL Server con la
contraseña que debe emplearse para conectar a la base de
datos.
Guardar contraseña Seleccione esta opción para cifrar y guardar la contraseña
en el archivo de configuración. Si no la selecciona, se le
pedirá la contraseña cada vez que use la base de datos en
lo sucesivo.
Aceptar Seleccione esta opción para guardar en el archivo de
configuración todos los cambios realizados en este cuadro
de diálogo y volver al cuadro de diálogo Configuración de
proveedor.
Cancelar Seleccione esta opción para deshacer todos los cambios
realizados en este cuadro de diálogo y volver al cuadro de
diálogo Configuración de proveedor.
Seleccionar opciones de publicación Use esta página para configurar las opciones antes de publicar la base de datos.
Opciones Descripción
Certificación de
esquema
Seleccione la opción True para certificar los nombres de
objetos con sus nombres de esquema (se generarán
nombres de dos partes) o la opción False para incluir en la
secuencia de comandos sólo los nombres de objetos sin
especificar los nombres de esquema (se generarán
nombres de una parte).
Secuencia de
comandos para la
base de datos de
destino
Para este valor, debe seleccionarse la versión de SQL
Server en la que se cargará la base de datos.
Tipos de datos que
se van a publicar
Genere una secuencia de comandos que contenga “sólo
esquema”, “sólo datos” o “esquema y datos”. “Esquema”
se refiere a las definiciones de objetos, mientras que
“datos” se refiere a las filas de las tablas de la base de
datos.
Quitar los objetos
existentes en la
secuencia de
comandos
Seleccione la opción True para quitar los objetos
existentes que entren en conflicto con los que se están
creando y luego volver a crearlos. Seleccione False para
dejar los objetos existentes tal cual y no volver a crearlos.
Publicar usando
una transacción
Seleccione la opción True para ejecutar la transferencia de
objetos de base de datos dentro de una transacción. Esta
opción sólo está disponible al publicar directamente en un
proveedor de hospedaje.
Revisar resumen Use esta página para revisar las opciones seleccionadas en las páginas anteriores del asistente.
Progreso de la publicación de la base de datos Use esta página para supervisar la creación de secuencias de comandos y la publicación a medida
que se van produciendo. Puede cancelar la operación durante la publicación. La publicación se produce en una transacción que se deshace si aquélla se detiene. Los pasos 3 y 4
sólo se muestran si se selecciona la opción Publicar en el proveedor de hospedaje compartido
en la página Seleccione una ubicación para el resultado del asistente.
1. Conectarse a la base de datos local
2. Generar secuencias de comandos para la base de datos
3. Conectarse al proveedor de hospedaje
4. Publicar secuencias de comandos en el proveedor de hospedaje
5. Completado
Botón Descripción
Detener Haga clic aquí para intentar cancelar la publicación y cerrar
el asistente.
Cerrar Haga clic aquí para cerrar el asistente al completar la
publicación o si se produce un error.
Complemento de Visual Studio El Asistente para la publicación de bases de datos puede instalarse como complemento para Visual
Web Developer 2005 Express Edition y cualquier otra edición de Visual Studio que no sea la
Express. Esta opción se ofrece durante la instalación.
Una vez instalado, se puede ejecutar el asistente haciendo clic con el botón secundario en las
ventanas “Explorador de bases de datos” o “Explorador de servidores” de cualquier base de datos
de SQL Server y seleccionando “Publicar en el proveedor”.
Si se inicia de este modo, se omiten las páginas “Seleccione el servidor de origen” y “Seleccione la
base de datos de origen” del asistente.
Utilidad de la línea de comandos El Asistente para la publicación de bases de datos también puede usarse como herramienta
de la línea de comandos.
La interfaz de la línea de comandos tiene dos opciones básicas:
Script: crea uno o varios archivos de secuencia de comandos a partir de una base de datos
local.
Publish: publica una base de datos local en un servicio Web que proporciona un anfitrión.
Sintaxis de la línea de comandos
sqlpubwiz script
(
-C cadena_de_conexión | -d nombre_de_la_base_de_datos_local
[ -U nombre_de_usuario_local ][ -P contraseña_local ][ -S nombre_del_servidor_local ]
)archivo_o_directorio_de_salida [ -f ]
)
[ -schemaonly ]
[ -dataonly ]
[ -targetserver versión_del_servidor ]
[ -noschemaqualify ]
[ -nodropexisting ]
[ -q ]
[ -? ]
sqlpubwiz publish
(
-C cadena_de_conexión | -d nombre_de_la_base_de_datos_local
[ -U nombre_de_usuario_local ][ -P contraseña_local ][ -S nombre_del_servidor_local ]
)
(
[ -R nombre_del_anfitrión ]
[ -RW dirección_del_servicio_Web_remoto ]
[ -RWU nombre_de_usuario_del_servicio_remoto ]
[ -RWP contraseña_del_servicio_remoto ]
[ -RS servidor_de_base_de_datos_remota ]
[ -RD base_de_datos_remota ]
)
[ -schemaonly ]
[ -dataonly ]
[ -targetserver versión_del_servidor ]
[ -noschemaqualify ]
[ -nodropexisting ]
[ -notransaction ]
[ -q ]
[ -? ]
Modificadores de la línea de comandos Las opciones y los modificadores admiten "-" y "/" como prefijos.
Verbos principales
Término Definición
script | publish Use script o publish. Use script para crear
un archivo de secuencia de comandos en el
equipo local a partir de una base de datos
local. Use publish para transferir objetos de
base de datos directamente a una base de
datos alojada mediante un servicio Web.
Algunas opciones y modificadores pueden
usarse tanto en script como en publish. En
cambio, otras opciones y modificadores sólo
están habilitadas para uno de estos verbos.
Opciones de la conexión de origen De manera predeterminada, sqlpubwiz usa la autenticación de Windows.
Término Definición
-C Proporciona una cadena de conexión
completa para conectar a la base de datos
local. Esta cadena de conexión encapsula
todas las opciones de conexión para el
servidor. No es compatible con
nombre_de_base_de_datos_local, -U, -P ni -S. Ejemplo: “Data
Source=.\SQLExpress;AttachDbFileName=
C:\ MyDatabase.mdf;Integrated
Security=True;User Instance=true”
-d nombre_de_base_de_datos_local Especifica el nombre de la base de datos
local a partir de la cual se creará la
secuencia de comandos.
-U nombre_de_usuario Especifica el nombre de usuario de SQL
Server que se va a usar para la conexión a
la base de datos de origen. Requiere –P.
No es compatible con –C.
-P contraseña Especifica la contraseña que se va a usar
para la conexión a la base de datos de
origen. Requiere -U. No es compatible con -
C.
-S servidor Especifica el nombre o la dirección IP de la
conexión a la base de datos local. El valor
predeterminado es localhost. No es
compatible con -C.
Opciones de servicio Web de hospedaje Estas opciones sólo se usan con el verbo publish.
Término Definición
-R nombre_del_anfitrión Especifica el nombre descriptivo de un
servicio Web de hospedaje configurado
anteriormente. Utiliza todos los valores
predeterminados que contiene el archivo
de configuración.
-RW dirección_del_servicio_Web_remoto Especifica la configuración del extremo del
servicio Web de hospedaje.
-RWU
nombre_de_usuario_del_servicio_remoto
Especifica el nombre de usuario en el
extremo del servicio Web de hospedaje.
-RWP contraseña_del_servicio_remoto Especifica la contraseña del extremo del
servicio Web remoto.
-RS servidor_de_la_base_de_datos_remota Especifica el nombre del servidor de la
base de datos remota.
-RD base_de_datos_remota Especifica el nombre de la base de datos
en la que se va a publicar en el servidor
de la base de datos remota.
-notransaction Especifica que la operación de publicación
no debe ejecutarse dentro de una única
transacción. Ello reduce la sobrecarga del
registro en el servidor de destino, pero si
se interrumpe la publicación, es posible
que la base de datos de destino sólo se
llene parcialmente.
Opciones de archivo de destino
Término Definición
archivo_o_directorio_de_salida Use esta opción sólo con script. Especifica
la ruta de archivo completa del archivo de
secuencia de comandos que genera
sqlpubwiz. Si la ruta del archivo contiene
espacios, escríbala entre comillas dobles.
-f Use esta opción sólo con script.
Sobrescribe los archivos de secuencia de
comandos existentes que tienen la misma
ruta de archivo completa.
Modificadores de opción de secuencia de comandos
Término Definición
-schemaonly Especifica que en una secuencia de
comandos debe incluirse el esquema, pero
no los datos. No es compatible con –
dataonly. Si no se especifica -
schemaonly ni -dataonly, en la
secuencia de comandos se incluyen tanto
el esquema como los datos.
-dataonly Especifica que en una secuencia de
comandos deben incluirse los datos, pero
no el esquema. No es compatible con –
nodropexisting ni con -schemaonly. Si
no se especifica -schemaonly ni -
dataonly, en la secuencia de comandos
se incluyen tanto el esquema como los
datos.
-targetserver versión_del_servidor Especifica que la secuencia de comandos
que se va a generar debe tener como
destino una instancia de SQL Server 2000
o SQL Server 2005. El valor
predeterminado es SQL Server 2005.
-noschemaqualify Especifica que los objetos no se
certificarán con un esquema.
-nodropexisting Especifica que la secuencia de comandos
generada no debe quitar los objetos
preexistentes que entren en conflicto con
los que se están transfiriendo. Si se
especifica esta opción, se conservarán los
objetos preexistentes, aunque se
sustituirán los datos de las tablas (a
menos que se haya especificado la opción
“-schemaonly”).
Modificadores generales
Término Definición
-q Suprime el resultado.
-? Los siguientes modificadores sirven para
mostrar la ayuda e invalidar todo:
sqlpubwiz
sqlpubwiz -?
sqlpubwiz help
Valor devuelto Se devuelve cero si la operación se ejecuta correctamente. En caso contrario, se devuelve un
código de error con un valor distinto de cero.
Ejemplos con el verbo script
A. Ejemplo de secuencia de comandos simple En este ejemplo, se establece una conexión a un "localhost" de SQL Server usando las credenciales
de Windows del usuario ejecutante y, a partir de la base de datos “AdventureWorks”, se crea una
única secuencia de comandos Transact-SQL con el nombre “AdventureWorks.sql” en el directorio
local predeterminado.
sqlpubwiz script –d AdventureWorks
B. Ejemplo de secuencia de comandos con autenticación de SQL Server En este ejemplo, se establece una conexión a una instancia de SQL Server en "myserver" usando la
autenticación de SQL Server. Sólo se incluye el esquema de la base de datos “AdventureWorks” en
una única secuencia de comandos Transact-SQL llamada “AdventureWorks.sql” ubicada en el
directorio local. Se genera una secuencia de comandos compatible con SQL Server 2000 que
incluye todos los objetos posibles. sqlpubwiz script –d AdventureWorks –U snoopy –P Dog987$qwert –S myserver –
targetserver 2000 –schemaonly –include all
C. Ejemplo de secuencia de comandos con cadena de conexión En este ejemplo, se establece una conexión a una instancia de SQL Server especificada en la
cadena de conexión. A partir de la base de datos definida en la cadena de conexión, se crea un
conjunto de secuencias de comandos en un nuevo directorio “Database” y se suprime la salida. sqlpubwiz script –C “Data
Source=.\SQLExpress;AttachDbFileName=C:\Foo\Blah.mdf;Integrated Security=True;User
Instance=true” –m C:\backup\Database
Ejemplos con el verbo publish
A. Ejemplo sencillo
sqlpubwiz publish –d mi_bd –S servidor_local –R mi_anfitrión
B. Ejemplo avanzado
sqlpubwiz publish –d mi_bd –S servidor_local –RW https://dirección.anfitrión/ -RWU
nombre_de_usuario_del_anfitrión –RWP contraseña_del_anfitrión –RS servidor_remoto –
RD mi_bd_remota –RU nombre_de_usuario_remoto –RP contraseña_remota