taller 70-432 sql

57
Ing. Jonathan Mejias Valenciano Microsoft Certified IT Professional Virtualization Administrator Microsoft Technology Specialist Windows Server 2008 R2 Desktop Virtualization Microsoft Technology Specialist Windows Server Virtualization Configuration Microsoft Technology Specialist System Center Configuration Manager 2007 Microsoft Certified Database Administrator Microsoft Certified IT Professional SQL-Server 2005 Microsoft Technology Specialist SQL-Server 2005 Microsoft Technology Specialist SQL-Server 2008 Microsoft Speaker Senior Consulting Services [email protected]

Upload: adrianaromero

Post on 14-Sep-2015

237 views

Category:

Documents


4 download

DESCRIPTION

TAller del Tema 70-432

TRANSCRIPT

Diapositiva 1

Ing. Jonathan Mejias Valenciano

Microsoft Certified IT Professional Virtualization AdministratorMicrosoft Technology Specialist Windows Server 2008 R2 Desktop VirtualizationMicrosoft Technology Specialist Windows Server Virtualization Configuration

Microsoft Technology Specialist System Center Configuration Manager 2007

Microsoft Certified Database AdministratorMicrosoft Certified IT Professional SQL-Server 2005Microsoft Technology Specialist SQL-Server 2005Microsoft Technology Specialist SQL-Server 2008

Microsoft Speaker

Senior Consulting Services

[email protected]

PresentationNameCompany PositionDatabase experienceSQL Server CertificationsExpectations for the workshop

WorkShop Materials70-432 and 70-450: Microsoft SQL Server Database implementation and maintenance

FacilitiesClass hoursParkingRestroomsMealsPhonesSmoking

PrerequisitesExperience as database administrator.Experience with Windows services (starting and stopping)Experience creating service accounts and permissionsExperience with Microsoft SQL Server 2005/2008

5SetupMicrosoft Virtual Server 2005 R2 / Virtual PC 2007/Hyper-V

Microsoft Windows Server 2008 R2 Enterprise EditionActive Directory, DNS, Mail Server.

Microsoft SQL Server 2008 R2 Enterprise Edition Database Services, Management Studio.

Microsoft SQL Server 2008 R2 Enterprise Edition.

Server Name: Login: AdministratorPassword: P@ssw0rd

Microsoft SQL Server 2008, Implementation and MaintenanceTemasInstalling and Configuring SQL Server 2008Maintaining SQL Server Instances Managing SQL Server Security Maintaining a SQL Server Database Performing Data Management Tasks Monitoring and Troubleshooting SQL ServerOptimizing SQL Server Performance Implementing High AvailabilityInstalling and Configuring SQL Server 2008

Conceptos basicosPrerequisitosInstalacionConfiguracion instancias y serviciosConceptos basicos cont.Configuracion de RAID.Contencion: varios discos de menor volumen para evitar sobre carga en pocos discos de mayor volumen.SAN: arreglo de discos masivo para diferentes ambientes. Eva, EMC.Hot Spare: 1 disco dispobible para falla.Hot Swap: cambios en cliente

Conceptos basicos cont.Discos Dinamicos: solamente para arreglos por softwareDiscos Basicos: Cluster.Allocation Unit: unidad minima para particionar, default 4k.Designing a Database Server Security Solution Design instance authenticationAuthentication typeLogon triggersDesign instance-level security configurationsWindows Service AccountsCredentialsInstance-level permissionsEndpoint securityTCP portsCertificates

12Designing a Database Server Security Solution Design database, schema, and object security parametersUsersRolesCertificate and key managementhttp://msdn.microsoft.com/en-us/library/ms189586.aspx

Service Brokerhttp://msdn.microsoft.com/en-us/sqlserver/cc511479.aspx

Ownership chainhttp://msdn.microsoft.com/en-us/library/ms188676.aspx

13Troubleshooting Database and server performance

Optimization guide

ApplicationODBC is slowIf not .NET use OLEDBIF .NET use .NET Data ProviderOptimization guide

Application2 Layers->N LayersClient instructions can generate server cursorsOptimization guide

DatabaseNormalizationIndexesCursorsText PK without fixed sizePoorly written queriesOptimization guide

SQL ServerAWE/3GB, /PAEAssigned processorsSQL Server edition vs. available resources

Optimization guide

