ugrás a tartalomhoz

A PostgreSQL 8 adatbáziskezelő újdonságai és telepítése Windowsra

Granc Róbert · 2005. Jan. 25. (K), 22.00
A PostgreSQL 8 adatbáziskezelő újdonságai és telepítése Windowsra
Windowsos fejlesztők közül sajnálatos módon relatíve kevesen ismerik az egyik legjobb szabad forrású adatbáziskezelőt, a PostgreSQL-t. Ennek első és legfontosabb oka, hogy egészen mostanáig mostohán kezelte ezt a platformot, csak körülményesen, külön futtatókörnyezet (a Cygwin) telepítésével volt futtatható. Ez szerencsére a 8.0 változat első bétáinak megjelenésével megváltozott: elkészültek az első natív, valóban windows-os környezetre készült telepítőcsomagok is. Cikkünkben, melyet Felhővel együtt készítettünk, először áttekintjük az újdonságokat, majd egy Windows alatti telepítést nézünk végig.

Az újdonságok összefoglalása

Natív Windows verzió

Ez az első verzió, ami natívan képes windows alatt futni szerverként. A PostgreSQL 8 az NT alapú verziókat támogatja, ezek a Windows 2000, az XP és a Windows 2003. Bár a windows-os verzió is kellőképpen tesztelt, a fejlesztők felhívják a figyelmünket, hogy ezen verzió mögött még nincs ott a több éves, éles környezetben való használat. Különböző unix emulációs rétegek használatával korábban is volt lehetőségünk Windows alatt futtatni PostgreSQL-t, illetve voltak fizetős natív windows-os portok is, de ezek teljesítményben és stabilitásban elmaradtak a unixos verziótól.

Mentési pontok/egymásba ágyazott tranzakciók

Ezen új funkció segítségével komplexebb tranzakciókat valósíthatunk meg, ami nagyon hasznos lehet üzleti alkalmazások fejlesztőinek. Lehetőségünk van a tranzakció során úgynevezett mentési pontokat (savepoints) elhelyeznünk. Ha ezt követően hiba keletkezik, akkor nem a tranzakció elejéig kell visszagörgetni az elvégzett módosításokat, hanem csak a legutóbbi mentési pontig. Ezzel hosszú tranzakciók esetén sok időt spórolhatunk meg, jelentős teljesítménynövekedést érhetünk el.

Időpillanat-helyreállítás

Point-In-Time Recovery: a PostgreSQL minden az adatbázist érintő változást loggol egy úgynevezett write ahead logba (WAL). Ez eredetileg biztonsági célokat szolgált, ha valamilyen gond történik az adatbázissal, akkor a WAL alapján a PostgreSQL képes helyreállítani az adatbázis fájlokat. Az új verzióban azonban lehetőségünk van mentési célra is felhasználni ezt, ami lehetővé tesz egy folyamatos, rugalmasabb mentési stratégia kidolgozását a hosszas, x időközönkénti teljes mentésekkel szemben. Például megtehetjük azt is, hogy elhelyezünk egy másik gépen egy teljes mentést az adatbázisunk pillanatnyi állapotáról, majd ezt folyamatosan "etetjük" a másik gépen keletkező WAL logokkal, így az eredeti adatbázissal folyamatosan (szinte) teljesen megegyező adatbázist kapunk, illetve egy alap mentés és az azóta keletkezett WAL logok alapján visszatérhetünk az adatbázis tetszőleges időpontbeli állapotához.

Táblaterek

A 8-as verzióban lehetőségünk van táblaterek (tablespaces) létrehozására. Minden egyes táblatérhez kijelölünk egy helyet a fájlrendszerben. Ezt követően táblák, indexek és adatbázisok létrehozásakor lehetőségünk van meghatározni, hogy az adott objektum mely táblatérben jöjjön létre. Ez több szempontból is nagyon hasznos lehet. Előfordulhat például, hogy egy adatbázis "kihízza" azt a partíciót, melyen létrehoztuk, ezáltal nem tudnánk tovább bővíteni. Ilyenkor létrehozunk egy táblateret egy másik partíción, és ide helyezünk át/hozunk létre adatbázis objektumokat. Vagy megtehetjük azt is, hogy az adattáblákat a biztonságosabb, míg az indexeket a kevésbé biztonságos meghajtón hozzuk létre, hiszen ezek könnyen újra generálhatóak.
A táblaterek másik fontos felhasználási területe a teljesítmény optimalizáció. Például megtehetjük, hogy a gyakran használt táblákat, indexeket gyorsabb meghajtóra helyezzük, sőt indexek esetén jó megoldás lehet az is, ha azokat egy memóriában létrehozott meghajtón hozzuk létre.

