2.2. Adatbázis létrehozása és feltöltése
A portál működéséhez szükséges egy adatbázis, ahol a portál és a portletek adatai kerülnek elmentésre. A JPA jóvoltából szinte tetszőleges (JPA által támogatott) adatbázis motor használható a portálhoz, jobban tesztelve a MySQL és a PostgreSQL adatbázis volt, s elsődlegesen a PostgreSQL motor van használatban, a fejlesztések ezen kerülnek kipróbálásra.
2.2.1. A PostgreSQL adatbázis telepítése
Az adatbázis telepítését nem részletezném, aki csatlakozni szeretne a portál fejlesztői közösségbe, legyen képes egy adatbázis motort feltelepíteni a gépére...
2.2.2. A PostgreSQL beállítása
Lépjünk át a PostgreSQL-hez tartozó felhasználóra (postgres vagy pgsql szokott lenni), majd a következő parancsok lesznek szükségesek:
postgres@laptop:~> createuser -P javaforum20 Enter password for new role: Enter it again: Shall the new role be a superuser? (y/n) n Shall the new role be allowed to create databases? (y/n) y Shall the new role be allowed to create more new roles? (y/n) n postgres@laptop:~> createdb -E UTF-8 -O javaforum20 javaforum20
Ezzel létrehoztunk egy javaforum20 nevű felhasználót, illetve egy javaforum20 adatbázist, amelynek az előbbi felhasználó a tulajdonosa. A feltelepített és elindított PostgreSQL adatbázis megfelelő működéséhez két beállítást kell elvégeznünk, hogy a következő fejezetben részletezett alkalmazás szerver használni is tudja a most létrehozott adatbázist és felhasználót. Egyrészt engednünk kell a hozzáférést a létrehozott adatbázishoz és felhasználóhóz:
host javaforum20 javaforum20 127.0.0.1/32 password
Illetve engedünk kell a TCP/IP forgalmat az 5432 porton:
listen_addresses = 'localhost' # what IP address(es) to listen on; port = 5432 # (change requires restart)
Ezek a PostgreSQL újraindítását követően lépnek érvénybe, ezért ezt tegyük meg.
2.2.3. Az adatbázis feltöltése adatokkal
Töltsük le a minta adatbázist:
postgres@laptop:~> wget http://doc.javaforum.hu/javaforum20b2.2.0_lite.sql.bz2 postgres@laptop:~> bzip2 -d javaforum20b2.2.0_lite.sql.bz2 postgres@laptop:~> psql -h localhost -U javaforum20 javaforum20 Password for user javaforum20: Welcome to psql 8.3.8, the PostgreSQL interactive terminal. Type: \copyright for distribution terms \h for help with SQL commands \? for help with psql commands \g or terminate with semicolon to execute query \q to quit javaforum20=> \i javaforum20b211_lite.sql SET SET SET SET SET SET SET SET CREATE TABLE ALTER TABLE CREATE TABLE [...] ALTER TABLE ALTER TABLE psql:javaforum20b211_lite.sql:19486: WARNING: no privileges could be revoked for "public" REVOKE psql:javaforum20b211_lite.sql:19487: WARNING: no privileges could be revoked for "public" REVOKE psql:javaforum20b211_lite.sql:19488: WARNING: no privileges were granted for "public" GRANT psql:javaforum20b211_lite.sql:19489: WARNING: no privileges were granted for "public" GRANT javaforum20=> SELECT id,name FROM domain_table; id | name ----+--------------------- 1 | www.javaforum.local 2 | javaforum.local (2 rows) javaforum20=> \q