Huom! Tämä ohjeistus koskettaa ainoastaan varmuuskopioinnin lisäpalveluiden eli Delta-backup ja Backup+ -palveluiden asiakkaita (kts. liittyvät tiedotteet Muutoksia AssisDentin tietokannan lokitaulujen sisältöön 21.8.2025, Muutoksia AssisDentin lokirekisterien vasteaikoihin 6.-21.8.2025)! Tämä ohjeistus on vain suuntaa-antava esimerkki tavasta kuinka lokitietokantojen tiedot voidaan kahdentaa. Jokainen Backup+ / Delta backup asiakas vastaa lokirivien kahdennuksesta omaan lokitietokantaansa, sillä asiakkaan ympäristöstä ja lokien käyttötavasta riippuen voi olla erilaisia tapoja toteuttaa tämä. Entteri ei millään tavalla vastaa asiakkaiden omista toteutuksista yleisten käyttöehtojen mukaisesti. Jos asiakas päättää tehdä kahdennuksen myöhemmässä vaiheessa ja tarvitsee siihen Entterin tukea on tämä erikseen sovittavaa ja laskutettavaa tuntityötä Entterin voimassa olevan hinnaston mukaisesti.
Ratkaisun kannalta olennaista on ymmärtää, että uudet lokimerkinnät tulevat jatkossa deltan mukana aivan kuten ennenkin. Ainut ero edelliseen on se, että full backupeissa kaikkia vanhoja lokeja ei enää ole mukana, ainoastaan tuoreimmat. Pyrimme säilyttämään full backupissa lokeja sellaiselta ajalta, että mahdollisiin ongelmiin keretään hyvin reagoimaan ennen niiden poistamista.
Yksi tapa toteuttaa lokien kahdennus on seuraava (skriptit ohjeen liitteenä):
Lokitietokannan luominen
- Ottakaa varmuuskopio nykyisestä lokaalista AssisDent tietokannastanne.
- Palauttakaa tämä tietokanta varmuuskopiosta kokonaan uudeksi tietokannaksi, esim. AssisDentLogs.
- Poistakaa tästä palautetusta kannasta kaikki muut taulut paitsi lokitaulut (drop-all-but-log-tables.sql).
Yllä oleva tapa on toimiva siksi, että näin lokitietokannan tauluissa on varmasti indeksejä myöten sama skeema kuin AssisDentin tietokannan lokitauluissa, mikä varmistaa rivien tehokkaan käsittelyn. Lisäksi valtavien lokimäärien siirtely esim. INSERT INTO ... SELECT metodilla ei välttämättä onnistuisi.
Uusien lokirivien varmuuskopiointi
Ajastakaa SQL Serveriin esim. aina deltan sisäänajon jälkeen ajettavaksi jobi, joka vie uudet lokirivit lokaalista AssisDent-kannasta lokitietokantaan (copy-newest-logs). Tämä skripti toimii myös silloin, kun deltan sijaan on palautettu full backup, ja toimii aina oikein vaikka viimeisimmästä lokisynkasta olisi jo pidempikin aika (kunhan kaikki puuttuvat lokirivit löytyvät lokaalista AssisDent kopiostanne).
Muita huomioita
Huom! Vaikka yllä olevat skriptit on testattu omassa ympäristössämme, emme voi ottaa vastuuta niiden ajosta teidän paikallisessa ympäristössämme. Ne on tarkoitettu siis vain tekemisen lähtökohdaksi, vaikkakin voivat toki toimia hyvin lähes sellaisenaan. Varmistattehan kuitenkin ehdottomasti, että ymmärrätte miten skriptit toimivat, ja että ajatte niitä varmasti oikeaan tietokantaan (etenkin drop-all-but-log-tables.sql ajaminen väärään tietokantaan tyhjentää sen täydellisesti).