[MSSQL2000] Nie chce logu transakcyjnego
MrKramer - 17-06-2007 00:15
[MSSQL2000] Nie chce logu transakcyjnego
Witam Niedawno dostalem pod opieke baze danych tzn. kazali postawic na MSSQL zamiast MySQL. No i mam problem z logiem transakcyjnym. Strasznie sie zapelnia. Jest mi on niepotrzebny bo baza sluzy tylko do odczytu, a wszelki zapis jaki sie odbywa, to kasowanie wszystkich rekordow i zapelnienie nowymi, aktualnymi. Jak wylaczyc log transakcji?
Robert Winkler - 17-06-2007 00:15
> Niedawno dostalem pod opieke baze danych tzn. kazali postawic na MSSQL zamiast MySQL. No i mam problem z logiem transakcyjnym. > Strasznie sie zapelnia. Jest mi on niepotrzebny bo baza sluzy tylko do odczytu, a wszelki zapis jaki sie odbywa, to kasowanie > wszystkich rekordow i zapelnienie nowymi, aktualnymi. > Jak wylaczyc log transakcji?
Zmie? w Enterprise Managerze parametr bazy "Recovery Mode" z warto?ci Full na Simple. Aby odzyska? nast?pnie miejsce na dysku wykonaj na tej bazie nastepnie operacje Shrink, mo?esz te? wykona? Shrink bezposrednio na pliku z logami.
-- ____________ Robert Winkler
MrKramer - 17-06-2007 00:15
Robert Winkler wrote: >> Niedawno dostalem pod opieke baze danych tzn. kazali postawic na MSSQL >> zamiast MySQL. No i mam problem z logiem transakcyjnym. Strasznie sie >> zapelnia. Jest mi on niepotrzebny bo baza sluzy tylko do odczytu, a >> wszelki zapis jaki sie odbywa, to kasowanie wszystkich rekordow i >> zapelnienie nowymi, aktualnymi. >> Jak wylaczyc log transakcji? > > Zmie? w Enterprise Managerze parametr bazy "Recovery Mode" > z warto?ci Full na Simple.
Co daje zmiana tego ?
> Aby odzyska? nast?pnie miejsce na dysku wykonaj na tej bazie > nastepnie operacje Shrink, mo?esz te? wykona? Shrink bezposrednio na > pliku z logami.
Obecnie po kazdej operacji zrobienia index'ow wgraniu rekordow oczyszczam baze wlasnie przez opcje shrink database, albo przez polecenie SQL DBCC SHRINKDATABASE (nazwa_bazy);
Robert Winkler - 17-06-2007 00:15
>>> Niedawno dostalem pod opieke baze danych tzn. kazali postawic na MSSQL zamiast MySQL. No i mam problem z logiem transakcyjnym. >>> Strasznie sie zapelnia. Jest mi on niepotrzebny bo baza sluzy tylko do odczytu, a wszelki zapis jaki sie odbywa, to kasowanie >>> wszystkich rekordow i zapelnienie nowymi, aktualnymi. >>> Jak wylaczyc log transakcji? >> >> Zmie? w Enterprise Managerze parametr bazy "Recovery Mode" >> z warto?ci Full na Simple. > > Co daje zmiana tego ?
Microsoft SQL Server w przypadku ka?dej operacji modyfikuj?cej dane informacje o wszystkich krokach zwi?zanych z tymi zmianami zapisuje w pliku z logami. Je?li operacje te wykonywane by?y w tranzakcji to po jej zako?czeniu ko?cowy stan modyfikowanych rekordów zapisywany jest w pliku z danymi je?li operacje nie s? obj?te tranzakcj? to baza stara si? po ka?dej udanej operacji zapisa? rezultat takiej operacji przepisa? z pliku logów do pliku z danymi.
Teraz staje sie istotny Recovery Model danej bazy na serwerze, je?li baza korzysta z opcji Full to pe?na historia zmian przechowywana jest w logach i jej ewentualne usuni?cie nast?puje dopiero w chwili wykonania backupu tranzaction loga z opcj? jego przyci?cia. Je?li baza ustawiona jest w trym Simple, to rekordy w tranzaction logu odpowiadaj?ce tranzakcjom majacym swoje odzwierciedlenie w pliku z danymi oznaczane s? jako "skasowane" a serwer jest w stanie korzystac z tego miejsca przy zapisie informacji o kolejnych modyfikacjach. Jesli poza zmian? opcji Recovery Model na Simple ustawimy tak?e opcje AutoShrink na True to serwer w miare "wolnych mocy" b?dzie reorganizowa? dane zniejszaj?c zaj?to?? dysków. Oczywiscie nie mo?na liczy? ?e wystarczy takie minimalistyczne podej?cie i osoba pe?ni?ca funkcje administratora takiego serwera powinna przygotowa? odpowiedni Maintenance Plan, a jeszcze lepiej kilka niezale?nych uruchamianych w ró?nych odst?pach czasu, odpowiedzielnych za backupy, reorganizacje indeksów, przeliczenie statystyk, kontrole poprawno?ci plików bazy i oczywiscie shrinkowanie bazy
>> Aby odzyska? nast?pnie miejsce na dysku wykonaj na tej bazie >> nastepnie operacje Shrink, mo?esz te? wykona? Shrink bezposrednio na pliku z logami. > > Obecnie po kazdej operacji zrobienia index'ow wgraniu rekordow oczyszczam baze wlasnie przez opcje shrink database, albo przez > polecenie SQL > DBCC SHRINKDATABASE (nazwa_bazy); >
Przy trybie Full operacja Shrink nie mo?e odnale?? usuni?tych rekordów gdy? dla SQL wszyskie wpisy, niewa?ne jak stare s? wa?ne. Korzystaj? z tego niektóre niezalezne narz?dzia pozwalaj?ce z pomoc? backupu odtworzyc stan serwera z dowolnej chwili czasowej, mo?na tego dokona? te? r?cznie korzystaj?c z dodatkowych parametrów funkcji RESTORE DATABASE
-- ____________ Robert Winkler
Krzysztof Raczkowski - 17-06-2007 00:15
Robert Winkler pisze: [CIAAAACH .. :)] > Korzystaj? z tego niektóre niezalezne narz?dzia > pozwalaj?ce z pomoc? backupu > odtworzyc stan serwera z dowolnej chwili czasowej, > mo?na tego dokona? te? r?cznie korzystaj?c z dodatkowych parametrów > funkcji RESTORE DATABASE >
A po co niezale?ne narz?dzia skoro EM te? to potrafi ?
-- Pozdrawiam K. Raczkowski
Robert Winkler - 17-06-2007 00:15
> [CIAAAACH .. :)] >> Korzystaj? z tego niektóre niezalezne narz?dzia >> pozwalaj?ce z pomoc? backupu >> odtworzyc stan serwera z dowolnej chwili czasowej, >> mo?na tego dokona? te? r?cznie korzystaj?c z dodatkowych parametrów >> funkcji RESTORE DATABASE >> > > A po co niezale?ne narz?dzia skoro EM te? to potrafi ?
Oczywi?cie ?e mo?na odtworzy?, ale bez narz?dzie pozwalajacych prze?ledzi? kolejne operacje jest to zwykle strzelanie na o?lep, i poprzez kolejne próby dochodzenie do momentu kiedy to na przyklad który? z pracowników skasowa? dane o wa?nym zamówieniu.
Wtedy to w?asnie przydaj? si? narzedzia typu ApexSQL SQL Log, Lumigent Log Explorer czy Red-Gate Log Rescue Gdy? tego co one potrafia, Enterprise Manager nie jest w stanie nam zaoferowa?.
Nie mo?na te? liczy? ?e kto? b?dzie analizowa? wyniki zwracane przez DBCC, no chyba ?e ma naprawde du?o czasu.
-- ____________ Robert Winkler
monoSOFT - 17-06-2007 00:15
> Witam > Niedawno dostalem pod opieke baze danych tzn. kazali postawic na MSSQL > zamiast MySQL. No i mam problem z logiem transakcyjnym. Strasznie sie > zapelnia. Jest mi on niepotrzebny bo baza sluzy tylko do odczytu, a > wszelki zapis jaki sie odbywa, to kasowanie wszystkich rekordow i > zapelnienie nowymi, aktualnymi. > Jak wylaczyc log transakcji?
Tak przy okazji: Jesli mozesz wplywac na sposob usuwania rekordow to uzyj truncate table i poczytaj temat w Books Online Logged and Minimally Logged Bulk Copy Operations dzieki czemu bedziesz mogl zmniejszyc ilosc logowanych informacji przy dodawaniu rekordow
Pzdr monoSOFT www.monosoft.pl
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
[MSSQL2000] Problem z =?ISO-8859-2?Q?tabel=B1/indeksem/zapytanie?==?ISO-8859-2?Q?m_czy_b=B3=B1d_w_bazie_danych=2E=2E=2E?=
[MSSQL2000]-ciekawy problem z dzieleniem liczb decimal(38,25)
=?iso-8859-2?Q?pare_pyta=F1_dot._MSSQL2005.?=
MSDE, MSSQL2005EE - problem z dostępem z innego komputera.
[MSSQL2005] Export z serwera do pliku .mdf/.ldf
[MSSQL2005]Flush dla okienka z outputem w Managment Studio
=?iso-8859-2?q?=5BD=B3ugie=5D?= javax.transaction.SystemException z hibernate.
=?ISO-8859-2?Q?Us=B3uga_pod_w2k3_nie_chce_dzia=B3a=E6_?==?ISO-8859-2?Q?z_Oracle_9?=
MSSQL2k + SSL - przerobione wszystkie manuale i nic
[MSSQL2000] Przeniesienie bazy na inny dysk
zanotowane.pldoc.pisz.plpdf.pisz.plred-hacjenda.opx.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|