Rendimiento de Microsoft® SQL Server TM 2000 Microsoft Corporation.
-
Upload
pepita-tome -
Category
Documents
-
view
23 -
download
0
Transcript of Rendimiento de Microsoft® SQL Server TM 2000 Microsoft Corporation.
Rendimiento de Microsoft® Rendimiento de Microsoft® SQL Server SQL Server TMTM 2000 2000
Microsoft CorporationMicrosoft Corporation
Lo que vamos a cubrirLo que vamos a cubrir
BloqueosBloqueos Procesador de consultasProcesador de consultas Optimización de consultasOptimización de consultas Configuración del sistemaConfiguración del sistema Monitoreo de rendimientoMonitoreo de rendimiento
Prerrequisitos de la sesiónPrerrequisitos de la sesión
Esta sesión Esta sesión asumeasume que que usted usted comprende comprende los aspectos básicos de los aspectos básicos de WindowsWindows®® 2003 Server/Windows 2003 Server/Windows®® 2000 Server 2000 Server SQL Server 2000SQL Server 2000 Monitor del sistemaMonitor del sistema
Nivel 200Nivel 200
AgendaAgenda
BloqueosBloqueos Procesador de consultasProcesador de consultas Optimización de consultasOptimización de consultas Configuración del sistemaConfiguración del sistema Monitoreo del rendimientoMonitoreo del rendimiento
Administrador de bloqueosAdministrador de bloqueosQué hace por ustedQué hace por usted Adquiere y libera bloqueosAdquiere y libera bloqueos Mantiene la compatibilidad entre los Mantiene la compatibilidad entre los
modos de bloqueosmodos de bloqueos Resuelve Resuelve interbloqueosinterbloqueos Escala bloqueos Escala bloqueos Utiliza 2 sistemas de bloqueosUtiliza 2 sistemas de bloqueos
Bloqueos de datos compartidosBloqueos de datos compartidos Pestillos internos para datos internos Pestillos internos para datos internos
y concurrencia de índicesy concurrencia de índices
BloqueosBloqueosGranularidad de bloqueos para los datos Granularidad de bloqueos para los datos del usuariodel usuario
Tabla
Página Página Página
Fila Fila Fila
Niveles de aislamiento de Niveles de aislamiento de bloqueosbloqueos
Soporta los 4 niveles de aislamiento Soporta los 4 niveles de aislamiento ANSI e ISOANSI e ISO SeriableSeriable Lectura repetibleLectura repetible Lectura confirmada - predeterminadoLectura confirmada - predeterminado Lectura no confirmadaLectura no confirmada
BloqueosBloqueosTipos de bloqueo Tipos de bloqueo enen los datos del usuario - los datos del usuario - CompartidosCompartidos
Se adquieren automáticamente cuando se leen Se adquieren automáticamente cuando se leen los datoslos datos
Aplica a la Tabla, Página, Clave o fila del Aplica a la Tabla, Página, Clave o fila del Índice.Índice.
Varios procesos pueden mantener un bloqueo Varios procesos pueden mantener un bloqueo compartido en los mismos datos.compartido en los mismos datos.
No se puede bloquear exclusivamente No se puede bloquear exclusivamente mientras está en modo de bloqueo mientras está en modo de bloqueo compartido*compartido*
*A menos que sea el mismo proceso que sostiene el bloqueo compartido
BloqueosBloqueosTipos de bloqueo Tipos de bloqueo enen los datos del usuario - los datos del usuario - ExclusivosExclusivos Se adquieren automáticamente cuando se Se adquieren automáticamente cuando se
modificanmodifican los datos los datos Sólo un proceso puede mantenerse a la vez Sólo un proceso puede mantenerse a la vez
sobre cualquier dato.sobre cualquier dato. Se mantiene hasta el final de una TransacciónSe mantiene hasta el final de una Transacción Se rechazarán tSe rechazarán todas las demás solicitudes de odas las demás solicitudes de
bloqueo por otros procesos.bloqueo por otros procesos. Se pueden utilizar ayudas de Consulta para Se pueden utilizar ayudas de Consulta para
decidir si se leen los datos aseguradosdecidir si se leen los datos asegurados
BloqueosBloqueosTipos de bloqueo Tipos de bloqueo enen los datos del usuario - los datos del usuario - ActualizaciónActualización Un híbrido de compartidos y exclusivosUn híbrido de compartidos y exclusivos Se adquieren cuando se requiere una Se adquieren cuando se requiere una
búsqueda antes de cualquier modificación a búsqueda antes de cualquier modificación a los datoslos datos
Permite que otros sigan leyendo mientras se Permite que otros sigan leyendo mientras se aplica el bloqueoaplica el bloqueo
Necesita un bloqueo exclusivo para modificar Necesita un bloqueo exclusivo para modificar los datoslos datos
Los datos pueden tener varios bloqueos Los datos pueden tener varios bloqueos compartidos pero sólo un bloqueo de compartidos pero sólo un bloqueo de actualizaciónactualización
BloqueosBloqueosTipos de bloqueo Tipos de bloqueo enen los datos del usuario - los datos del usuario - IntentosIntentos
No es un modo de bloqueo real, sólo un No es un modo de bloqueo real, sólo un calificador, es decir,calificador, es decir,
Intento de bloqueo de actualizaciónIntento de bloqueo de actualización Es utilizado por SQL como un indicador Es utilizado por SQL como un indicador
de bloqueo de recursosde bloqueo de recursos Muestra si un subcomponente esta Muestra si un subcomponente esta
bloqueado (Por ejemplo si una fila se bloqueado (Por ejemplo si una fila se esta actualizando (exclusivo) muestra un esta actualizando (exclusivo) muestra un Intento de Exclusivo sobre la tabla)Intento de Exclusivo sobre la tabla)
BloqueosBloqueosTipos de bloqueo Tipos de bloqueo enen los datos del usuario - los datos del usuario - EspecialEspecial
3 modos especiales3 modos especiales Estabilidad del esquemaEstabilidad del esquema – se utiliza cuando las – se utiliza cuando las
consultas se modifican, evita los bloqueos de consultas se modifican, evita los bloqueos de “Modificación al esquema”“Modificación al esquema”
Modificación del esquema – se utiliza cuando se Modificación del esquema – se utiliza cuando se modificanmodifican las estructuras de la tabla las estructuras de la tabla
Modificación Masiva– se utiliza Modificación Masiva– se utiliza concon el comando el comando BULK INSERT o BCP.BULK INSERT o BCP.
BloqueosBloqueosVer información del bloqueo - TipoVer información del bloqueo - Tipo
AbreAbrevv RecursoRecurso Código Código internointerno
DescripciónDescripción // ejemploejemplo
DBDB Base de datosBase de datos 22
TABTAB TablaTabla 55 ID de la tablaID de la tabla 261775902 261775902
EXTEXT ExtensiónExtensión 88 Número de archivo / páginaNúmero de archivo / página 1:96 1:96
PAGPAG PáginaPágina 66 Número de archivo / páginaNúmero de archivo / página 1:104 1:104
KEYKEY ClaveClave 77 Valor controladoValor controlado ac0001a10a00 ac0001a10a00
ACAC Fila Fila 99 Número de archivo / página / Número de archivo / página / ranuraranura 1:151:4 1:151:4
APPAPP AplicaciónAplicación 1010 Control del nombre de la Control del nombre de la aplicaciónaplicación MYpr8dea MYpr8dea
BloqueosBloqueosVer información del bloqueo - ModoVer información del bloqueo - ModoAbreviaciónAbreviación ModoModo Código internoCódigo interno
SS CompartidoCompartido 44
XX Exclusivo Exclusivo 66
UU Actualizar Actualizar 55
ISIS Intento compartidoIntento compartido 77
IUIU Intento actualizaciónIntento actualización 88
IXIX Intento ExclusivoIntento Exclusivo 99
SIXSIX Compartido con Intento exclusivoCompartido con Intento exclusivo 1111
Sch-SSch-S Estabilidad del esquemaEstabilidad del esquema 22
Sch-MSch-M Modificación al esquemaModificación al esquema 33
BUBU Actualización masivaActualización masiva 1313
Bloque de bloqueo
Bloque de recurso del bloqueo
Obtener EsperarConvertir
Arquitectura de bloqueosArquitectura de bloqueosTabla de control Tabla de control
del bloqueodel bloqueo
Todos los bloqueos propietarios de la misma transacción
se enlazan entre si
Bloque dueño del bloqueo
Bloque dueño del bloqueo
Bloque dueño del bloqueo
Bloque de bloqueo
Bloque de recurso del bloqueo
Obtener EsperarConvertir
BloqueosBloqueosFila contra nivel de páginaFila contra nivel de página
RequerimientosRequerimientos del bloqueo del bloqueo Cada bloqueo – 32 bytesCada bloqueo – 32 bytes Cada proceso que mantiene un bloqueo – Cada proceso que mantiene un bloqueo –
32 bytes32 bytes Cada proceso que espera un bloqueo – 32 Cada proceso que espera un bloqueo – 32
bytesbytes Nivel de página – 8kNivel de página – 8k Nivel de fila – depende del tamaño de Nivel de fila – depende del tamaño de
la Filala Fila Cuál utilizar depende de la Cuál utilizar depende de la
aplicaciónaplicación
Demostración 1Demostración 1Ver los bloqueos de Ver los bloqueos de
SQL ServerSQL Server
AgendaAgenda
BloqueosBloqueos Procesador de consultasProcesador de consultas Ajuste de consultasAjuste de consultas Configuración del sistemaConfiguración del sistema Monitoreo del rendimientoMonitoreo del rendimiento
Procesador de consultasProcesador de consultasProceso de compilaciónProceso de compilación de sentencias de sentencias
Analizar la sentencia
Crear un árbol de secuencias
Normalizar el árbol
¿ Sentencia de SQL DML?
Compilar en procedimientos
de sentencia de TSQL
Compilar en procedimientos las sentencias de TSQL
Crear una gráfica de consulta
Optimizar y crear el plan
SíNo
Procesador de ConsultasProcesador de ConsultasOptimización de una sentenciaOptimización de una sentencia
Optimizador de plan trivial
Simplificación
Carga de estadísticas
Optimizador basado en costo: Fases 1 a n-1
Optimización completa para ejecución en serie
Plan de salida
Optimización completa
para ejecución en paralelo
Encontrado plan barato?
1
1
Planencontrado?
Costo de plan mas barato > que umbral
de paralelismo?
No
No
No
Si
Si
Si
Procesador de consultas Procesador de consultas Cómo funciona el optimizadorCómo funciona el optimizador Análisis de consultasAnálisis de consultas Selección de índicesSelección de índices Selección de combinación (join)Selección de combinación (join)
Iteración anidada (Nested iteration)Iteración anidada (Nested iteration) Separación (Separación (HashingHashing)) Mezcla (Mezcla (Merging)Merging)
Procesador de consultasProcesador de consultasMemoria caché – costeo de un plan de Memoria caché – costeo de un plan de consultasconsultas
Ubicar memoria del caché del búfer
Establecer el costo inicialal costo de creación
¿Ad hoc ybarato decompilar?
¿Tipo deplan?
Colocar el plan en caché
Establecer el costo inicial en cero
Sin cachéSí
No
Ad-hoc
Procesador de consultasProcesador de consultasFlujo de Compilación Y EjecuciónFlujo de Compilación Y Ejecución
Plan enCache?
Interpretar/normalizar
Compilar TSQL
Optimizar sentencias
Poner plan en cache
Recuperar plan desde cache
Esperar que el planificadorde memoria autorice
Abrir (activar) plan
Ejecutar el plan hasta el final
El Plan necesita recompilación?
No
No
Si
Si
Demostración 2Analizador de consultas
Obtener estadísticas sobre una consultaObtener estadísticas sobre una consulta
Utilizar el plan gráficoUtilizar el plan gráfico
Utilizar el plan estimadoUtilizar el plan estimado
AgendaAgenda
BloqueosBloqueos Procesador de consultasProcesador de consultas Ajuste de consultasAjuste de consultas Configuración del sistemaConfiguración del sistema Monitoreo del rendimientoMonitoreo del rendimiento
Ajuste de consultasAjuste de consultasAjuste – Cuándo empezarAjuste – Cuándo empezar Empiece al principioEmpiece al principio Considere el rendimiento antes de Considere el rendimiento antes de que que
escriba su primer línea de códigoescriba su primer línea de código Asegúrese de haber establecido una Asegúrese de haber establecido una
buena estructura de base de datosbuena estructura de base de datos Desarrolle lo que parezcan ser Desarrolle lo que parezcan ser índicesíndices
útilesútiles Asegúrese que todo el análisis se realice Asegúrese que todo el análisis se realice
con una carga de trabajo representativacon una carga de trabajo representativa
Ajuste de consultas Ajuste de consultas Diseño de la aplicación y la base de datosDiseño de la aplicación y la base de datos
Proporciona Proporciona la mayorla mayor ganancia e ganancia enn rendimientorendimiento
NormaliceNormalice Evalúe sus transacciones críticasEvalúe sus transacciones críticas Mantenga compactasMantenga compactas las extensiones de la las extensiones de la
fila de la tabla y las extensiones clave fila de la tabla y las extensiones clave Cree índices útilesCree índices útiles Evaluación comparativa, Prototipo y PruebaEvaluación comparativa, Prototipo y Prueba
SQL ServerSQL Server
Perfilador Perfilador SQLSQLAsistente de Asistente de
ajuste de índicesajuste de índices
Rec
omen
daci
ones
Rec
omen
daci
ones
de a
just
e
de a
just
eC
onsultas en
Consultas en
tiempo real
tiempo real
Carga de trabajoCarga de trabajo(filtrada)(filtrada)
Ajuste de consultasAjuste de consultasCreación y ajuste de índicesCreación y ajuste de índices
Ajuste de consultas Ajuste de consultas Monitorear rendimiento de consultaMonitorear rendimiento de consultass STATISTICS – Input/Output STATISTICS – Input/Output
Lecturas lógicasLecturas lógicas Lecturas físicasLecturas físicas Lecturas avanzadas de lecturaLecturas avanzadas de lectura Cuenta de Cuenta de exploraciónexploración
STATISTICS - TimeSTATISTICS - Time SHOWPLANSHOWPLAN
Showplan_Text, Showplan_All, Showplan_Text, Showplan_All, Graphical ShowplanGraphical Showplan
Ajuste de consultas Ajuste de consultas SugerenciasSugerencias de consulta de consulta
Las Las sugerenciassugerencias de consulta se de consulta se deben utilizar para casos especiales deben utilizar para casos especiales – no como un procedimiento – no como un procedimiento operativo estándaroperativo estándar
Tipos de Tipos de consultaconsulta:: SugerenciasSugerencias de unión de unión SugerenciasSugerencias de índice de índicess SugerenciasSugerencias de bloqueo de bloqueoss SugerenciasSugerencias de procesamiento de procesamientoss
Ajuste de consultas Ajuste de consultas Bloqueos e Bloqueos e InterbloqueosInterbloqueos – Cómo resolverlos – Cómo resolverlos Mantenga las transacciones lo más Mantenga las transacciones lo más
cortas posiblescortas posibles Nunca agregue una pausa dentro de Nunca agregue una pausa dentro de
una transacción para entradas del una transacción para entradas del usuariousuario
Cuando procesa un conjunto de Cuando procesa un conjunto de resultados, procese todas las filas resultados, procese todas las filas tan pronto como sea posibletan pronto como sea posible
Para aplicaciones de scrolling de Para aplicaciones de scrolling de registros, considere utilizar cursores registros, considere utilizar cursores con control de concurrencia con control de concurrencia optimistaoptimista
Ajuste de consultas Ajuste de consultas interbloqueos interbloqueos – Cómo resolverlos– Cómo resolverlos
Para evitar Para evitar interbloqueos interbloqueos eenn los los ciclocicloss, haga que los procesos , haga que los procesos accedan a los recursos en un orden accedan a los recursos en un orden consistente. consistente.
Reduzca el nivel de aislamiento de Reduzca el nivel de aislamiento de la transacción si es posible para la la transacción si es posible para la aplicación. aplicación.
Para evitar Para evitar interbloqueos interbloqueos de de conversión, serialice explícitamente conversión, serialice explícitamente el acceso a un recurso. el acceso a un recurso.
Recopile información acerca del Recopile información acerca del comportamiento de la aplicacióncomportamiento de la aplicación Utilice el Perfilador SQLUtilice el Perfilador SQL
Analice la informaciónAnalice la información Analizador de consultasAnalizador de consultas Asistente de ajuste de índicesAsistente de ajuste de índices
Aplique cambiosAplique cambios Asistente de ajuste de índicesAsistente de ajuste de índices Administrador empresarialAdministrador empresarial
Ajuste de consultasAjuste de consultasAjuste de rendimientoAjuste de rendimiento Un enfoque paso por pasoUn enfoque paso por paso
Demostración 3Demostración 3Simulador de cargaSimulador de carga
Demostración 4Demostración 4Asistente de ajuste de índiceAsistente de ajuste de índicess
Analizar la carga de trabajoAnalizar la carga de trabajo
Ver reportesVer reportes
Aplicar índices sugeridosAplicar índices sugeridos
AgendaAgenda
BloqueosBloqueos Procesador de consultasProcesador de consultas Ajuste de consultasAjuste de consultas Configuración del sistemaConfiguración del sistema Monitoreo del rendimientoMonitoreo del rendimiento
Configuración del sistema Configuración del sistema AsignaciónAsignación de recursos y ubicación de de recursos y ubicación de llosos archivo archivoss del sistema del sistema
Asegúrese de que el Asegúrese de que el rendimiento de los datos rendimiento de los datos maximizados para las maximizados para las aplicaciones de la red se aplicaciones de la red se seleccione para los seleccione para los servicios de archivo e servicios de archivo e impresiónimpresión
No ubique los archivos No ubique los archivos de SQL Server en la de SQL Server en la misma unidad que misma unidad que PAGEFILE.sysPAGEFILE.sys
Configuración del sistema Configuración del sistema Configurar los recursos de SQLConfigurar los recursos de SQL
Sp_configureSp_configure EXEC sp_configurEXEC sp_configur
ee RECONFIGURARRECONFIGURAR
Con sobrecargaCon sobrecarga
Administrador Administrador empresarialempresarial
Configuración del sistema Configuración del sistema Configurar los recursos de SQLConfigurar los recursos de SQL
Memoria mínima del Memoria mínima del servidor y memoria servidor y memoria máxima del servidormáxima del servidor
Configurar el tamaño Configurar el tamaño del conjunto del del conjunto del trabajotrabajo
Memoria de consulta Memoria de consulta mínimamínima
Configuración del sistema Configuración del sistema Configurar los recursos de SQLConfigurar los recursos de SQL
ProgramarProgramar Agrupamiento de peso ligeroAgrupamiento de peso ligero Máscara de afinidadMáscara de afinidad Inicio de prioridadInicio de prioridad Hilos máximos para el trabajadorHilos máximos para el trabajador
Opciones Opciones E/SE/S del disco del disco Intervalo de recuperaciónIntervalo de recuperación
Configuración del sistema Configuración del sistema Configurar los recursos de SQLConfigurar los recursos de SQL
Opciones de procesamiento de Opciones de procesamiento de consultasconsultas Memoria mínima por consulta Memoria mínima por consulta Memoria para crear índicesMemoria para crear índices Espera de consultaEspera de consulta Límite de costo de gobernador de Límite de costo de gobernador de
consultaconsulta Máximo grado de paralelismoMáximo grado de paralelismo
Configuración del sistema Configuración del sistema Configurar los recursos de SQLConfigurar los recursos de SQL Opciones de la base de datos Opciones de la base de datos
Sólo lecturaSólo lectura Usuario únicoUsuario único AutocierreAutocierre AutoreducciónAutoreducción CreaciónCreación automática de automática de estadísticas estadísticas Actualización Actualización automáticaautomática de de
estadísticas estadísticas
Configuración del sistema Configuración del sistema Configurar los recursos de SQLConfigurar los recursos de SQL
Administrador de búferAdministrador de búfer Opción “Pintable”Opción “Pintable” Monitoreo del rendimientoMonitoreo del rendimiento
SQLPERF(WAITSTATS)SQLPERF(WAITSTATS) SQLPERF(LRUSTATS)SQLPERF(LRUSTATS)
Demostración 5Demostración 5Configuración del sistema SQL Configuración del sistema SQL
Administrador empresarialAdministrador empresarialsp_configuresp_configure
AgendaAgenda
BloqueosBloqueos Procesador de consultasProcesador de consultas Ajuste de consultasAjuste de consultas Configuración del sistemaConfiguración del sistema Monitoreo del rendimientoMonitoreo del rendimiento
Monitoreo del rendimiento Monitoreo del rendimiento Cómo utilizar el Perfilador de SQLCómo utilizar el Perfilador de SQL Monitoree eventos del servidorMonitoree eventos del servidor Capture instrucciones de SQL Capture instrucciones de SQL Identifique consultas con Identifique consultas con
rendimientorendimiento bajo bajo Reproduzca los problemas para su Reproduzca los problemas para su
diagnósticodiagnóstico
Monitoreo del rendimientoMonitoreo del rendimientoCuándo utilizar el Perfilador de SQLCuándo utilizar el Perfilador de SQL Depurar T-SQL o procedimientos Depurar T-SQL o procedimientos
almacenadosalmacenados Monitorear el rendimiento de SQL Monitorear el rendimiento de SQL
Server para ajustar las cargas de Server para ajustar las cargas de trabajotrabajo
Capturar los escenarios de Capturar los escenarios de interbloqueosinterbloqueos
Eventos de reproducción Eventos de reproducción capturadoscapturados
Monitoreo del Monitoreo del rendimiento rendimiento Perfilador SQLPerfilador SQL
Categorías de eventosCategorías de eventos Columnas de datosColumnas de datos FiltrosFiltros
Demostración 6Demostración 6Perfilador Perfilador SQL SQL
Rastrear consultas en una base de datosRastrear consultas en una base de datos
Crear asistente de rastreoCrear asistente de rastreo
Monitoreo del rendimientoMonitoreo del rendimientoProcedimientos almacenados del Procedimientos almacenados del sistemasistema
SQL TraceSQL Trace sp_trace_createsp_trace_create sp_trace_seteventsp_trace_setevent sp_trace_setfiltersp_trace_setfilter sp_trace_setstatussp_trace_setstatus sp_trace_generateeventsp_trace_generateevent
SQLDIAGSQLDIAG
Demostración 7Demostración 7 Procedimientos de diagnóstico Procedimientos de diagnóstico
del sistemadel sistema
Monitoreo del rendimiento Monitoreo del rendimiento UUso dso del monitor del sistemael monitor del sistema Monitorea todo el rendimiento del Monitorea todo el rendimiento del
sistemasistema Contadores del sistemaContadores del sistema Contadores de SQLContadores de SQL
Monitoreo del rendimiento Monitoreo del rendimiento Monitor del sistemaMonitor del sistemaMonitorea varias computadoras Monitorea varias computadoras
simultáneamentesimultáneamenteVe y cambia gráficos para reflejar la Ve y cambia gráficos para reflejar la
actividad actualactividad actualExporta datos a hojas de cálculo o Exporta datos a hojas de cálculo o
aplicaciones de la base de datosaplicaciones de la base de datosAgrega alertas al sistema para Agrega alertas al sistema para
notificarle de posibles problemasnotificarle de posibles problemas
Monitoreo del rendimiento Monitoreo del rendimiento Monitor del sistemaMonitor del sistema Ejecuta una aplicación cuando un valor Ejecuta una aplicación cuando un valor
del contador excede el valor definido por del contador excede el valor definido por el usuarioel usuario
Desarrolla archivos de registroDesarrolla archivos de registro Anexa archivos de registro para formar un Anexa archivos de registro para formar un
ficherofichero a largo plazo a largo plazo Ve los reportes actuales de actividadesVe los reportes actuales de actividades Genera reportes a partir de los archivos Genera reportes a partir de los archivos
de registro existentesde registro existentes Guarda gráficos, alertas, registros o Guarda gráficos, alertas, registros o
configuraciones de reporteconfiguraciones de reportess
Monitoreo del rendimiento Monitoreo del rendimiento Monitor del sistema – Contadores del Monitor del sistema – Contadores del sistemasistema Sistema:Sistema:
CambiosCambios/se/segg del contexto del contexto
Procesador: Procesador: TiempoTiempo de de %Processor %Processor TiempoTiempo de de %Privileged %Privileged TiempoTiempo de de %User %User Extensión de la consulta del Extensión de la consulta del
procesadorprocesador
Monitoreo del rendimiento Monitoreo del rendimiento Monitor del sistema – Contadores Monitor del sistema – Contadores del sistemadel sistema
SQL Server: Administrador de memoria:SQL Server: Administrador de memoria: Memoria total del servidor (KB)Memoria total del servidor (KB)
Proceso: Proceso: Contador del conjunto de trabajo para la Contador del conjunto de trabajo para la
instancia de SQL Serverinstancia de SQL Server Administrador del búfer de SQL Server:Administrador del búfer de SQL Server:
CoeficienteCoeficiente de la memoria caché del búfer de la memoria caché del búfer
Monitoreo del rendimiento Monitoreo del rendimiento Monitor del sistema – Contadores Monitor del sistema – Contadores del sistemadel sistema
Memoria: Memoria: Páginas/segPáginas/seg
SQLServer: Bases de datosSQLServer: Bases de datos Transacciones/segTransacciones/seg
Disco físico:Disco físico: Transferencias/seg del discoTransferencias/seg del disco
Demostración 8Demostración 8 Monitor del sistema Monitor del sistema
Configurar monitor del sistemaConfigurar monitor del sistema
Resumen de la sesiónResumen de la sesión
SQL Server 2000 puede utilizar SQL Server 2000 puede utilizar varias técnicas para mejorar el varias técnicas para mejorar el rendimiento de las aplicacionesrendimiento de las aplicaciones
Las técnicas incluyen:Las técnicas incluyen: Diseño de la aplicación y de la base de Diseño de la aplicación y de la base de
datosdatos Ajuste de consultasAjuste de consultas Configuración del sistemaConfiguración del sistema Monitoreo del rendimientoMonitoreo del rendimiento
Para mayores informes…Para mayores informes… Sitio Web TechNet en Sitio Web TechNet en
www.microsoft.com/technetwww.microsoft.com/technet Microsoft Official Curricula (MOC)Microsoft Official Curricula (MOC)
Curso # 2071 – ConsultaCurso # 2071 – Consultass de de Microsoft SQL Server 2000 con Transact-SQLMicrosoft SQL Server 2000 con Transact-SQL Curso # 2072 – Administrar una base de datos Microsoft SQL Server 2000Curso # 2072 – Administrar una base de datos Microsoft SQL Server 2000
Microsoft PressMicrosoft Press ““Inside SQL Server 2000”, Microsoft Press, 2000., o:Inside SQL Server 2000”, Microsoft Press, 2000., o:
http://http://mspress.microsoft.commspress.microsoft.com//booksbooks/4297./4297.htmhtm ““Microsoft® SQL Server™ 2000 Resource Kit”,Microsoft® SQL Server™ 2000 Resource Kit”,
http://http://www.mspress.microsoft.comwww.mspress.microsoft.com/PROD/BOOKS/4939.HTM/PROD/BOOKS/4939.HTM ““Microsoft® SQL Server™ 2000 Reference Library “,Microsoft® SQL Server™ 2000 Reference Library “,
http://http://mspress.microsoft.commspress.microsoft.com//prodprod//booksbooks/5001./5001.htmhtm ““Microsoft® SQL Server™ 2000 Administrator's Companion”,Microsoft® SQL Server™ 2000 Administrator's Companion”,
http://http://mspress.microsoft.commspress.microsoft.com//booksbooks/4519./4519.htmhtm ““Microsoft® BackOffice® 4.5 Resource Kit ”, Microsoft Press, 1999, o:Microsoft® BackOffice® 4.5 Resource Kit ”, Microsoft Press, 1999, o:
http://http://mspress.microsoft.commspress.microsoft.com//prodprod//booksbooks/2483./2483.htmhtm
CapacitaciónCapacitaciónRecursos de capacitación para los Recursos de capacitación para los profesionales de informáticaprofesionales de informática ConsultaConsultas des de Microsoft SQL Server 2000 con Transact-SQL Microsoft SQL Server 2000 con Transact-SQL
Curso # 2071 — Dos días — Dirigido por instructor o Curso # 2071 — Dos días — Dirigido por instructor o aprendizaje por correo electrónicoaprendizaje por correo electrónico
Disponible: a través de MS CTECs en su áreaDisponible: a través de MS CTECs en su área Administrar una base de datos Microsoft SQL Server 2000Administrar una base de datos Microsoft SQL Server 2000
Curso # 2072— Cinco días — Dirigido por instructorCurso # 2072— Cinco días — Dirigido por instructor Disponible: a través de MS CTECs en su áreaDisponible: a través de MS CTECs en su área
Para localizar al proveedor de capacitación para este curso, visitePara localizar al proveedor de capacitación para este curso, visite
mcspreferral.microsoft.com/default.aspmcspreferral.microsoft.com/default.aspMicrosoft Certified Technical Education Centers (CTECs) Microsoft Certified Technical Education Centers (CTECs)
son socios premier de Microsoft para servicios de capacitaciónson socios premier de Microsoft para servicios de capacitación
¿Dónde puedo obtener TechNet?¿Dónde puedo obtener TechNet?
Visite TechNet Online enVisite TechNet Online enwww.microsoft.com/technetwww.microsoft.com/technet
Regístrese para TechNet FlashRegístrese para TechNet Flash www.microsoft.com/technet/register/flash.aspwww.microsoft.com/technet/register/flash.asp
Únase al foro TechNet Online enÚnase al foro TechNet Online en www.microsoft.com/technet/discusswww.microsoft.com/technet/discuss
Conviértase en un suscriptor de TechNet enConviértase en un suscriptor de TechNet en technetbuynow.one.microsoft.comtechnetbuynow.one.microsoft.com
Asista a más eventos TechNetAsista a más eventos TechNet
Conviértase en un Microsoft Conviértase en un Microsoft Certified Systems EngineerCertified Systems Engineer ¿Qué es MCSE?¿Qué es MCSE?
Certificación Premier para profesionales que analizan los Certificación Premier para profesionales que analizan los requerimientos de negocios y diseñan e implementan la requerimientos de negocios y diseñan e implementan la infraestructura para soluciones de negocios con base en el infraestructura para soluciones de negocios con base en el software del servidor Microsoft. software del servidor Microsoft.
¿Cómo me puedo convertir en un Windows 2000 ¿Cómo me puedo convertir en un Windows 2000 MCSE?MCSE? Pasar 4 exámenes básicosPasar 4 exámenes básicos Pasar 1 examen de diseñoPasar 1 examen de diseño Pasar 2 exámenes opcionales a partir de una lista completaPasar 2 exámenes opcionales a partir de una lista completa
¿Dónde obtengo mayores informes?¿Dónde obtengo mayores informes? Para mayores informes acerca de los requerimientos, Para mayores informes acerca de los requerimientos,
exámenes y opciones de capacitación para la certificación, exámenes y opciones de capacitación para la certificación, visite visite www.microsoft.com/mcpwww.microsoft.com/mcp
USE masterUSE master GOGO CREATE procedure sp_lock2 CREATE procedure sp_lock2 @spid1 int = NULL,@spid1 int = NULL, /* id del proceso de servidor para el que se comprueban /* id del proceso de servidor para el que se comprueban
los bloqueos */los bloqueos */ @spid2 int = NULL@spid2 int = NULL /* otros id de proceso para el que comprobar los bloqueos /* otros id de proceso para el que comprobar los bloqueos
*/*/ asas
set nocount onset nocount on /*/* ** Muestra los bloqueos para ambos parámetros.** Muestra los bloqueos para ambos parámetros. ** No muestra los bloqueos de master, tempdb, model o msdb** No muestra los bloqueos de master, tempdb, model o msdb */*/ if @spid1 is not NULLif @spid1 is not NULL beginbegin select select convert (smallint, req_spid) As spid,convert (smallint, req_spid) As spid, convert(char(20),db_name(rsc_dbid)) As [Database],convert(char(20),db_name(rsc_dbid)) As [Database], rsc_objid As ObjId,rsc_objid As ObjId, rsc_indid As IndId,rsc_indid As IndId, substring (v.name, 1, 4) As Type,substring (v.name, 1, 4) As Type, substring (rsc_text, 1, 16) as Resource,substring (rsc_text, 1, 16) as Resource, substring (u.name, 1, 8) As Mode,substring (u.name, 1, 8) As Mode, substring (x.name, 1, 5) As Statussubstring (x.name, 1, 5) As Status
from from master.dbo.syslockinfo,master.dbo.syslockinfo, master.dbo.spt_values v,master.dbo.spt_values v, master.dbo.spt_values x,master.dbo.spt_values x, master.dbo.spt_values umaster.dbo.spt_values u
where master.dbo.syslockinfo.rsc_type = v.numberwhere master.dbo.syslockinfo.rsc_type = v.number and v.type = 'LR'and v.type = 'LR' and master.dbo.syslockinfo.req_status = x.numberand master.dbo.syslockinfo.req_status = x.number and x.type = 'LS'and x.type = 'LS' and master.dbo.syslockinfo.req_mode + 1 = u.numberand master.dbo.syslockinfo.req_mode + 1 = u.number and u.type = 'L'and u.type = 'L' and rsc_dbid >=5and rsc_dbid >=5
and req_spid in (@spid1, @spid2)and req_spid in (@spid1, @spid2) endend
/*/* ** Sin parámetros, muestra todos los bloqueos.** Sin parámetros, muestra todos los bloqueos. */*/ elseelse beginbegin select select convert (smallint, req_spid) As spid,convert (smallint, req_spid) As spid, convert(char(20),db_name(rsc_dbid)) As [Database],convert(char(20),db_name(rsc_dbid)) As [Database], rsc_objid As ObjId,rsc_objid As ObjId, rsc_indid As IndId,rsc_indid As IndId, substring (v.name, 1, 4) As Type,substring (v.name, 1, 4) As Type, substring (rsc_text, 1, 16) as Resource,substring (rsc_text, 1, 16) as Resource, substring (u.name, 1, 8) As Mode,substring (u.name, 1, 8) As Mode, substring (x.name, 1, 5) As Statussubstring (x.name, 1, 5) As Status
from from master.dbo.syslockinfo,master.dbo.syslockinfo, master.dbo.spt_values v,master.dbo.spt_values v, master.dbo.spt_values x,master.dbo.spt_values x, master.dbo.spt_values umaster.dbo.spt_values u
where master.dbo.syslockinfo.rsc_type = v.numberwhere master.dbo.syslockinfo.rsc_type = v.number and v.type = 'LR'and v.type = 'LR' and master.dbo.syslockinfo.req_status = x.numberand master.dbo.syslockinfo.req_status = x.number and x.type = 'LS'and x.type = 'LS' and master.dbo.syslockinfo.req_mode + 1 = u.numberand master.dbo.syslockinfo.req_mode + 1 = u.number and u.type = 'L'and u.type = 'L' and rsc_dbid >=5and rsc_dbid >=5 order by spidorder by spid endend
return (0) -- sp_lock2return (0) -- sp_lock2