SQL-tapahtumakirjatiedostot voivat kasvuunut huomattavasti ajan kuluessa, kuluttamalla levytilaa ja aiheuttaen potentiaalisesti suorituskyvyn heikkenemisen. Tämä opas näyttää, miten voit turvallisesti pienentää SQL Serverin tapahtumakirjatiedostoja tallennustilan vapauttamiseksi ja optimaalisen järjestelmän suorituskyvyn ylläpitämiseksi.
Tausta
Kun käytät SQL Serveria iBasen kanssa, luodaan kaksi SQL-tietokantaa – yksi datalle ja toinen lokille. SQL-palvelin luo tapahtumakirjatiedoston jokaista tietokantaa varten. Vaikka tämä tapahtumakirjatiedosto on sisäinen SQL Serverin komponentti, se ei vaikuta iBaselle suoraan, mutta sen koko voi kasvuunut huomattavasti ja aiheuttaa häiriöitä.
Ongelmia kuten viivästyneet iBasen vastausajat tai virhetiedotteet riittämättömästä levyn vapaasta tilasta saattavat ilmestyä, kun tapahtumakirjatiedostot ovat liian suuria. Tämä tapahtuu tyypillisesti siksi, että tietokannan palautustila on oletuksena asetettu arvoon "Koko", mikä estää automaattisen tapahtumakirjatiedoston puhdistamisen.
Ympäristö
SQL Serverin tallennus
Miten tunnistaa ongelman
Windowsissa siirry tietokantatiedostojen sisältävään kansioon. Etsi tiedostoja, joiden laajennus on .ldf, ja arvioi niiden kokoja. Jos nämä tiedostot näyttävät huomattavasti suureilta (useat gigatavua tai enemmän), harkitse vähenemisen toimenpiteitä.
Miten pienentää SQL-tapahtumakirjatiedosto
-
Vaihe 1: Avaa tietokannan ominaisuudet
SQL Server Management Studiossa hiiren oikealla painamalla tietokantaa valitse Ominaisuudet, sitten valitse Asetukset.
-
Vaihe 2: Muuta palautustilaan Yksinkertainen
Varmista, että "Palautustila" on asetettu arvoon "Yksinkertainen" (ei "Koko") ja napsauta OK.
Huomio: Tämä väliaikaisesti poistaa tapahtumakirjan varmuuskopiointin. Palautat tämän asetuksen pienentämisen jälkeen.
-
Vaihe 3: Siirry tiedostojen pienennysvalikkoon
Hiiren oikealla painamalla tietokantaa uudelleen, valitse Työt > Pienennä > Tiedostot.
-
Vaihe 4: Valitse tapahtumakirjatiedoston tyyppi
Valikkossa muuta tiedostotyypin pudotusvalikosta arvoon "Loki".
-
Vaihe 5: Aseta kohdekoko ja pienennä
Aseta tapahtumakirjatiedoston kokoon 100 Mt (tai sopiva koko tarpeidesi mukaan) ja napsauta OK.
-
Vaihe 6: Varmista kooston pienentyminen
Selaa tietokantakansiota ja tarkista
.ldf-tiedoston koko varmistaaksesi pienennyksen. -
Vaihe 7: Palauta palautustilaan Koko
Palaa tietokannan Ominaisuudet > Asetukset ja muuta "Palautustila" takaisin arvoon "Koko". Napsauta OK.
Tärkeää: Tämä vaihe palauttaa normaalit varmuuskopioinnin ja palautustoimintojen toiminnallisuuden.
Vaihtoehto: SQL-komentojen käyttö
Voit myös suorittaa nämä vaiheet SQL-komennoilla:
-- Aseta palautustilaan Yksinkertainen
ALTER DATABASE mydatabase SET RECOVERY SIMPLE
GO
-- Pienennä tapahtumakirjatiedosto
DBCC SHRINKFILE (mydatabase_Log, 1)
GO
-- Palauta palautustilaan Koko
ALTER DATABASE mydatabase SET RECOVERY FULL
GO
Varoitus: Korvaa mydatabase oikealla tietokannasi nimellä ja mydatabase_Log tapahtumakirjatiedoston loigalisella nimellä (se on näkyvissä tiedostojen pienennysvalikossa).
Yleisiä ongelmia
- Tapahtumakirja ei pienene: Varmista, että aktiivisia tapahtumia ei ole käynnissä. Voit joutua suorittamaan
CHECKPOINT-komennon pienentämisen ennen. - Tiedosto kasvaa takaisin nopeasti: Jos tapahtumakirjatiedosto tulee suureksi uudelleen pian pienentämisen jälkeen, harkitse säännöllisten tapahtumakirjan varmuuskopiointien ajoa (Koko palautustilassa) tai tutki kyselyjä, jotka aiheuttavat liian paljon tapahtumakirjatoimintaa.
- Riittämättömät käyttöoikeudet: Sinulla on tarvittava
db_owner- taisysadmin-oikeuksia palautustilojen muuttamiseksi ja tiedostojen pienentämiseksi.