Javított pufferkezelés, CHECKPOINT, VACUUM

Ebben a verzióban a lemez cache tartalmának cseréje az Adaptive Replacement Cache algoritmus alapján történik, mely jobb memória és I/O használatot eredményez, csökken a lemezolvasások száma.
Az új háttéríró folyamat és a vákuum késleltetési lehetőség jobban tervezhető terhelést tesz lehetővé és lényegesen elfogadhatóbb teljesítményt eredményez nagy terhelés esetén.

Továbbfejlesztett DDL lehetőségek

Az új verzióban az ALTER TABLE utasítás segítségével lehetőségünk van egy oszlop adat típusának megváltoztatására. Ez jól jöhet a fejlesztés során, ahol még alapos tervezést követően is viszonylag gyakran szükségünk lehet erre. Különösen hasznos, hogy a USING kulcsszó használatával lehetőségünk van a módosítandó oszlop aktuális tartalmának felhasználására a módosítást követő tartalom megállapításában. Ezenkívül lehetőségünk van bármely objektum tulajdonosának megváltoztatására.

Új lehetőségek függvények írásakor

Aki már írt függvényt PostgreSQL alá, az tudja, hogy milyen bosszantó, hogy azt egy szöveg konstansként kell megadni (idézőjel között), ami azt eredményezi, hogy a benne szereplő összes idézőjelet meg kell védeni. Ezt megkönnyítendő a 8-as verzióban bevezetésre kerül egy új szöveg konstans megadási forma is: a szöveghatároló a dollár jel.
Lehetőségünk van a függvények paramétereinek egyből nevet adnunk.
Mostantól fogva lehetőségünk van kivételkezelésre a PL/pqSQL nyelvben írt funkciók esetén EXCEPTION blokkok alkalmazásával.

Új PL/Perl verzió

Mostantól a plperl is teljes értékű tárolt eljárás nyelv lett. Lehetőségünk van triggereket írni plperlben, lekérdezéseket futtatni benne. Mostantól ezen függvények is képesek rekordokat illetve rekordok halmazát visszaadni. Ezenkívül lehetőségünk van globális adatok használatára, melyek tartalma megmarad az egyes függvényhívások között egy adott adatbázis session ideje alatt.

CSV támogatás a COPY parancsban

A COPY parancs már korábban is támogatta a CSV adatformátumot, de az új verzióban lehetőségünk van néhány plusz opció használatára is, melyek használatával rugalmasabbá válik az adatok importálása, exportálása.

pg_dump és pg_restore nagygenerál

Alapos átíráson esett keresztül a fenti két program, melynek eredménye, hogy lényegesen csökkent a különböző verziók közötti adatmentések problémáinak valószínûsége.

Logolás

Lehetőségünk van a loggolás folyamatának finomabb hangolására, például automatikus log állomány rotáció beállítására. A log formátum is sokkal jobban finomhangolható mint ezelőtt, ide tartozik a beállítható sor-prefix, adott típusú SQL kifejezések logolása és kapcsolat bontások logolása.

Optimalizáló fejlesztések

A lekérdezés optimalizáló és végrehajtó mostantól használni fogja a kompatibilis adattípusokra készített indexeket, amivel nagyban csökken az explicit típuskényszerítések száma konstans értékeken. Az új verzió fejleszt az index használaton is, jobb optimalizációt nyújt az OR műveletekhez, fejleszt az ANALYZE parancs mintavételén, a TRUNCATE is gyorsabb, és jobban generálódnak a lekérdezések tervei (prepared statement) valamint rengeteg apróbb fejlesztés.

Letöltés


A windows-os telepítő készítése egy külön projekt témája a PostgreSQL keretein belül, ám a bétákkal ellentétben a végleges nyolcas kiadás nem csak a projekt saját honlapjáról tölthető le, hanem minden hivatalos PostgreSQL tükörkiszolgálóról, mint a többi platform telepítőcsomagja is. A 17.5 MB méretű postgresql-8.0.zip fájl zip tömörítésben érhető el, mert az első verziók esetén számos gond volt az .msi fájlok letöltésével, a zip archívum pedig tartalmaz egy ellenőrző számsorozatot, így könnyen megállapítható, hogy hibátlanul sikerült-e a letöltés.

