Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Capítulo 7 - Arquitectura Cliente Servidor
Capítulo 7 - Arquitectura Cliente Servidor
Servidor
78 de 106 MSDN - Valorar este tema
Microsoft SQL Server est diseado para trabajar con eficacia en una serie de entornos:
Tener los datos almacenados y administrados en una ubicacin central ofrece varias
ventajas:
Cada elemento de datos se almacena en una ubicacin central donde todos los
usuarios puedan trabajar con l.
Copias separadas del elemento no se almacenan en cada cliente, lo que elimina
los problemas de los usuarios que tienen que asegurarse de que estn trabajando
con la misma informacin.
En los sistemas cliente / servidor grandes, miles de usuarios se pueden conectar a una
instalacin de SQL Server al mismo tiempo. SQL Server tiene la plena proteccin de
estos entornos, con las salvaguardias que impiden problemas como tener varios usuarios
intentan actualizar la misma pieza de datos al mismo tiempo. SQL Server tambin
asigna los recursos disponibles con eficacia, como la memoria, ancho de banda de red y
disco de E / S, entre los mltiples usuarios.
Aplicaciones de SQL Server se pueden ejecutar en el mismo equipo que SQL Server. La
aplicacin se conecta a SQL Server mediante comunicacin los componentes de
Windows entre procesos (IPC), como la memoria compartida, en lugar de una red. Esto
permite que SQL Server para utilizar en sistemas pequeos que una aplicacin necesita
para almacenar sus datos localmente.
Cuando los clientes utilizan las bases de datos locales de SQL Server, una copia del
motor de base de datos SQL Server se ejecuta en el cliente y gestiona todas las bases de
datos de SQL Server en el cliente. Las aplicaciones se conectan al motor de base de
datos de la misma forma en que se conectan a travs de la red a un motor de base de
datos que se ejecuta en un servidor remoto.
Inicios de sesin
En la mayora de los casos, usted tiene que dar una aplicacin de slo dos piezas de
informacin para conectarse a una instalacin de Microsoft SQL Server:
Autenticacin de Windows NT
Modo mixto
Si un usuario proporciona un servidor de ID de sesin de SQL cuando se
conectan, se autentican mediante la autenticacin de SQL Server. Si no se
proporciona un ID de inicio de sesin del servidor SQL, se autentican mediante
la autenticacin de Windows NT.
Principio de la pgina
Componentes de cliente
Los usuarios no tienen acceso a Microsoft SQL Server directamente, sino que utilizan
una aplicacin escrita para acceder a los datos en SQL Server. Esto puede incluir
utilidades que vienen con SQL Server, las aplicaciones de terceros que se ejecutan en
SQL Server o las aplicaciones de las instalaciones desarrolladas por los programadores
en el sitio de SQL Server. SQL Server tambin se puede acceder a travs de COM,
Microsoft ActiveX o Windows Distributed aplicaciones de Internet Architecture
(Windows DNA) componentes.
Las aplicaciones se escriben en acceso a SQL Server a travs de una interfaz de
programacin de aplicaciones de bases de datos (API). Un API de base de datos consta
de dos partes:
Apoyo API nativa significa las llamadas a funciones API se asignan directamente a el
protocolo de red se enva al servidor. No existe una traduccin intermedia a otra API sea
necesario. SQL Server proporciona soporte nativo para dos clases principales de la base
de datos de API:
OLE DB
SQL Server incluye un proveedor OLE DB nativo. El proveedor admite las
aplicaciones escritas usando OLE DB u otra API que utilizan OLE DB, como
ActiveX Data Objects (ADO). A travs del proveedor nativo, SQL Server
tambin soporta objetos o componentes que utilizan OLE DB, como ActiveX,
ADO o aplicaciones Windows DNA.
ODBC
SQL Server incluye un controlador ODBC nativo. El controlador es compatible
con las aplicaciones o componentes escritos utilizando ODBC u otra API que
utilizan ODBC, como DAO, RDO, y Microsoft Foundation Classes (MFC)
clases de base de datos.
Un ejemplo de la ayuda no nativa para un API sera una base de datos que no tiene un
proveedor de OLE DB, pero no tener un controlador ODBC. Una aplicacin OLE DB
puede utilizar el proveedor OLE DB para ODBC para conectarse a la base de datos a
DB-Library
DB-Library es una API especfica anterior a SQL Server. SQL Server 7.0 es
compatible con las aplicaciones de DB-Library escritas en C. Las versiones
anteriores de tambin apoy el desarrollo de aplicaciones de DB-Library escritos
utilizando Microsoft Visual Basic SQL Server. Aplicaciones de DB-Library
existentes desarrolladas con versiones anteriores de SQL Server se pueden
ejecutar en SQL Server versin 7.0, pero caractersticas introducidas en SQL
Server 7.0 no estn disponibles para aplicaciones de DB-Library.
Embedded SQL
SQL Server incluye un precompilador C de la API de SQL incorporado.
Aplicaciones de SQL incorporado utilizan la DLL DB-Library para acceder a
SQL Server.
Vea tambin
En este volumen
Componentes de Comunicacin
Microsoft SQL Server es compatible con varios mtodos de comunicacin entre las
aplicaciones cliente y el servidor. Cuando la aplicacin est en el mismo equipo que
SQL Server, Windows la comunicacin entre procesos (IPC) de componentes, tales
como canalizaciones con nombre locales o memoria compartida, se utilizan. Cuando la
aplicacin est en un cliente independiente, un CIP de red se utiliza para comunicarse
con SQL Server.
El IPC tiene dos componentes:
Protocolo
El protocolo define el formato de la informacin que se enva entre dos
componentes que se comunican a travs del IPC. En el caso de un CIP de red, el
protocolo define el formato de los paquetes enviados entre dos ordenadores que
utilizan el IPC.
Algunas API de red se puede utilizar en mltiples protocolos. Por ejemplo, la API de
canalizaciones con nombre y la API RPC Microsoft Win32 se puede utilizar tanto con
varios protocolos. Otras API de red, tales como la API de sockets TCP / IP, se puede
utilizar con un solo protocolo.
Los siguientes componentes de gestionar la comunicacin entre SQL Server y sus
clientes en esta secuencia:
1. La aplicacin cliente llama a la OLE DB, ODBC, DB-Library o Embedded SQL
API. Esto hace que el proveedor OLE DB, el controlador ODBC o DLL DBLibrary que se utilizar para las comunicaciones de SQL Server.
2. El proveedor OLE DB, el controlador ODBC o DB-Library DLL llama a un
cliente de Net-Library. El cliente de Net-Library llama a una API IPC.
3. El cliente llama a la API de IPC se transmiten a un servidor de biblioteca de red
por el IPC subyacente. Si se trata de un local de CIP, las llamadas se transmiten
utilizando un IPC operativo Windows, tales como la memoria compartida o
canalizaciones con nombre locales. Si se trata de un CIP de la red, la pila de
Si SQL Server se ejecuta en un equipo con Microsoft Windows NT, las canalizaciones
con nombre de biblioteca de red se utiliza para las comunicaciones locales. Para las
conexiones locales con ninguna tarjeta de red, Windows NT utiliza el subsistema de
archivos para implementar una conexin de canalizacin con nombre.
Hay un par emparejado de cliente y servidor de bibliotecas de red para cada API IPC
admitido por SQL Server.
Protocolos de apoyo
a la API IPC
Memoria de copia de
Compartido
memoria (slo
Memoria
conexiones locales)
Sistema de archivos
(local)
RPC de
Multiprotocolo
Dbmsrpcn.dll
Ssmsrp70.dll
TCP / IP
Windows
NetBEUI
NWLink
Sistema de
Ventanas
Ssnmpn70.dll archivos (local)
Canalizaciones con
Canalizaciones
Dbnmpntw.dll (Slo Windows TCP / IP
nombre
con nombre
NT)
NetBEUI
NWLink
Sockets TCP / IP Windows Sockets Dbmssocn.dll Ssmsso70.dll TCP / IP
Netware IPX /
Novell IPX / SPX
Dbmsspxn.dll Ssmssp70.dll NWLink
SPX
Net-Library
API IPC
utiliza
Win32
Memoria
compartida
Win32 cliente
Net-Library
DBmsshrn.dll
(Slo para
Windows 95/98)
Biblioteca de
red del servidor
Ssmssh70.dll
(Slo para
Windows 95/98)
AppleTalk
Banyan VINES
Dbmsadsn.dll Ssmsad70.dll
AppleTalk ADSP (Slo Windows (Slo Windows AppleTalk
NT)
NT)
Ssmsvi70.dll
Banyan VINES
Dbmsvinn.dll (Slo Windows Banyan VINES
SPP
NT)
Para un cliente para conectarse a un servidor que ejecuta SQL Server, el cliente debe
utilizar un cliente de biblioteca de red que coincide con uno de los servidores bibliotecas
de red del servidor est escuchando. Adems, tanto el cliente como el servidor deben
ejecutar una pila de protocolos de apoyo de la API de red llamado por la biblioteca de
red que se utiliza para la conexin. Por ejemplo, si el cliente intenta usar el cliente de
biblioteca de red multiprotocolo, y el servidor est a la escucha en el servidor de
biblioteca de red multiprotocolo, pero el servidor se ejecuta con el protocolo TCP / IP,
mientras que el equipo cliente ejecuta slo con el protocolo IPX / pila de protocolos
SPX, el cliente no puede conectar con el servidor. Tanto el cliente como el servidor
deben utilizar la misma biblioteca de red y ejecutar la misma pila de protocolos.
Cada instalacin de cliente de SQL Server instala todas las bibliotecas de red de cliente.
Configuracin fija canalizaciones con nombre como el cliente predeterminado
biblioteca de red en Windows NT y Windows 95/98. Debido a servidores SQL Server
que se ejecutan en Windows NT escuchan las canalizaciones con nombre de biblioteca
de red de forma predeterminada, todos los clientes pueden utilizar la configuracin
predeterminada para conectarse a cualquier instalacin de Windows NT Server SQL que
se ejecuta con la configuracin predeterminada. El servidor Named Pipes Net-Library
no es compatible con instalaciones de SQL Server que se ejecutan en Windows 95/98.
Cualquier cliente que necesitan para conectarse a un servidor que se ejecuta en
Windows 95/98 debe utilizar la herramienta de red de cliente de SQL o bien cambiar la
biblioteca de red predeterminada o definir alias de servidor especificando una biblioteca
de red en el que escucha el servidor de Windows 95.
Cuando se ejecuta una aplicacin en el mismo equipo que SQL Server, puede utilizar
estos nombres para hacer referencia a la instalacin de SQL Server.
Windows NT
Windows 95/98
Nombre de equipo Nombre de equipo
(Local) *
(Local)
*.
* Donde "(local)" es la palabra local en parntesis y "." es un punto, o un punto.
Usando el nombre del equipo se recomienda. Estas conexiones se pueden hacer con las
canalizaciones con nombre de biblioteca de red que pasa por el sistema de archivos de
Windows NT y la memoria compartida biblioteca de red en Windows 95/98. DBLibrary no admite el uso (local).
SQL Server utiliza un protocolo de nivel de aplicacin llamada secuencia de datos
tabular (TDS) para la comunicacin entre las aplicaciones cliente y SQL Server. Los
paquetes TDS se encapsulan en los paquetes construidos para la pila de protocolos
utilizados por las bibliotecas de red. Por ejemplo, si est utilizando la biblioteca de red
TCP / IP Sockets, entonces los paquetes TDS se encapsulan en los paquetes del
protocolo subyacente TCP / IP.
Puede configurar el tamao del paquete de SQL Server, que es el tamao de los
paquetes TDS. El tamao de los paquetes TDS por defecto es 4 KB en la mayora de los
clientes (aplicaciones de DB-Library defecto 512 bytes), que las pruebas han
demostrado que el tamao de los paquetes TDS ptima en casi todos los escenarios. El
tamao de los paquetes TDS puede ser ms grande que el tamao de los paquetes en el
protocolo subyacente. Si este es el caso, la pila de protocolo del equipo remitente
desmonta los paquetes TDS automticamente en las unidades que se ajusten a los
paquetes de protocolo, y la pila de protocolos en el equipo cliente reensambla los
paquetes TDS en el equipo receptor.
Vea tambin
En otros volmenes
"Administrar servidores" en compaero de SQL Server Administrador de Microsoft
"Gestin de Clientes" en el Acompaante de SQL Server Administrador de Microsoft
Principio de la pgina
Componentes de servidores
Adems de los servidores bibliotecas de red, hay varios componentes principales del
servidor (servicios) a Microsoft SQL Server:
Cuando SQL Server se ejecuta en Microsoft Windows NT, SQL Server, Agente SQL
Server y MS DTC se implementan como servicios de Windows NT. En Microsoft
Windows 95/98, los componentes de servidor no se implementan como servicios porque
el sistema operativo no admite los servicios. El servicio de bsqueda de Microsoft slo
est disponible en Windows NT Server o Windows NT Enterprise Edition, no en
Windows NT Workstation o Windows 95/98.
Los componentes del servidor se pueden detener e iniciar varias maneras:
En Windows NT, utilice el comando stop comandos rpidos netos net start y
para detener o iniciar cada servicio.
Servicios abiertos de datos no se inicia o se detiene por s mismo, sino que se inicia o se
detiene cuando SQL Server se detiene o comienza.
Arquitectura de servicios abiertos de datos
Servicios abiertos de datos es una interfaz entre el servidor de bibliotecas de red y
aplicaciones basadas en servidor. Esto le permite desarrollar:
Procedimientos almacenados extendidos que extienden el poder de TransactSQL y Microsoft SQL Server.
Una aplicacin de servidor que acepta y procesa las sentencias de Transact-SQL
enviadas a ella desde las aplicaciones cliente (SQL Server es un ejemplo de una
aplicacin de Servicios abiertos de datos).
Servicios abiertos de datos tiene una API que consiste en las llamadas a funciones y
macros utilizadas para desarrollar servicios de datos de aplicaciones de servidor abiertos
utilizando C o C + +.
Servicios abiertos de datos se ejecuta en el servidor. Los servidores bibliotecas de red
reciben paquetes TDS cliente y pasarlos a Open Data Services. Servicios abiertos de
datos transforma los paquetes TDS en los acontecimientos que le pasa a las aplicaciones
de servidor a travs de funciones de la API de devolucin de llamada. La aplicacin
servidor utiliza otro conjunto de funciones de la API de servicios de datos abiertos para
enviar respuestas de nuevo a los clientes de SQL Server. SQL Server se ejecuta como
una aplicacin de Servicios abiertos de datos. Servicios abiertos de datos se inicia
automticamente cuando se inicia SQL Server.
El principal tipo de aplicaciones de Servicios abiertos de datos sigue siendo escrita por
los clientes son procedimientos almacenados extendidos. Esta caracterstica de SQL
Server le permite implementar funciones de C + + o C que se puede llamar directamente
desde las instrucciones Transact-SQL. Los procedimientos almacenados extendidos
pueden abrir una conexin con la instalacin de SQL Server que los llam, o conectarse
a instalaciones remotas de SQL Server. Los procedimientos almacenados extendidos
pueden incluir la mayora de las caractersticas de Microsoft Win32 y aplicaciones
COM, y extender la funcionalidad de Transact-SQL.
En el pasado, los Servicios abiertos de datos tambin se utiliza para escribir aplicaciones
de servidor, tales como pasarelas, a otros sistemas de bases de datos. Estos tipos de
aplicaciones en gran medida han sido reemplazados por nuevas tecnologas tales como:
Base de datos API que soporta mltiples bases de datos diferentes y otras fuentes
de datos, como OLE DB y ODBC.
Las aplicaciones escritas para el OLE DB u ODBC API tienen poca necesidad
de una puerta de entrada para acceder a diferentes bases de datos.
Vea tambin
En otros volmenes
"Programacin de Servicios abiertos de datos" en los libros en pantalla
Servicio MSSQLServer
Microsoft SQL Server se ejecuta como un servicio llamado MSSQLServer en Microsoft
Windows NT. No se ejecuta como un servicio en Microsoft Windows 95/98, porque el
sistema operativo no admite servicios. SQL Server tambin puede funcionar como un
archivo ejecutable en Windows NT, aunque por lo general se ejecuta como un servicio.
SQL Server administra todos los archivos que componen las bases de datos en el
servidor. Es el componente que procesa todas las instrucciones Transact-SQL enviadas
desde aplicaciones cliente de SQL Server. SQL Server tambin puede ejecutar
procedimientos almacenados en otros servidores remotos y apoyos distribuidos
consultas que recuperan datos de mltiples fuentes, no slo de SQL Server.
SQL Server asigna recursos de la computadora con eficacia entre varios usuarios al
mismo tiempo. Tambin hace cumplir las reglas de negocio definidas en procedimientos
almacenados y disparadores, asegura la consistencia de los datos, y evita problemas
lgicos como haber dos personas tratando de actualizar los mismos datos al mismo
tiempo.
Servicio SQLServerAgent
Agente SQL Server es compatible con las caractersticas que permiten la programacin
de actividades peridicas en Microsoft SQL Server, o la notificacin a los
administradores de sistemas de los problemas que se han producido con el servidor. Los
componentes del Agente SQL Server que implementan esta funcin son:
Jobs
Objetos definidos que consisten en una o ms etapas que se deben realizar. Los
pasos son instrucciones Transact-SQL que se pueden ejecutar. Los trabajos
pueden realizarse, por ejemplo, para ejecutar en determinados momentos o
intervalos que se repiten.
Alertas
Las acciones que se deben tomar cuando ocurren eventos especficos, como un
error concreto, los errores de ciertos niveles de gravedad, o una base de datos
alcanza un lmite definido de espacio libre disponible. La alerta se puede definir
a tomar acciones como el envo de un correo electrnico, buscapersonas un
operador, o ejecutar un trabajo para abordar el problema.
Operadores
Las personas identificadas a travs de su cuenta de la red o de correo electrnico
de identificacin que pueda solucionar los problemas con el servidor. Ellos
pueden ser el blanco de alertas, ya sea a travs de correo electrnico, un
buscapersonas o un comando net send red.
SQL Server pasa los eventos que se producen en el Agente SQL Server.
Agente SQL Server ejecuta cualquier alerta o enva peticiones de SQL Mail para
SQL Server, o enva neta enviar comandos a Windows.
SQL Server versin 7.0 es ms alto grado de automatizacin que las versiones
anteriores de SQL Server, y hace un mejor trabajo de configurar automticamente para
satisfacer las demandas de procesamiento. Estas caractersticas reducen el potencial de
condiciones de excepcin que activaran las alertas. Trabajos programados siguen
siendo una buena caracterstica para la aplicacin de las tareas repetitivas, como los
procedimientos de copia de seguridad.
Vea tambin
En otros volmenes
"Automatizacin de tareas administrativas" en el Companion de Microsoft SQL Server
Database Developer
Microsoft Search Service
Para un valor de carcter igual a, menor que, o mayor que una constante de
caracteres.
Para un valor de carcter que contiene un patrn de encordado.
Estas bsquedas pueden llevarse a cabo slo en contra de carbn y las columnas
varchar en una base de datos, aunque la funcin PATINDEX podra ser utilizado para
encontrar la ubicacin de una cadena en una columna que tiene un tipo de datos de
texto.
Utilizando el servicio de bsqueda de Microsoft permite a SQL Server versin 7.0 para
apoyar bsquedas ms precisas sobre columnas de cadenas de caracteres.
El servicio Microsoft Search tiene dos funciones:
Soporte de indexacin
Implementa los catlogos de texto completo y los ndices definidos para una
base de datos. Acepta la definicin de los catlogos de texto completo y las
tablas y columnas que componen los ndices en cada catlogo. Implementa las
peticiones para rellenar los ndices de texto completo.
Consulta de apoyo
Procesa las consultas de bsqueda de texto completo. Determina que las entradas
en el ndice cumplen los criterios de seleccin de texto completo. Para cada
entrada que satisfaga los criterios de seleccin, devuelve la identidad de la fila
ms un valor de clasificacin para el servicio MSSQLServer, donde se utiliza
esta informacin para construir el conjunto de resultados de consulta. Los tipos
de consultas compatibles incluyen la bsqueda de:
o
o
Vea tambin
En este volumen
Arquitectura consulta de texto completo
Catlogos de texto e ndices
MS DTC Servicio
El Coordinador de transacciones distribuidas de Microsoft (MS DTC) es un gestor de
transacciones que permite a las aplicaciones cliente incluyen varias fuentes diferentes de
datos en una sola transaccin. Coordina MS DTC confirmar la transaccin distribuida
en todos los servidores de alta en la transaccin.
Una instalacin de Microsoft SQL Server puede participar en una transaccin
distribuida a travs de:
Coordina el servicio MS DTC el buen fin de la transaccin distribuida para asegurar que
sea todas las actualizaciones en todos los servidores se hacen permanentes, o, en el caso
de errores, los borra.
Vea tambin
En otros volmenes
1. Inicio> Ejecutar> Escriba "cliconfg"> Enter. Esto nos lleva a la herramienta de red de
cliente de SQL Server.
2. En la ficha General, active el protocolo "TCP / IP".