HardwareMemoryCPUI/ONetworkDesigning a Monitoring Strategy Physical Server Performance

Memory UsageDisk UsageProcessorNetwork UsageUser Connections

Network UsageNetwork Interface: Bytes Received/secExternal AttackNetwork Interface: Bytes Send/secLarge Volume of information.Network Interface: bytes/secDoS Attack

User ConnectionsSQL Server: General Statistics: User ConnectionsThis value shouldn't exeed 255 for continuous periodsSolving Resource ProblemsMemory:Buffer Cache Hit Ratio < 99 and Pages/sec > 20. Other applications running on the serverSQL Server memory configuration (dinamically and maximun settings)Add more RAMSolving Resource ProblemsDisk I/OExcesive I/O opertationsMemory bottleneckReduce server loadSolving Resource ProblemsPhysical Drives and Disk ControllersAdd drives to the arrayInstalling faster drivesFaster controllerAdding cache memory to the controller cardUsing diferent version of RAIDOffline defragmentationSolving Resource ProblemsCPU UtilizationProcessor Queue length and Processor time exceeded.Add CPUFaster CPULarger L2 cacheSolving Resource ProblemsCPU UtilizationProcessor Queue length exceeded and Processor time not exeeded.Reduce SQL Server Maximun worker theats.Solving Resource ProblemsUser ConnectionsSQL Server General Statistics:User Connections > 255Increase Maximun Worker theads.

Note: Maximun Worker theads > Maximun number of connectionsTroubleshooting ToolsSQL Server ProfilerDatabase tunning advisor (DTA)Dynamic Management viewsAnalizing Tempdb Database IssuesTempdb StorageSQL Server:Transactions:Free SpaceSelect SUM(unallcated_extent_page_count) AS [free pages](SUM(unallocated_extent_page_count)*1.0/128) AS [free space in MB]From sys.dm_db_file_space_usage;

Sys.dm_db_file_space_usage-> User objects, internal objects stores in tempdb

Analizing Tempdb Database IssuesTemdb ContentionTo monitor unusual increase in temporary objects allocation:SQL Server:Access Methods:Workfiles Created/SecSQL Server:Access Methods:Worktables Created/SecSQL Server:Access Methods:Mixed Page Allocations/SecSQL Server:General Statistics:Temp Tables Created/SecSQL Server:General Statistics:Temp Tables For Destruction

Analizing Query Statement RecompilesCompilation a least onceRecompilationValidityCorrectnessFor details page 36Monitoring Auto-Grow and Auto-ShrinkProfilerData File Auto Grow event classData File Auto Shrink event classLog File Auto Grow event classLog File Auto Shrink event classUpdating StatisticsINSERT, DELETE or UPDATE cause statistics to not reflect the true data distributionSp_autostatsSp_updatestatsIndexesCluster and Non clusterQuery optimizerDefragmenting and rebuilding indexesMissing and Inappropiate indexes (DTA)Poorly written queriesFocus on longest and the most frequentlyReview query code: Excessive data retrievalExcessive data movementUnnecessary data sortingCursorsLong-running transactionsSyntax errors

Poorly written queriesReview the query execution plan:Table scanCluster index scanBookmark lookupsIndex scansData sortsImproper data joins

Use DBCC DROPCLEANBUFFERS

Poorly written queriesAnalyze resources: CPU, memory, disk I/OQuery environment:Table designColumn designTable indexesColumn statisticsNumber of applicationsDatabase and server configurationAmount of data within the table

Poorly written queriesThe graphical execution planDatabase growthFilegroupsImproving database performanceAnalyzing QueriesIndentifying poorly performing queriesQuery editorInclude client StatisticsQuery optionsGraphical execution planEstimated execution planInclude actual execution planIndentifying poorly performing queriesUsing query designerAnalyze query in DTAProfilerDTADMVPage 89.Practice Page 93Analyzing a query planSet statistics IO OnExample page 100Graphical Execution planTable scans > 8MPoorly designed queryMissing indexExcessive logical reads and writesExample page 103.Where

Tuning queriesTop(100): first 100 rowsPercentDistinct: eliminate duplicate rows. CarefullyUnion: eliminate duplicate rows in the result set.Union ALL: more efficient.Example page 105Index in Foreign Keys

Tuning queriesset xact_abort onset lock_timeout 3000request mode x (exclusive)

Tuning queriesWhere clause operators:=>,>=,