Telepítés

A letöltött zip archívumból kicsomagolt két .msi fájl bármelyikét elindíthatjuk a telepítéshez, amely magyar nyelven egyelőre még nem kommunikál, bár az angol mellett öt másik nyelvet ismer:

Nyelv választása - egyelõre magyar nélkül



A "Start" gombra kattintás után a készítők figyelmeztetéseivel nézünk szembe, amelyek közül a legfontosabb talán az, hogy míg a PostgreSQL 8 maga mind FAT, mind NTFS meghajtókra telepíthető, addig az adatbázisok CSAKIS NTFS fájlrendszeren tárolhatóak, mivel az lehetőséget nyújt baleset (áramkimaradás, lemezhiba, stb.) esetén az adatok valamilyen szintû helyreállítására, valamint hogy szintén biztonsági okokból a kiszolgáló NEM futtatható adminisztratív jogokkal rendelkező felhasználó programjaként.

Biztonsági figyelmeztetés jó elõre



A telepítő egyebek mellett a (külön is letölthető) pgAdmin III programot és a különböző meghajtóprogramokat (mint ODBC, JDBC) is tartalmazza:

Telepítendõ összetevõk kijelölése



Kiválaszthatjuk, hogy szolgáltatásként fusson-e az adatbáziskiszolgáló (ez ajánlott opció, valamint egyike a nyolcas verzió újdonságainak), valamint a kiszolgáló futtatására kijelölt felhasználó adatai, amelyet a telepítő létre is hozhat a rendszerben:

A PostgreSQL saját felhasználói jogaival indul



A következő képernyőn a "szokásos" adatbázisjellemzők állíthatóak be: a kiszolgáló portja, a nyelvi beállítások, valamint az alapértelmezett felhasználó, a "superuser" neve és jelszava:

A kiszolgáló és az adminisztrátor beállítása



A telepítő által is tartalmazott PL/pgsql procedurális nyelv támogatása alapértelmezetten elérhető, de emellett számos más is bekapcsolható külön, többek között a Perl, Tcl/Tk, PHP és egyéb nyelvek:

Procedurális nyelvek telepítése



Több tucat többé-kevésbé ismert kiegészítő telepítése állítható be igény szerint:

Számos modulból válogathatunk



A telepítés végeztével még feliratkozhatunk a pgsql-announce levelezési listára, amelyen a PostgreSQL frissítéseiről, újdonságairól kapunk információkat:

A telepítés végén feliratkozhatunk a levlistára



Az új telepítő egyik újdonsága a szabályos programbejegyzés a Start Menüben. Itt találunk parancsikont a szolgáltatás indításához és leállításához, valamint a beállítások megváltoztatása után a konfiguráció újratöltéséhez is.

Az új bejegyzések a Start Menüben



A vezérlőpult "Adminisztratív eszközök" részében ellenőrizhetjük az adatbáziskiszolgáló szolgáltatás futását.

Ellenõrizve: fut a kiszolgáló szolgáltatás



A Start Menü bejegyzései között indíthatjuk a pgAdmin III programot is, amely az egyik legátfogóbb és legkényelmesebb eszköz a PostgreSQL kiszolgáló kezeléséhez.

Ismét visszaköszön az elefánt



A pgAdmin számos beállítást, valamint az adatbázisok objektumait teszi áttekinthetővé és szerkeszthetővé. A bal oldali keret mutatja a kapcsolt kiszolgálókat, és az általuk tartalmazott objetumokat. A jobb oldali felső keret a bal oldali fában kiválasztott objektum tulajdonságait, míg a jobb alsó keret a visszafejtett SQL szkriptet tartalmazza. Ez a szkript kimásolható más programokban történő felhasználáshoz, elmenthető, vagy akár sablonként is használható.

A kiszolgáló számos jellemzõje áttekinthetõ



'postgres' felhasználó

