Lumigent Log Explorer 3.0
Lumigent Log Explorer 3.0 kan rädda dagen
av Brad M. McGee
Har du någonsin – som en SQL Server DBA – råkat ut för några av följande situationer:
- Efter att det har hänt, har du någonsin velat ta reda på vem som ändrade ett specifikt record? Om SQL Serverns Profiler har kört en trace så kunde du ha fångat in transaktionen. Men den körde inte, så nu är det för sent.
- Efter att det har hänt så ville du identifiera en SQL-satser som orsakar usel prestanda under en viss tidpunkt. Men – precis som ovan – så kördes inte Profilern, så nu kan du inte få reda på det.
- Du får reda på att en av utvecklarna råkade köra en massUPDATE för varje record i en specifik tabell, han glömde att lägga till den ack så viktiga WHERE klausulen. Och just det, han gjorde det för sex timmar sedan, så misstaget måste vara korrigerat nu.
- Helt plötsligt märker du att transaktionsloggen har vuxit sig tio gånger större än sin normala storlek. Vad har hänt?
Jag vet inte hur det är med dig, men jag råkar ut för sådana här icke-standard SQL Server situationer nästan varje dag. Någonting som inte skulle hända händer, och man förväntar sig att jag ska fixa det. Heja mig.
Log Explorer kommer till räddning
När det gäller att lösa svåra problem – som t ex de ovan – så drar jag fram min tillförlitliga kopia av Lumigents Log Explorer. Den senaste versionen, version 3 (som precis har släppts), inkluderar en mängd olika funktioner som gör mitt liv som DBA lite lättare. Faktum är att Log Explorer är ett sällsynt program, och det gör sådant som inget annat SQL Server verktyg klarar av.
Vad kan Log Explorer göra för dig?
Log Explorer är unikt eftersom den läser transaktionsloggen för att hitta de data den behöver till att utföra sitt jobb. Fördelen med det är att du kan gå tillbaka, i tiden, för att se vad som pågår i din databas. Till skillnad från SQL Server Profiler, som kräver att du skapar en trace (vilket du förmodligen sällan kan göra på grund av den belastning som sker när du gör det regelbundet), så kan Log Explorer användas när som helst för att ta en titt i transaktionsloggen om du vill se vad som har hänt. Här följer några av de saker du kan utföra med Log Explorer:
- Söka igenom transaktioner i din SQL Server transaktionslogg. Du kan söka igenom bokstavligen varje transaktion, en efter en, i transaktionsloggfilen. Om du aldrig har sett en transaktionsloggfil förut så kan det här bli en utbildning i sig själv. Det är verkligen användbart då du måste felsöka i olika dataproblem. Låt oss t ex säga att de data som du för tillfället kan se i ett record inte är det du förväntar dig att se. Log Explorer låter dig då söka igenom alla transaktioner till ett specifikt record, vilket låter dig se exakt vad som har skett där.
- Se över alla transaktioner i din databas. Ibland kan du få en fråga om vem som gjorde en modifikation i ett särskilt record. Om du för närvarande inte skapar en trace över vad som händer så är det här vanligtvis en omöjlig uppgift att ta reda på. Men med Log Explorer så kan du se tillbaka i tiden och se vem som modifierade recordet i fråga.
- Se över schema- och rättighetsförändringar. Trots att du inte måste söka efter förändringar i en tabell eller i rättigheterna lika ofta som du måste söka efter förändringar i ett record, så kan det vara bra att veta att det går att göra. Om du är en DBA så kan det ibland vara bra att veta vilken av dessa irriterande utvecklare som gör ändringar i en tabell utan att berätta det för dig.
- Exportera logrecords till en fil eller till en SQL tabell. Om du vill så kan du välja transaktioner från transaktionsloggen och lägga ut dem. Låt oss t ex säga att du ser över aktiviteterna över en speciell användare, då kan du välja ut alla records som den här specifika användaren har modifierat för att sedan exportera dem och dela dem med andra, eller göra mer bekväma analyser.
- Du kan övervaka databasens transaktioner i realtid. Trots att den mesta tid du spenderar med Log Explorer går ut på att se över gamla data så är det inte det enda du kan göra. Log Explorer låter dig se transaktionerna inträffa i realtid. Det kan vara särskilt användbart då du vill felsöka i en Transact-SQL kod som inte fungerar riktigt som du vill.
- Hjälpa till att analysera prestanda. En av de smartaste funktionerna inom Log Explorer är att du kan utforska prestandaproblem utan att använda ett verktyg som SQL Profiler eller Performance Monitor. Log Explorer har förmågan att identifiera långvariga transaktioner, vilket kan hjälpa dig peka ut prestandaproblemen. Du kan dessutom identifiera sådana tabeller som har mest aktivitet. Du kan lätt identifiera sådana tabeller som mest råkar ut för SELECT-, INSERT-, UPDATE- eller DELETE-aktiviteter. Den här informationen kan vara användbar då du optimerar Index och om du vill bestämma om du vill lokalisera specifika tabeller i sina egna FileGroups.
- Återställa errors i en tabell eller applikation genom att selektivt ångra eller ändra transaktioner. Självklart har jag aldrig haft användning av den här funktionen (Ha, visst du..). Men om du, eller någon användare, eller kanske någon av dessa irriterande utvecklare lyckas ta bort ett record av misstag, eller modifiera fel data, så har Log Explorer förmågan att rulla tillbaka transaktionen så att det praktiskt taget aldrig har hänt. Det här kan vara användbart när du minst anar det.
- Återställa data i en tabell som raderades eller klipptes av. (Hey, det här är kraftfullt!). Log Explorer kan återställa tabeller som du oavsiktligen (eller medvetet) eliminerade. Nog sagt om det.
Och det här är bara en del av allt som du kan göra med Log Explorer. Som du kanske kan förstå så har vi bara skrapat lite på ytan av alla saker som Log Explorer kan göra för dig.
Hur fungerar Log Explorer?
Jag ska berätta lite kort om hur Log Explorer fungerar. För det första så inkluderar Log Explorer två komponenter; en Server och en klientkomponent. Som du kanske förstår så sker det mesta av arbetet på klientdelen, och den bör inte installeras på en produktions SQL Server. Serverdelen måste installeras på var och en av alla SQL Servers där du planerar använda Log Explorer. Installationen av klient- och Serverdelen sker från samma Setupprogram, och det är väldigt lätt.För att kunna använda Log Explorer så måste den kopplas till en antingen aktuell transaktionslogg eller till en sparad transaktionslogg. Om du t ex kapar och sparar en transaktionslogg varje timme, då kan du peka till de tolv senaste transaktionloggbackups för att kunna se över historiska transaktionsloggdata. Men om ditt mål är att se över aktiviteterna i realtid så kan du peka på den aktuella transaktionsloggen för att se vad som händer just nu. Som du kanske förstår så påverkas inte SQL Servern alls av att du pekar på en aktuell transaktionslogg. Tänk dig Log Explorer som ett hemligt fönster in mot det interna handlandet i SQL Servern.
När du väl har kopplat Log Explorer till en transaktionslogg så är du reda att söka bland transaktioner, se över transaktioner eller att analysera prestanda. Allting sker från Log Explorerns GUI gränssnitt.
0 Kommentarer