Sie sind auf Seite 1von 7

4/24/2014

ENI Training - Libro online

Los servidores remotos

Un servidor remoto es un servidor que forma parte de una red y al que los usuarios pueden acceder a través de su servidor local.

Su interés radica en administrar las conexiones en local y que los usuarios puedan ejecutar procedimientos almacenados en el servidor remoto.

ejecutar procedimientos almacenados en el servidor remoto. Estos usuarios se llaman usuarios remotos y tienen que

Estos usuarios se llaman usuarios remotos y tienen que tener un nombre de acceso al servidor remoto.

Antes de poder utilizar esta funcionalidad hay que añadir los servidores remotos, configurarlos y administrar los usuarios remotos.

Esta configuración se puede hacer con SQL Server Management Studio, visualizando las propiedades de un servidor (Conexiones de Conexiones a servidores remotos).

4/24/2014

ENI Training - Libro online

4/24/2014 ENI Training - Libro online 1. Gestión de los servidores remotos Para trabajar con servidores

1. Gestión de los servidores remotos

Para trabajar con servidores remotos y, por tanto, con los datos, el método más sencillo en SQL Server consiste en establecer un vínculo con el servidor remoto. Esta vinculación permite identificar de manera precisa el servidor remoto y cómo se abre la sesión de usuario.

Los servidores vinculados se pueden gestionar desde Transact SQL o desde SQL Server Management Studio. Todos los datos relativos a estas inscripciones se guardan en la tablasys.servers. Es posible consultar el procedimiento sp_linkedservers para obtener los datos de los servidores vinculados guardados.

La vinculación se puede establecer entre dos instancias de SQL Server, pero también con un origen OLEDB. Esta última opción permite integrar los datos en el contexto de SQL Server.

a. Añadir un servidor vinculado

Para conectar un nuevo servidor desde SQL Server Management Studio, seleccione la opciónServidor vinculado, desde el menú contextual asociado a la carpeta Objetos de servidor -Nuevo.

4/24/2014

ENI Training - Libro online

4/24/2014 ENI Training - Libro online En Transact SQL, hay que utilizar el procedimiento almacenado sp_addlinkedserver

En Transact SQL, hay que utilizar el procedimiento almacenado sp_addlinkedserver.

sp_addlinkedserver[@server=]’nombreServidor’,

[@srvproduct=]’SQLServer’]

@server

Nombre del servidor SQL Server con el que se establece la vinculación.

Los datos que se dan aquí conciernen solo a la vinculación con los servidores SQL Server.

@srvproduct

Esta opción es facultativa en caso de que el servidor vinculado sea una instancia SQL Server. En caso de un origen OLEDB, hay que indicar el nombre del tipo de servidor vinculado.

Ejemplo

Añadir un servidor vinculado de tipo SQL Server:

4/24/2014

ENI Training - Libro online

4/24/2014 ENI Training - Libro online b. Eliminar un servidor vinculado Esta operación se puede realizar

b. Eliminar un servidor vinculado

Esta operación se puede realizar con el procedimiento almacenado sp_dropserver o desde SQL Server Management Studio, seleccionando la opción Eliminar desde el menú contextual asociado al servidor vinculado.

4/24/2014

ENI Training - Libro online

4/24/2014 ENI Training - Libro online En Transact SQL hay que utilizar el procedimiento almacenado sp_dropserver

En Transact SQL hay que utilizar el procedimiento almacenado sp_dropserver.

sp_dropserver[@server=]’nombreServidor’ [,[@droplogins=]{’droplogins |NULL}]

@server

Nombre del servidor SQL Server con el que se establece la vinculación.

@droplogins

Permite especificar si las conexiones asociadas a la vinculación también se van a eliminar.

2. Gestión de los usuarios remotos

Cuando sea posible, en la medida en que la solución se base solo en instancias SQL Server, es mejor utilizar una autentificación Windows. De esta manera, son siempre los permisos que se han asignado directa o indirectamente al usuario los que permiten controlar su trabajo.

Por supuesto, si esto no es posible, es necesario definir cuentas de seguridad SQL Server para el mapeo de las conexiones locales con una cuenta de conexión remota.

Para realizar este trabajo es posible usar SQL Server Management Studio o los procedimientos

4/24/2014

ENI Training - Libro online

Transact SQL sp_addlinkedsrvlogin y sp_droplinkedsrvlogin.

Todas las operaciones que se hagan en el servidor remoto se ejecutan respetando los permisos asignados al usuario, definidos localmente en este servidor remoto.

Es posible definir los mapeos de seguridad desde la ventana Nuevo servidor vinculado de SQL Server Management Studio, al definir el nuevo servidor vinculado o con las propiedades de un servidor vinculado ya definido. Esta definición de mapeo se realiza en la página Seguridad.

definición de mapeo se realiza en la página Seguridad . 3. Utilización de los recursos remotos

3. Utilización de los recursos remotos

Para poder trabajar con una tabla o un objeto remoto, hay que utilizar el nombre completo del objeto (nombreBase.nombreEsquema.nombreObjeto), precedido del nombre del servidor remoto.

precedido del nombre del servidor remoto.

4/24/2014

ENI Training - Libro online

4. Los sinónimos

La manipulación de los objetos remotos no es tarea fácil. Los nombres relativamente largos hacen que sea más complicado entender las consultas que hacen referencia a estos objetos. Para simplificar esta sintaxis y trabajar de manera más sencilla con los objetos remotos, SQL Server ofrece la noción de sinónimo. Como en español, un sinónimo en SQL Server consiste en asignar un segundo identificador para hacer referencia al mismo objeto. Por ejemplo, es posible definir el sinónimo clienteRemoto para hacer referencia a la tabla SRVCP.gescom.dbo.clientes.

Los sinónimos SQL Server no se limitan a los objetos remotos, sino que también permiten definir términos alternativos para las tablas, vistas, procedimientos, funciones… para adaptar los objetos de la base de datos al vocabulario de los usuarios. Por ejemplo, algunos hablan de artículos y otros de productos, igual que se habla de asalariados, empleados, colaboradores, etc. Ofreciendo la posibilidad de tener varios términos para hacer referencia al mismo objeto, la estructura de la base de datos se adapta totalmente.

Sintaxis

CREATESYNONYM nombreSinonimo FORobjeto;

Ejemplo

Se crea el sinónimo Productos para la tabla Artículos en la base de datos Gescom.

para la tabla Artículos en la base de datos Gescom. Los sinónimos se eliminan con la

Los sinónimos se eliminan con la instrucción DROP SYNONYM nombreSinonimo.

Cuando se trabaja con un sinónimo, a veces es interesante conocer el tipo base del sinónimo, es decir, identificar el objeto del que es sinónimo. El primer impulso para obtener este tipo de información es, sin ninguna duda, recurrir a las tablas de sistema, en concreto a la vistasys.synonyms. Pero también es posible recurrir a la función OBJECTPROPERTYEX, que permite identificar rápidamente el tipo base para el sinónimo que se pasa como argumento.