A PostgreSQL telepítő által létrehozott, (alapértelmezésként) "postgres" nevű felhasználó csak az adatbáziskiszolgáló szolgáltatás futtatására szolgál: nem tartozik semmilyen local groupba, le van tiltva a bejelentkezése, log-on-as-service joga van, valamint a PostgreSQL adatbázisok írása/olvasása, és semmi más.

A PHP és a PostgreSQL

A PHP konfigurálása ugyanolyan egyszerű, mint MySQL esetében (PHP 4 esetén legalábbis majdnem olyan egyszerű, PHP 5 esetén pedig egyszerűbb): a php.ini fájlban vegyük ki a (sor feldolgozásának kihagyását jelentő) pontosvesszőt az extension=php_pgsql.dll sor elől. Ha modulként fut a PHP, ne felejtsük el újraindítani a webkiszolgálót!
A közkedvelt PhpMyAdminhoz hasonló eszköz a PostgreSQL kiszolgáló kezeléséhez is készült: a PhpPgAdmin persze a két kiszolgáló számos eltérésének megfelelően sok mindenben különbözik a PhpMyAdmintól. (Ezt természetesen nem hátrányának vagy előnyének rovom fel, csupán felhívom a másik szkript használóinak figyelmét, hogy a felület nem lesz annyira otthonos nekik.)
A phpPgAdmin letöltése és kicsomagolása után a conf könyvtár config.inc.php fájlját kell szerkesztenünk. Először a host változót állítsuk be saját gépünkre, azaz általában localhostra:
$conf['servers'][0]['host'] = 'localhost';
Ezután a telepítési útvonalat adjuk meg az adatbázisdump eszközök használatához:
$conf['servers'][0]['pg_dump_path'] = 'c:\Program Files\PostgreSQL\8.0\bin\pg_dump.exe';
$conf['servers'][0]['pg_dumpall_path'] = 'c:\Program Files\PostgreSQL\8.0\bin\pg_dumpall.exe';
Még egy fontos változtatást kell eszközölnünk, amíg nem hozunk létre egy új felhasználót az alapértelmezett postgres mellett. Az extra_login_security változó bekapcsolásakor letiltja a jelszó nélküli, illetve a pgsql, postgres, root, administrator felhasználónevű belépést a phpPgAdminba.
$conf['extra_login_security'] = false;
 
Granc Róbert arcképe
Granc Róbert
Weblabor szerkesztő. 1995-ben kezdett foglalkozni a webbel, 2001-ben pedig a dinamikus weboldalakra koncentrált, és a PHP lett a kedvence.
Szabad idejében a COD4-et nyomja, legalábbis amikor négy gyereke épp mással van elfoglalva és nem vele.
1

tetszik

Dohány Tamás · 2005. Jan. 25. (K), 23.45
Tetszik a cikk, főleg az újdonságok összefoglalása! Köszi Felhő!

A Windowsos megjelenés apropóján talán jobban napirendre kerülhet a kisebb vállalati mysql alapú adatbázisok úrjagondolása, hiszen pgsql látványosan többet nyújt a biztonság és mentés terén.

[ dtamas ]
2

MySQL vs. PostgreSQL :)

Bártházi András · 2005. Jan. 25. (K), 23.56
Remélem nem lesz belőle flame. ;)

A végkövetkeztetéssel nagyonis egyetértek, de szerintem pont biztonság és mentés terén a MySQL is hasonló képességekkel rendelkezik (persze kérdés, mit értünk biztonság és mentés alatt).

A MySQL képes (lehetőséget ad) megsérült tábláinak javítására, illetve ha egy tábla megsérül, csak az az egy tábla sérül meg, mivel külön fájlban vannak a táblák. Ez azért ad egy alap biztonságot. Ha biztonság alatt hozzáférések szabályozását és hasonlót értünk, akkor pedig tudtommal ugyanott vannak. A mentés terén a MySQL replikációra ad lehetőséget, ami nagyon hasonlóan működik, mint a változások listája itt a PostgreSQL-nél. Alap mentések, dump és import lehetőség mind a két esetben adott.

A PostgreSQL viszont számos dologban többet nyújt, sokkal többet. Ezeket nem sorolnám fel, mert nem férne ide ki. ;)

Egyébként az honnan tudtad, hogy az újdonságok részt Felhő, a telepítést pedig Robi írta? ;)

-boogie-
3

no flame

