1 / 26

ADATBÁZIS VERZIÓKÖVETÉSE: LIQUIBASE

ADATBÁZIS VERZIÓKÖVETÉSE: LIQUIBASE. Marics Tamás. 2013. június 20. tematika. Adatbázis verziókövetése Liquibase Liquiface. Adatbázis verziókövetése. Miért is jó ez? A referencia-adatbázis mindig felépíthető a fejlesztői gépen.

lupita
Download Presentation

ADATBÁZIS VERZIÓKÖVETÉSE: LIQUIBASE

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ADATBÁZIS VERZIÓKÖVETÉSE:LIQUIBASE • Marics Tamás 2013. június 20.

  2. tematika • Adatbázis verziókövetése • Liquibase • Liquiface

  3. Adatbázis verziókövetése • Miért is jó ez? • A referencia-adatbázis mindig felépíthető a fejlesztői gépen. • Ha találnak egy bug-ot a rendszer egy korábbi verziójában a hozzá tartozó adatbázisszerkezetet elő lehet állítani. • Nincs elkallódó SQL script.

  4. Adatbázis verziókövetése • Miért is jó ez? • Az adatbázis magától tudja mi lett futtatva, és mi nem. • Automatizálható a frissítési folyamat • Hudson-, Jenkins script írható, hogy automatikusan fusson le release-kor egy adatbázis update

  5. Liquibase • Az eszköz • Az egyik, erre a feladatra szánt eszköz a Liquibase

  6. Liquibase • Miből is áll? • Két adatbázis tábla : DATABASECHANGELOG és DATABASECHANGELOGLOCK • Egy önálló program, amit futtatni kell megadva az adatbázis elérést, vagy java API, amin ugyanezt meg tudjuk hívni kódból. • Egy changelog fájl az adatbázis-szerkezettel.

  7. Liquibase • Adatbázis-függetlenség • Alapból 15 féle adatbázis támogatott. Ez többé kevésbé igaz. • MySQL, PostgreSQL, Oracle, Sql Server(MSSQL), Sybase_Enterprise, Sybase_Anywhere, DB2, Apache_Derby, HSQL, H2, Informix, InterSystems Caché, Firebird, MaxDB / SAPDB, SQLite

  8. Liquibase • Changelog • A changelog fájl egy XML fájl, ami tartalmazza az adatbázisváltozásokat. • Ezt a fájlt lehet verziókövetni. • Lehet egymásba include-olni több changelog fájlt. • Nem csak XML lehet, már több formátum is támogatott, pl. JSON

  9. Liquibase

  10. Liquibase • Néhány change • Create table • Drop table • Add column • Drop column • Add foreign key constant • Drop foreign key constant • stb...

  11. Liquibase • Nem csak szerkezet • Lehetőség van adattartalom feltöltésére is. • LoadData, Insert

  12. Liquibase • Speciális beállítások • Precondition • Context

  13. Liquibase • Speciális beállítások • Változók

  14. Liquibase • Speciális beállítások • Undo • A beépített change-ek nagy részét vissza tudja vonni, amit nem, ahhoz írhatunk saját visszavonást<rollback>…</rollback>közé changeset-enként.

  15. Liquibase • Parancsok • UPDATE • ROLLBACK • DIFF • GENERATE CHANGELOG • SQL output

  16. Liquibase • Példa

  17. Liquibase • Java api • Létezik Java API, amit Mavennel be tudunk húzni a projektünkbe vagy letölthetjük a JAR-t. Itt ugyanazokat a dolgokat meg tudjuk tenni, amiket beírunk a changelog-ba, vagy a parancssorba. • Akár deploy-kor le lehet futtani a changelogokat az API-val.

  18. Liquibase • Liquibase hátrányok, nehézségek • Meg kell tanulni a „nyelvet” • Könnyű elgépelni dolgokat (mondjuk SQL-ben is) • az XML szerkesztgetése általában lassú • XML részleteket gyakran másolunk, és elfelejtjük néhány helyen átírni

  19. Liquiface • Liquibase GUI, Netbeans alapokon

  20. Liquiface • Mi is ez, honnan jött az ötlet? • FedEX napos projekt volt • Jó lenne vizualizálni egy changelog-ot és kattintgathatóvá tenni. • Netbeansben fejlesztünk, legyen egy Netbeans plugin. • XML-t szerkeszteni nem mindig kényelmes • Minden művelet létrehoz egy change-et

  21. Liquiface GUI

  22. Liquiface GUI

  23. Liquiface • Mit tud jelenleg? • Lehet kattintgatva alap change-eket létrehozni • Changelog fájlba menteni • Adatbázison changelog-ot futtatni • Megjeleníteni, szűrni kapcsolatokra, nevekre

  24. Liquiface • Jövőbeli tervek • Change-ek visszagörgethetősége • Külön change-ek kiválasztása • Property set szerkesztő • stb...

  25. hasznos linkek • Adatbázis verziókövetés általánosan • http://www.codinghorror.com/blog/2008/02/get-your-database-under-version-control.html • Liquibase • http://www.liquibase.org/ • Liquiface • http://www.liquiface.org/(under construction…)

  26. the end Köszönöm a figyelmet!

More Related