Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

WEBSTAR CSOPORT WC S ADATBÁZIS VERZIÓKÖVETÉSE: LIQUIBASE Marics Tamás 2013. június 20.

Hasonló előadás


Az előadások a következő témára: "WEBSTAR CSOPORT WC S ADATBÁZIS VERZIÓKÖVETÉSE: LIQUIBASE Marics Tamás 2013. június 20."— Előadás másolata:

1 WEBSTAR CSOPORT WC S ADATBÁZIS VERZIÓKÖVETÉSE: LIQUIBASE Marics Tamás június 20.

2 WEBSTAR CSOPORT WC S TEMATIKA  Adatbázis verziókövetése  Liquibase  Liquiface 2/26

3 WEBSTAR CSOPORT WC S 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. 3/26

4 WEBSTAR CSOPORT WC S 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 4/26

5 WEBSTAR CSOPORT WC S LIQUIBASE  Az eszköz Az egyik, erre a feladatra szánt eszköz a Liquibase 5/26

6 WEBSTAR CSOPORT WC S 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. 6/26

7 WEBSTAR CSOPORT WC S 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 7/26

8 WEBSTAR CSOPORT WC S 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 8/26

9 WEBSTAR CSOPORT WC S LIQUIBASE 9/26

10 WEBSTAR CSOPORT WC S LIQUIBASE  Néhány change Create table Drop table Add column Drop column Add foreign key constant Drop foreign key constant stb... 10/26

11 WEBSTAR CSOPORT WC S LIQUIBASE  Nem csak szerkezet Lehetőség van adattartalom feltöltésére is. LoadData, Insert 11/26

12 WEBSTAR CSOPORT WC S LIQUIBASE  Speciális beállítások Precondition Context 12/26

13 WEBSTAR CSOPORT WC S LIQUIBASE  Speciális beállítások Változók 13/26

14 WEBSTAR CSOPORT WC S 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 … közé changeset-enként. 14/26

15 WEBSTAR CSOPORT WC S LIQUIBASE  Parancsok UPDATE ROLLBACK DIFF GENERATE CHANGELOG SQL output 15/26

16 WEBSTAR CSOPORT WC S LIQUIBASE  Példa 16/26

17 WEBSTAR CSOPORT WC S 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. 17/26

18 WEBSTAR CSOPORT WC S 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 18/26

19 WEBSTAR CSOPORT WC S LIQUIFACE  Liquibase GUI, Netbeans alapokon 19/26

20 WEBSTAR CSOPORT WC S 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 20/26

21 WEBSTAR CSOPORT WC S LIQUIFACE GUI 21/26

22 WEBSTAR CSOPORT WC S LIQUIFACE GUI 22/26

23 WEBSTAR CSOPORT WC S LIQUIFACE 23/26  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 WEBSTAR CSOPORT WC S LIQUIFACE 24/26  Jövőbeli tervek Change-ek visszagörgethetősége Külön change-ek kiválasztása Property set szerkesztő stb...

25 WEBSTAR CSOPORT WC S HASZNOS LINKEK 25/26  Adatbázis verziókövetés általánosan database-under-version-control.html  Liquibase  Liquiface (under construction…)

26 WEBSTAR CSOPORT WC S THE END 26/26 Köszönöm a figyelmet!


Letölteni ppt "WEBSTAR CSOPORT WC S ADATBÁZIS VERZIÓKÖVETÉSE: LIQUIBASE Marics Tamás 2013. június 20."

Hasonló előadás


Google Hirdetések