Dohány Tamás · 2005. Jan. 26. (Sze), 00.23
Megérzés volt, ezek szerint bejött... ;)
Robi írta az apache/mysql telepítéssel kapcsolatos cikkeket eddig, ezért gondoltam hogy ez lehetett az elosztás. Szvsz látványosan két részből áll a cikk.

Azért arra kíváncsi lennék, hogy akkor szerinted miben nyújt többet a pgsql? Írhatsz e-mailben is, ha ide nem férne ki... :))

[ dtamas ]
4

MySQL vs. PostgreSQL 2

Bártházi András · 2005. Jan. 26. (Sze), 02.22
A MySQL egyelőre elég gyenge tranzakciókezelésben, triggerekben, pl/sql és egyéb nyelvekben, idegen kulcsok helyes kezelésében, view-kban, stb. Nem túl régóta és amikor utoljára láttam, akkor még nem is 100% tudta a beágyazott selectet, s valószínűleg a szerverek többségén még régi, 3.23, vagy 4.0 szériák vannak (bár ezen a helyeken lehet, hogy PostgreSQL sincs, vagy nagyon régi van).

A MySQL viszont erős ismertségében, elterjedtségében, egyszerűségében, telepíthetőségében (ez ugye most megváltozott talán), továbbá számos könyv, leírás létezik hozzá. Nagyon jó a szoftver támogatottsága (kliens oldali szoftverek), van hozzá multiplatformos "gyári" adminisztrációt lehetővé tevő kliensprogram. Számos webes problémára egyszerűsége ellenére megoldást nyújt.

Hirtelen ennyi. Ha ezek a kijelentések talán nem is 100% pontosak, a többségük biztosan az.

-boogie-
6

szerintem web-es "problemara"

zedorg · 2005. Jan. 26. (Sze), 03.08
szerintem web-es "problemara" ahol nagyreszt kis adatbazisok vannak kezeles alatt, legalabbis az a gyakoribb, nem a tobb 100ezer (millio) soros tablak, ott szerintem az sqlite sokkal inkabb megoldas, nem csak egyszerusegeben de, az hogy tudasaban is tobbet nyujt 1 mysql-nel.
Ha a "kezdok" sqlite-ot hasznalnanak inkabb, es a tarhelyekent preferalnak a tamogatotsagat, lehet az egyszeri scriptelok is jobban jarnanak, normalis sql-t kapnanak/hasznalhatnanak. Nameg a szerver uzemeltetok is, hiszen kissebb lenne a load :)
5

Postgresql viszont abban telj

zedorg · 2005. Jan. 26. (Sze), 03.03
Postgresql viszont abban teljesen mas, hogy nem doglik meg, nincs mit javitani :) Ha elhal valami, az 99,99999% hogy valamilyen hw hiba, vagy rendszer hiba. De meg ekkor is sokkal inkabb helyreallithato ha maga a cucc megmaradt meg amugy :)
szvsz mysql aka win (omlik omlik majd szedegeti valaki), pg aka *nix (mukodik, az a dolga).
7

pgsql install

Anonymous · 2005. Jan. 30. (V), 17.27
Ha valaki paranoias Windows-on es kikcsapocslja a "Felhasznalovaltas" mogotti szerviz-eket, ne csodalkozzon, hogy nem megy fel az install,ugyanis erre epit... :-D Hagyd is bekapcsolva, mert ez az "atszemelyesites" kell ahhoz, hogy barki loginel, o "atjelenkezik" es futtatja a pgsql user neveben magat. Szoval ez van... Vhogy irjatok bele mindezt, vagy ne, csak en vagyok paranoias ? Ti nem ? Miert nem ? Senki sem az csak en ? :-DDDDDDDD
P.
8

eletemben nem gondolnam, hogy

zedorg · 2005. Feb. 8. (K), 10.14
eletemben nem gondolnam, hogy ezt ki kellene kapcsolni ;) Igaz win-rol van szo, de ez kb olyan, mintha letiltanad sudo-t ;))
9

Nem tudom elérni a megadott linket!

x081 · 2005. Jún. 5. (V), 23.46
A cikk olvasása közben próbáltam letölteni az installt, de nem műkszik a link...
http://www.postgresql.org/ftp/win32/
10

Az új verzióval változtattak rajta

Granc Róbert · 2005. Jún. 6. (H), 09.24
Javítom a cikkben is, jelen pillanatban a legfrissebb a
http://www.postgresql.org/ftp/binary/v8.0.3/win32/

