Ve snaze reagovat na potřeby vývojářských komunit oznámila společnost Oracle všeobecnou dostupnost produktu Oracle Database 10g Express Edition (Oracle Database XE), bezplatné základní edice světově proslulé Oracle Database. Od debutu betaverze v říjnu 2005 Oracle Database XE získala silnou globální podporu ze strany vývojářů, studentů i poskytovatelů řešení, kteří ji používají při vývoji databázových aplikací pro platformy Windows a Linux. Díky Oracle XE je nyní instalace Oracle databáze hračkou.
Po stažení deb souboru následovalo pouze:
# sudo dpkg -i oracle-xe-universal_10.2.0.1-1.0_i386.deb # sudo /etc/init.d/oracle-xe configure Oracle Database 10g Express Edition Configuration ------------------------------------------------- This will configure on-boot properties of Oracle Database 10g Express Edition. The following questions will determine whether the database should be starting upon system boot, the ports it will use, and the passwords that will be used for database accounts. Press <Enter> to accept the defaults. Ctrl-C will abort. Specify the HTTP port that will be used for Oracle Application Express [8080]: Specify a port that will be used for the database listener [1521]: Specify a password to be used for database accounts. Note that the same password will be used for SYS and SYSTEM. Oracle recommends the use of different passwords for each database account. This can be done after initial configuration: Confirm the password: Do you want Oracle Database 10g Express Edition to be started on boot (y/n) [y]:n Starting Oracle Net Listener...Done Configuring Database...Done Starting Oracle Database 10g Express Edition Instance...Done Installation Completed Successfully. To access the Database Home Page go to "http://127.0.0.1:8080/apex"
Oracle XE má několik omezení:
V KDE menu se mi objevila nová skupina Oracle Database 10g Express Edition, kde mohu startovat a zastavovat server, přihlašovat se na administrativní rozhraní a také číst si v dokumentaci a pěkném tutoriálu. Oracle XE obsahuje také webové prostředí HTML DB (nyní Oracle Application Express – APEX) ve verzi 2.1, se kterým se dá velmi rychle navrhovat databáze a webové rozhraní k ní. Existuje již verze APEX 3.0, která má hodně nových věcí, proto ihned doporučuji instalaci.
Ještě než se pustíte do instalace, doporučuji nastavit v administrativním rozhraní APEXu 2.1 omezení paměťi na rozumnou hodnotu. Po instalaci má Oracle nastaveno cca 300-500 MB podle velikost vaší RAM. Já nastavil 250 MB na data a 64 MB na session. Maximálně lze nastavit 1 GB – to je omezení Oracle XE verze. Také si všimněte, že APEX sám zabírá v databázi slušný prostor, cca 400 MB a po instalaci APEX 3.0 čekejte, že se to zvdojnásobí. Prakticky tedy pro svoje data můžete počítat s 3 GB prostoru v databázi. Není to ani málo, ani moc (když uvážíme, že se do toho musejí vejít věci kolem jako jsou indexy a podobně).
Stáhněte apex-verze.zip do například /temp/apexinst a rozbalte. Vytvoří se vám podadresář apex, do něj přejděte. Nyní (jako root):
# passwd oracle # pokud ještě nemáte nastaveno heslo k tomuto systémovému uživateli # su -l oracle # source /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh # cd /temp/apexinst # sqlplus / as sysdba SQL> @apexins heslo SYSAUX SYSAUX TEMP /i/ SQL> @apxldimg.sql /tmp/apexinst SQL> @apxxepwd.sql nove_heslo_pro_uživatele_admin
Administrační rozhraní se nyní radikálně odlišuje od verze 2.1 a je rozděleno do dvou zón:
Z APEXu 2.1 by měl existovat workspace HR a uživatel HR s ukázkovými tabulkami. Můžete si v adminovi udělat další workspaces a do nich si wizardy naklikat nějaké ty demo aplikace případně si nějaké hotové aplikace stáhnout.
Ve verzi APEX 3.1 již není k dispozici poměrně fajn „teploměr“, který ukazuje, kolik vaše databáze momentálně saje paměti a disku (z limitů 1 GB / 4 GB). Musí se to zjišťovat bohužel ručně:
$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Fri Aug 31 22:10:20 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
SQL> select total, allocated, 100 - allocated / total * 100 percent_free from (select 5120 total, sum(bytes)/1024/1024 allocated from dba_data_files where tablespace_name != 'UNDO');
TOTAL ALLOCATED PERCENT_FREE
---------- ---------- ------------
5120 1110 78.3203125
Jak je vidět po nainstalování APEXu 3.0 mám zabráno cca 20 % celkové kapacity 4 GB – to není tak hrozné.
Důkladně projděte dokumentaci, je tam hodně informací nejen co se týká správy, ale i vývoje v APEXu. Výborná jsou také diskuzní fóra, která jsou přístupná jen když si zaregistrujete instalaci produktu Oracle XE (odkaz na fóra je ve „Start“ menu v KDE nebo ve Windows).
Vřele doporučuji se přidat do skupiny dba a soubor /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh sourcovat v bashrc. Pozor, na Ubuntu vypisuje jakási varování, tak to devnullujte.