SQL Server Disponibilidad de Soporte

Embed Size (px)

Citation preview

sql server disponibilidad de soporteEn este tema se presentan varias soluciones de alta disponibilidad de SQL Server que mejoran la disponibilidad de los servidores o las bases de datos.Una solucin de alta disponibilidad enmascara los efectos de un error de hardware o software y mantiene la disponibilidad de las aplicaciones a fin de minimizar el tiempo de inactividad que perciben los usuarios.SQL Server ofrece varias opciones para crear alta disponibilidad para un servidor o una base de datos.Entre las opciones de alta disponibilidad figuran las siguientes: Instancias de clster de conmutacin por error de AlwaysOnComo parte de la oferta de SQL Server AlwaysOn, las instancias de clster de conmutacin por error de AlwaysOn aprovechan la funcionalidad de Clsteres de conmutacin por error de Windows Server (WSFC) para proporcionar alta disponibilidad local mediante la redundancia en el nivel de instancias de servidor, unainstancia de clster de conmutacin por error(FCI).Una FCI es una instancia de SQL Server que se instala a travs de los nodos de Clsteres de conmutacin por error de Windows Server (WSFC) y, posiblemente, a travs de varias subredes.En la red, una FCI aparece como una instancia de SQL Server que se ejecuta en un equipo individual, pero proporciona la conmutacin por error entre nodos de WSFC si el nodo actual deja de estar disponible.Grupos de disponibilidad AlwaysOnGrupos de disponibilidad AlwaysOn es una solucin de alta disponibilidad y recuperacin de desastres de nivel empresarial presentada en SQL Server 2012 que permite maximizar la disponibilidad para una o varias bases de datos de usuario.Grupos de disponibilidad AlwaysOn necesita que las instancias de SQL Server se encuentren en nodos de Clsteres de conmutacin por error de Windows Server (WSFC).

la creacin de reflejo de la base de datos es una solucin para aumentar la disponibilidad de la base de datos mediante una conmutacin por error casi inmediata.La creacin de reflejo de la base de datos puede utilizarse para mantener una sola base de datos en estado de espera, obase de datos reflejada, para una base de datos de produccin correspondiente a la que se conoce comobase de datos principal.Para obtener ms informacin

Carga de transaccinque soportaUna transaccin es una unidad nica de trabajo.Si una transaccin tiene xito, todas las modificaciones de los datos realizadas durante la transaccin se confirman y se convierten en una parte permanente de la base de datos.Si una transaccin encuentra errores y debe cancelarse o revertirse, se borran todas las modificaciones de los datos.SQL Server funciona en los siguientes tres modos de transaccin.Transacciones de confirmacin automticaCada instruccin individual es una transaccin.Transacciones explcitasCada transaccin se inicia explcitamente con la instruccin BEGIN TRANSACTION y se termina explcitamente con una instruccin COMMIT o ROLLBACK.Transacciones implcitasSe inicia implcitamente una nueva transaccin cuando se ha completado la anterior, pero cada transaccin se completa explcitamente con una instruccin COMMIT o ROLLBACK.Transacciones de mbito de loteUna transaccin implcita o explcita de Transact-SQL que se inicia en una sesin de MARS (conjuntos de resultados activos mltiples), que solo es aplicable a MARS, se convierte en una transaccin de mbito de lote.Si no se confirma o revierte una transaccin de mbito de lote cuando se completa el lote, SQL Server la revierte automticamente.Una transaccin es un conjunto deoperacionesque van a ser tratadas como una nica unidad. Estas transacciones deben cumplir 4 propiedades fundamentales comnmente conocidas como ACID (atomicidad, coherencia, asilamiento y durabilidad).La transaccin ms simple enSQLServer es una nica sentencia SQL. Por ejemplo una sentencia como esta:UPDATE Products SET UnitPrice=20 WHERE ProductName =ChaiEs una transaccin.Esta es una transaccin autocommit, una transaccin autocompletada.Cuando enviamos esta sentencia al SQL Server se escribe en el fichero de transacciones lo que va a ocurrir y a continuacin realiza los cambios necesarios en labase de datos. Si hay algn tipo de problema al hacer esta operacin el SQL Server puede leer en el fichero de transacciones lo que se estaba haciendo y si es necesario puede devolver la base dedatosalestadoen el que se encontraba antes de recibir la sentencia.Por supuesto este tipo de transacciones no requieren de nuestra intervencin puesto que el sistema se encarga de todo. Sin embargo si hay que realizar varias operaciones y queremos que sean tratadas como una unidad tenemos que crear esas transacciones de manera explcita.Sentencias para una transaccinComo decamos una transaccin es un conjunto de operaciones tratadas como una sola. Este conjunto de operaciones debe marcarse como transaccin para que todas las operaciones que la conforman tenganxitoo todas fracasen.La sentencia que se utiliza para indicar el comienzo de una transaccin es BEGIN TRAN.Si alguna de las operaciones de una transaccin falla hay que deshacer la transaccin en su totalidad para volver al estado inicial en el que estaba la base de datos antes de empezar. Esto se consigue con la sentencia ROLLBACK TRAN.Si todas las operaciones de una transaccin se completan con xito hay que marcar el fin de una transaccin para que la base de datos vuelva a estar en un estado consistente con la sentencia COMMIT TRAN.