/Robi
11

Újabb frissítés

Anonymous · 2005. Okt. 20. (Cs), 16.53
Kijött a 8.0.4-es javítóverzió:
http://www.postgresql.org/ftp/binary/v8.0.4/win32/

Szinkopa
12

Felület

LordAo · 2006. Feb. 22. (Sze), 00.27
Nekem egy igen buta looser kérdésem lenne...
Az egyik képen az admin felület magyar nyelvű volt... Ezt hogyan tudom beállítani? :)
13

PGAdmin

Granc Róbert · 2006. Feb. 22. (Sze), 10.44
Az a PGAdmin, ami már régóta magyar.

Le kell töltened a http://www.pgadmin.org/ címről, telepíteni, majd (ha nem magyarként települ és indul), a Tools / Options menü "General" füle alatt lehet nyelvet választani.

/robi
15

Telepitési probléma

Kuzmanzs · 2008. Jan. 11. (P), 09.45
Szia

Probáltam telepiteni a 8.3 és a 8.0 -as telepitőt, de leakad a telepítő a következő hibával:
Failed to run initdb:1!

Logfile:
The files belonging to this database system will be owned by user "SYSTEM".
This user must also own the server process.

The database cluster will be initialized with locale C.

creating directory D:/Program Files/PostgreSQL/8.3-dev1/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers/max_fsm_pages ... 32MB/204800
creating configuration files ... ok
creating template1 database in D:/Program Files/PostgreSQL/8.3-dev1/data/base/1 ... ok
initializing pg_authid ... ok
setting password ... ok
initializing dependencies ... ok
creating system views ... ok
loading system objects' descriptions ... ok
creating conversions ... child process exited with exit code 1
initdb: removing data directory "D:/Program Files/PostgreSQL/8.3-dev1/data"

Zsolt
14

Linux utáni lét

Anonymous · 2006. Május. 7. (V), 09.00
Nos ismét Win került az asztali gépemre és erre is felkerült a postgres. Fontos, hogy tudjátok szerintem a postgres konzolja (TAB-os kiegyszítés, nagyon frankó help funkciók) az egyik leghasználhatóbb. Ebből a szempontból a mysql a kert végében sincs (SZVSZ)

Tapasztalatom:
- a konzolos felületén (psql postgres) a TAB -os kiegészítési lehetőség rettenetesen hiányzik. Felpakoltam a BASH-t winre, de így ssem megy ez a TAB -os kiegészítés.

- ha csinálok egy teljes UNICODE adatbázist és konzolból esek neki, akkor ott is előjön az ha adok a postgresnek egy parancsot: \dt (mutasd meg a táblákat), akkor "illegal UTF-8 ...." hibát kapok (mint linuxban, de ott export paranccsal megadtam a környezeti változókat és a konzolt átállítottam UTF-8 -ra és ment gond nélkül).

Ezekkel találkoztatok már és van rá valamiféle megoldásotok vagy valami RTFM?
Sajnos még nem volt igazán idő túrkálni.
16

Ez olyan, mint az Access,

rendszereto · 2011. Szep. 6. (K), 22.08
Ez olyan, mint az Access, vagy ez másra való?
Mert a szerver szó megzavar, mintha ez egy kiszolgáló lenne, amire épül pl. egy weboldal, mint a mySQL esetében.
17

Access?

Poetro · 2011. Szep. 6. (K), 22.29
Hogy jön ide az Access? Az Access egy felület és egy hozzá tartozó mdb adatbázis. Az Access-t tudod programozni, hogyan nézzen ki az adminisztrációs felület, azt teljesen testre tudod szabni, sőt, teljes alkalmazásokat tudsz benne fejleszteni olyan grafikus felülettel, amilyet te szeretnél. A PostgreSQL pedig egy relációs adatbázis motor, amit szintén tudsz programozni, de nem ad semmilyen felületet. Létezik hozzá mindenfajta admin felület, konzol stb. de azok nem képezik a rendszer magját, mint az Access esetében. Inkább úgy gondolj rá, mint a MySQL, csak annál többet tud.
18

Na, ettől féltem... Nekem

rendszereto · 2011. Szep. 6. (K), 22.46
Na, ettől féltem...

