Tutorial Oracle XE amb Zend Server

De Cacauet Wiki
Salta a la navegació Salta a la cerca

Zend server és un servidor d'aplicacions per PHP. Porta incorporat Oracle XE (eXpress Edition) pel què ens resultarà útil pel curs.

Setup màquina virtual Zend[modifica]

  1. Descarregar VM de Zend
    http://www.zend.com/en/products/server/virtualbox
    usuari/pass = root/zend1234
  2. Podem activar la llicència del Zend, tot i que no ens cal per Oracle, anant a:
    http://localhost:10081 (cal demanar llicència temporal d'1 mes subscivint-nos).
  3. Configurar Oracle (recordar contrassenya d'admin per després!!!):
    punt 5 de http://docs.oracle.com/cd/E17781_01/install.112/e18802/toc.htm#CIHHJEHF
    o sigui:
    # /etc/init.d/oracle-xe configure
  4. Engegar/parar el servei:
    /etc/init.d/oracle-xe start
    /etc/init.d/oracle-xe stop


Instal·lar Oracle SQL Developer[modifica]

  1. Descarregar-ho de:
    http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html
  2. Instal·lem JAVA SDK (1.6.0)
    Utilitzeu el gestor de paquets yum de Red Hat Linux (és molt semblant al apt de Debian).
  3. per trobar el JAVA_HOME del JDK:
    echo $(readlink -f /usr/bin/java | sed "s:bin/java::")
    en realitat no m'ha trobat el JDK sinó un JRE.
    JRE = /usr/lib/jvm/java-6-openjdk-i386/jre/
    JDK = /usr/lib/jvm/java-1.6.0-openjdk
  4. Gravar aquest path directament a l'arxiu
    ~/.sqldeveloper/jdk
    (sense JAVA_HOME ni res de res)
  5. Instal·lar SQL Developer:
    • Versió Ubuntu: descomprimir .zip i instal·lar-lo a mà al ~/bin
    • Versió rpm:
      rpm -i sqltal.rpm
      A la 1a execució (per comanda) ens demanarà el JAVA_HOME
      guardar-lo al path indicat més amunt

De moment funciona amb la màquina local (Zend server) tot i que va molt lent. Seria millor instal·lar-ho a la màquina host i connectar-se per xarxa, però dona un error de connexió. Aviam si algú el resol.


Creem un usuari i un tablespace[modifica]

Connectar-se (des d'un terminal o des de Applications -> Oracle -> SQL Command Line):

$ sqlplus
SQL> connect SYSTEM


Crear Tablespace[modifica]

Ens anirà bé tenir un tablespace i no barrejar-ho amb el sistema principal.

# mkdir /var/oracledata
# chown oracle /var/oracledata

Amb el SQLDeveloper crear una connexió "DBA" -> Storage -> Tablespaces

Afegir nou tablespace

OJU: Cal crear un arxiu de dades (50MB) a /var/oracledata (2a pestanya del menú).

Creació d'usuari i permisos[modifica]

Crear usuari "enric" i donar-li permisos varis.

Ho podeu fer amb una d'aquestes dues opcions:

  1. SQL Developer : obriu una connexió "DBA", Security -> Users -> botó dret -> Create New
    Tingueu en compte mirar totes les pestanyes per donar els permisos sobre el tablespace que hem creat.
  2. Des del terminal sqlplus (connectant amb usuari SYSTEM):
SQL> CREATE USER enric IDENTIFIED BY "enric123";
SQL> GRANT CONNECT TO enric;
SQL> GRANT CREATE_ TABLE TO enric;
SQL> GRANT CREATE TYPE TO enric;
SQL> ALTER USER enric DEFAULT ROLE ALL;
SQL> CONNECT enric;

NOTA: el CREATE_ TABLE no porta el underscore (barra baixa), és un problema de la wiki.

Concedir permisos a l'usuari "enric". (OJU: També es pot fer des del SQL Developer):

SQL> ALTER USER enric QUOTA 100M ON "DADES_ENRIC";

o bé:

SQL> GRANT UNLIMITED TABLESPACE TO enric;

Posem l'usuari "enric" que per defecte utilitzi el tablespace que acabem de crear:

SQL> ALTER USER enric DEFAULT TABLESPACE "DADES_ENRIC" TEMPORARY TABLESPACE "TEMP" ACCOUNT UNLOCK;

...i per fi podem crear coses amb l'usuari "enric"!!

Trucs Oracle[modifica]

Llistat de taules:

SQL> SELECT TABLE_NAME FROM TABS;

Llistat d'objectes (definició de tipus de dades, etc.):

SQL> SELECT object_type,object_name FROM user_objects;