Nekem egy olyan egyszerű kéne, mint az Access, viszont az Office otthoni verziójában nincs meg, amit 16 ezerért adtak pár éve. Külön megvásárolható 40 ezer körül. Na köszönöm... vagy a prof verziós Office-t 180 körül. Na ezt meg felejtse el szerintem mindenki. Túl van értékelve.

Kipróbáltam a LibreOffice Base nevű programját, de már az elején állandóan kiakadt programhibákkal.

A közösségtől megkérdeztem mi a fene, majd valaki írta, hogy csak 2 db személy fejleszti és nem valószínű, hogy ebbe nagyon belefektetnének, a Write a fő csapásirány, adatbázist kevesen használnak.

Na ezért kezdtem keresgélni adatbázis kezelőket.

Az Oracle szintén drága és nem is ismerem, csak annyit tudok róla, hogy túl sokat tud :-)

Akkor van a Firebird, amit telepítettem, de az lehet, mint a Postgre, mert semmilyen felületet nem adott.

De akkor hogyan fejlesztenek Postgre, Firebird, vagy mySQL adatbázisokat? Beírják a kódot a phpmysql programban, vagy hogy? A Drupal és hasonlók is használják, de hogyan készül az adatbázis, a táblák szerkezete, ha nincs olyan egyszerű felület hozzá, mint az Access?

Vagy megcsinálják Access-ben és az adatbázis hozzácsatolják?
19

admin

Poetro · 2011. Szep. 6. (K), 22.56
Mint mondtam mindhez van jobb / rosszabb felület, amivel meg lehet tervezni az adatbázist. Ha valaki ért hozzá, nem kell neki felület sem, hogy megtervezze, egyszerűen beírja az SQL parancsokat az adatbázismotor parancssorába, vagy használja a programozási nyelve által nyújtott alkalmazásokat, amik szintén megteszik ezt (például ilyen a phpPgAdmin). De természetesen az OOo illetve Libre Office Base alkalmazásával is lehet hozzá kapcsolódni, és abban is meg lehet tervezni az adatbázist (én még nem próbáltam, csak tudom, hogy erre való). Természetesen más ingyenes és fizetős felületek is vannak az adatbázis adminisztrálására.

Az hogy mennyibe kerül az Access, és hogy ez sok vagy kevés, az relatív. Egy MySQL Standard Edition éves költsége 2000 USD, ez pedig jóval több, mint akár a 40 akár a 180e HUF, és akkor még nem is beszéltünk a MySQL Enterprise Edition 4000 USD költségéről.

Ha asztali alkalmazást akarsz fejleszteni, olcsón Windows alá, akkor lehet mégse olyan sok az a pénz amit a Microsoft kér?
20

Miért kell fizetni a

rendszereto · 2011. Szep. 7. (Sze), 11.38
Miért kell fizetni a mySQL-ért, ha ingyen is használható? Vagy az egy nagyobb tudású verzió?

Pl. a tárhelyszolgáltatók sem ingyen használják?
21

Változatok, licencek

Poetro · 2011. Szep. 7. (Sze), 12.11
A MySQL-nek több változata van, azoknak más a licencelése mint a Community változatnak. Amennyiben a Community verziót használod akkor az ingyenes, de a többi változat tud sokkal többet is, illetve más a szoftver támogatása. Ha a MySQL-t használó termékedet GPL licenc alatt értékesíted, akkor semmi gond, hozzá rakhatod ingyen is, de ekkor számolni kell a GPL licenc következményeivel. Ha nem tudod mit takar a GPL licenc, ajánlom olvasd el. Van lehetőség más FOSS licenc alapján is használni a terméket, de ennek is megvannak a következményei, illetve a korlátozásai, hogy mit is tehetsz a termékkel. Legjobb, ha egy jogász ismerősöddel tárgyalod meg ezeket a kérdéseket, amennyiben szoftvert szeretnél értékesíteni, amely a MySQL-t használja, mint hozzá csomagolt termék (például dobozos asztali alkalmazás).

Az, hogy az egyes szolgáltatók hogyan, és milyen licenceléssel használják a MySQL-t azt csak ők tudják, de a legtöbb esetben a GPL licencű Community változatot használják. Ennek az az oka, hogy ingyenes, nem módosítják a szolgáltatók a MySQL kódját, nem rejtik el, hogy azt használnak.