Installing Oracle Database XE on Debian, Ubuntu, and Kubuntu
Basat en la documentació oficial d'Oracle:
http://www.oracle.com/technology/tech/linux/install/xe-on-kubuntu.html
Oracle Database 10g Express Edition (Oracle Database XE) is an entry-level, small-footprint database based on the Oracle Database 10g Release 2 code base that's free to develop, deploy, and distribute; fast to download; and simple to administer. Oracle Database XE is a great starter database for:
- Developers working on PHP, Java, .NET, XML, and Open Source applications
- DBAs who need a free, starter database for training and deployment
- Independent Software Vendors (ISVs) and hardware vendors who want a starter database to distribute free of charge
- Educational institutions and students who need a free database for their curriculum
Aquest document és del 2005, està una mica desfasat i és d'esperar que el 2008 serà tot plegat una mica més fàcil. Tot això ve de què Oracle donava suport a Linux amb els paquets rpm de Red Hat, i tot el sistema de paquets Debian/Ubuntu és diferent.
In my day job I get to work with .rpm-based Linux distros quite a bit in the form of RHEL, SLES, and Asianux. Recently I noticed that the Oracle Database XE doc mentions support for Debian. My sum experience with this could best be described as vicarious, having never before installed Oracle on a .deb-based distro.
What follows is one man's walk through the technical steps to install the beta of Oracle Database XE on Kubuntu 5.10 Breezy, a Linux distro based on the .deb package format and KDE. The lessons learned and suggestions also apply to Debian, Ubuntu, and other .deb distros.
If you are interested in the "back story" about this journey from the various PHP developers and people who helped along the way, please read the sidebar.
Contingut
Descàrrega i instal.lació
Update (March 2006): With Oracle Database XE in production, it is even easier to install Oracle on Debian-based distros (thanks to Joel Becker).
There is now an apt-get repository up on oss.oracle.com for XE. Afegir en el repositori /etc/apt/sources.list la següent línia:
deb http://oss.oracle.com/debian unstable main non-free
I aleshores...
$ wget http://oss.oracle.com/el4/RPM-GPG-KEY-oracle -O- | sudo apt-key add - $ sudo apt-get update $ sudo apt-get install oracle-xe ... Desempaquetando oracle-xe (de .../oracle-xe_10.2.0.1-1.1_i386.deb) ... Configurando libaio (0.3.104-1) ... Configurando oracle-xe (10.2.0.1-1.1) ... Executing Post-install steps... -e You must run '/etc/init.d/oracle-xe configure' as the root user to configure the database.
En el portàtil (Ubuntu Studio 8.04) ha funcionat correctament la instal.lació. En canvi, en el servidor virtual de l'institut em diu que la swap és insuficient, lògic:
$ sudo apt-get install oracle-xe S'està llegint la llista de paquets... Fet S'està construint l'arbre de dependències Reading state information... Fet S'instal·laran els següents paquets extres: libaio S'instal·laran els següents paquets NOUS: libaio oracle-xe 0 actualitzats, 2 nous a instal·lar, 0 a eliminar i 251 no actualitzats. Es necessita obtenir 221MB d'arxius. Després de desempaquetar s'usaran 405MB d'espai en disc addicional. Voleu continuar [S/n]? S Des:1 http://oss.oracle.com unstable/main libaio 0.3.104-1 [6018B] Des:2 http://oss.oracle.com unstable/non-free oracle-xe 10.2.0.1-1.1 [221MB] 221MB descarregats en 9m16s (397kB/s) S'està seleccionant el paquet libaio prèviament no seleccionat. (S'està llegint la base de dades ... hi ha 90576 fitxers i directoris instal·lats actualment.) S'està desempaquetant libaio (de .../libaio_0.3.104-1_i386.deb) ... S'està seleccionant el paquet oracle-xe prèviament no seleccionat. S'està desempaquetant oracle-xe (de .../oracle-xe_10.2.0.1-1.1_i386.deb) ... This system does not meet the minimum requirements for swap space. Based on the amount of physical memory available on the system, Oracle Database 10g Express Edition requires 747 MB of swap space. This system has 366 MB of swap space. Configure more swap space on the system and retry the installation. dpkg: s'ha produït un error en processar /var/cache/apt/archives/oracle-xe_10.2.0.1-1.1_i386.deb (--unpack): el subprocés pre-installation script retornà el codi d'eixida d'error 1 S'han trobat errors en processar: /var/cache/apt/archives/oracle-xe_10.2.0.1-1.1_i386.deb E: Sub-process /usr/bin/dpkg returned an error code (1)
'libaio' and 'bc' are in the repository, so dependancies will pull them in if the user doesn't have them. (Note: You will need to 'sudo' or have 'root' privileges to install XE.)
Efectivament, com veig en els missatges, la versió que estem instal.lant és la versió 10g i estic curt de swap com era de preveure (aquesta prova l'estic fent en un servidor virtual on tinc instal.lat el Ubuntu 7.10).
Aquesta és la manera ràpida. L'altra manera que s'explica és baixar-se el fitxer .deb de la web d'Oracle i fer dpkg -i.
Problemes amb el Swap
Per a la instal.lació necessitem tenir suficient espai de swap. Si no n'hi ha prou, la instal.lació es queixarà. Com s'explica, hi ha maneres d'augmentar el swap.
Note: the default 799MB of swap on Kubuntu was not sufficient for XE to install. Currently if you have 512MB physical RAM, XE will want 1GB swapspace (as in my case on a Tecra9000); if 256MB physical RAM, XE will want 1.5GB swapspace. Fortunately, XE gave me meaningful error feedback. How would I add swapspace on the fly without re-partioning? I had no clue. Maybe there is a administrative GUI? No such luck.)
I did get a couple of command-line responses from some of my friends on how to get around this. Here is one that worked for me:
root@kubuntu:~# dd if=/dev/zero of=/swapfile bs=1M count=600 600+0 records in 600+0 records out 629145600 bytes (629 MB) copied, 2.1237 seconds, 296 MB/s root@kubuntu:~# mkswap /swapfile Setting up swapspace version 1, size = 629141 kB no label, UUID=f267d443-106e-431e-a6e5-ec2c1ebb0a37 root@kubuntu:~# swapon /swapfile
Configuració
Després de la instal.lació suposo que els dos mètodes coincideixen, i entrem en la part de configuració.
$ sudo /etc/init.d/oracle-xe configure Oracle Database 10g Express Edition Configuration
This will configure on-boot properties of Oracle Database XE. 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].
Compte perquè en un sistema que hi hagi el Tomcat el port 8080 estarà ocupat. Suposo que el Oracle vol instal.lar el seu Apache, però lo bo és que si ja tenim un Apache pel port 80 hauríem de fer córrer tot el tema web d'Oracle en aquesta instal.lació d'Oracle i per aquest port.
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: (* make sure you remember this password *)
Do you want Oracle Database 10g Express Edition to be started on boot (y/n) [y]: y
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" root@kubuntu:/home/todd/Desktop#
Si vull reconfigurar puc editar el fitxer /etc/default/oracle-xe. Aquí puc canviar el port del listener, del apache, dir que arranqui o no en l'inici del sistema, i marcar el Oracle com a configurat o no. Si marco com a no, el configure tornarà a funcionar.
Començar a treballar
At this point you can fire up Firefox http://127.0.0.1:8080/apex, login as 'system' with the 'password' you created during the install, and you should see the XE homepage:
en aquest cas, apex és el nom de la instància Oracle que s'ha creat automàticament, i no m'ha deixat triar.
Jo, que vinc del Oracle 8, realment tot és molt familiar. DBA Studio no existeix i ha estat substituït per la interfície web accessible des del servidor web.
Em logo com a system (pwd: xxxx)
El primer que faig és crear l'usuari d'Oracle joan (pwd: bbdd), al que li dono permisos de DBA. Ara bé, no confondre amb l'usuari joan del Ubuntu. Per ex, en el menú vaig a Copia de Seguridad de bases de datos, i em dóna error:
Afegim joan (usuari d'Ubuntu) al grup d'Ubuntu dba
Operation failed. joan is not a member of 'dba' group. Press any key to exit
És un problema de permisos de SO. joan d'oracle pertany al rol DBA d'Oracle, però joan d'Ubuntu no pertany al grup dba d'Ubuntu.
$ useradd -G dba joan #useradd és per a usuaris de nova creació el usuario joan existe $ usermod -a -G dba joan $ groups joan
Ara ja puc entrar en Copia de Seguridad de bases de datos, que em diu que estic treballant en mode no-arxivat.
Execució del Sql*Plus
El llençador situat en el menu crida a un script que a l'hora crida al sqlplus
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/config/scripts/runsqlplus.sh
Anem a veure el contingut d'aquest script:
#!/bin/bash if [ -f /usr/bin/gnome-terminal ] then /usr/bin/gnome-terminal -t "SQL*Plus" -e "/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/config/scripts/sqlplus.sh" else /usr/bin/xterm -T "SQL*Plus" -n "SQL*Plus" -e "/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/config/scripts/sqlplus.sh" fi
i el contingut del script sqlplus.sh:
#!/bin/bash # # svaggu 09/28/05 - Creation # ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server export ORACLE_HOME ORACLE_SID=XE export ORACLE_SID NLS_LANG=`$ORACLE_HOME/bin/nls_lang.sh` export NLS_LANG PATH=$ORACLE_HOME/bin:$PATH export PATH sqlplus /nolog
Aquí puc veure que el ORACLE_SID=XE, que l'executable es diu sqlplus, i que arrenco l'executable sense logar-me El binari sqlplus esta en el ORACLE_HOME/bin:
$ ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server $ export ORACLE_HOME $ /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/sqlplus joan/bbdd@XE
fixem-nos que si no especifico el ORACLE_SID com a variable d'entorn l'he d'especificar en la crida del sqlplus: sqlplus joan/bbdd@XE
Evidentment, les variables d'entorn les podria ficar en el script d'inici de l'usuari.
Fitxer TSNAMES.ORA i LISTENER.ORA
A partir de l'experiència en Oracle 8i per a Windows, puc endevinar on són els fitxers de configuració:
$ cd /usr/lib/oracle/xe/app/oracle/product/10.2.0/server
$ ls
bin ctx demo jdbc ldap log nls opmn plsql rdbms sqlplus
config dbs hs jlib lib network odbc oracore precomp slax xdk
$ cd netword
$ cd admin
$ cat tnsnames.ora
# tnsnames.ora Network Configuration File:
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ubuntu)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
$ cat listener.ora
# listener.ora Network Configuration File:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /usr/lib/oracle/xe/app/oracle/product/10.2.0/server)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
(ADDRESS = (PROTOCOL = TCP)(HOST = ubuntu)(PORT = 1521))
)
)
DEFAULT_SERVICE_LISTENER = (XE)
Tot correcte, com era d'esperar
Utilitats a ORACLE_HOME/bin tnsping
joan@ubuntu:/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin$ ./tnsping XE TNS Ping Utility for Linux: Version 10.2.0.1.0 - Production on 03-NOV-2008 23:56:09 Copyright (c) 1997, 2005, Oracle. All rights reserved. Used parameter files: Used TNSNAMES adapter to resolve the alias Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = ubuntu)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = XE))) OK (10 msec)
També trobem els aplicatius exp i imp que serveixen per fer còpies de seguretat
Fitxer de configuració init.ora
Es troba a $ORACLE_HOME/dbs/init.ora. És el fitxer de configuració que es llegeix en l'arrencada del sistema.
Demo Recursos Humans
Dins la carpeta /server/demo/schema/human_resources hi ha tota una sèrie de scripts d'exemple que creen una estructura del departament de RRHH d'una empresa i poblen les taules amb informació.
el script principal és hr_main.sql, que crida als altres scripts. Anem a comentar aquest script.
rem
rem Header: hr_main.sql 09-jan-01
rem
rem Copyright (c) 2001, 2004, Oracle. All rights reserved.
rem
rem Owner : ahunold
rem
rem NAME
rem hr_main.sql - Main script for HR schema
rem
rem DESCRIPTON
rem HR (Human Resources) is the smallest and most simple one
rem of the Sample Schemas
rem
rem NOTES
rem Run as SYS or SYSTEM
rem
rem MODIFIED (MM/DD/YY)
rem pthornto 07/16/04 - obsolete 'connect' role
rem hyeh 08/29/02 - hyeh_mv_comschema_to_rdbms
rem ahunold 08/28/01 - roles
rem ahunold 07/13/01 - NLS Territory
rem ahunold 04/13/01 - parameter 5, notes, spool
rem ahunold 03/29/01 - spool
rem ahunold 03/12/01 - prompts
rem ahunold 03/07/01 - hr_analz.sql
rem ahunold 03/03/01 - HR simplification, REGIONS table
rem ngreenbe 06/01/00 - created
SET ECHO OFF
PROMPT
PROMPT specify password for HR as parameter 1:
DEFINE pass = &1
PROMPT
PROMPT specify default tablespeace for HR as parameter 2:
DEFINE tbs = &2
PROMPT
PROMPT specify temporary tablespace for HR as parameter 3:
DEFINE ttbs = &3
PROMPT
PROMPT specify password for SYS as parameter 4:
DEFINE pass_sys = &4
PROMPT
PROMPT specify log path as parameter 5:
DEFINE log_path = &5
PROMPT
-- The first dot in the spool command below is
-- the SQL*Plus concatenation character
DEFINE spool_file = &log_path.hr_main.log
SPOOL &spool_file
REM =======================================================
REM cleanup section
REM =======================================================
DROP USER hr CASCADE;
REM =======================================================
REM create user
REM three separate commands, so the create user command
REM will succeed regardless of the existence of the
REM DEMO and TEMP tablespaces
REM =======================================================
CREATE USER hr IDENTIFIED BY &pass;
ALTER USER hr DEFAULT TABLESPACE &tbs
QUOTA UNLIMITED ON &tbs;
ALTER USER hr TEMPORARY TABLESPACE &ttbs;
GRANT CREATE SESSION, CREATE VIEW, ALTER SESSION, CREATE SEQUENCE TO hr;
GRANT CREATE SYNONYM, CREATE DATABASE LINK, RESOURCE TO hr;
REM =======================================================
REM grants from sys schema
REM =======================================================
CONNECT sys/&pass_sys AS SYSDBA;
GRANT execute ON sys.dbms_stats TO hr;
REM =======================================================
REM create hr schema objects
REM =======================================================
CONNECT hr/&pass
ALTER SESSION SET NLS_LANGUAGE=American;
ALTER SESSION SET NLS_TERRITORY=America;
--
-- create tables, sequences and constraint
--
@?/demo/schema/human_resources/hr_cre
--
-- populate tables
--
@?/demo/schema/human_resources/hr_popul
--
-- create indexes
--
@?/demo/schema/human_resources/hr_idx
--
-- create procedural objects
--
@?/demo/schema/human_resources/hr_code
--
-- add comments to tables and columns
--
@?/demo/schema/human_resources/hr_comnt
--
-- gather schema statistics
--
@?/demo/schema/human_resources/hr_analz
spool off
El script hr_main.sql s'ha d'executar com a system, i li hem de passar 5 paràmetres: el password per a l'esquema HR (que es crearà), default_tablespace, temporary_tablespace, password for SYS i la ruta del fitxer de log.
El fitxer de log estarà a log_path.hr_main.log
DEFINE spool_file = &log_path.hr_main.log SPOOL &spool_file
el primer que fem és eliminar l'esquema HR:
DROP USER hr CASCADE;
i el tornem a crear:
CREATE USER hr IDENTIFIED BY &pass;
ALTER USER hr DEFAULT TABLESPACE &tbs
QUOTA UNLIMITED ON &tbs;
ALTER USER hr TEMPORARY TABLESPACE &ttbs;
GRANT CREATE SESSION, CREATE VIEW, ALTER SESSION, CREATE SEQUENCE TO hr;
GRANT CREATE SYNONYM, CREATE DATABASE LINK, RESOURCE TO hr;
És necessari connectar-nos com a SYS per donar permisos sobre l'objecte dbms_stats (que serveix per agafar informació estadística, mirar script hr_analz. Les estadístiques serveixen per tal que el optimitzador basat en cost pugui escollir la millor estratègia d'accés a les dades)
CONNECT sys/&pass_sys AS SYSDBA; GRANT execute ON sys.dbms_stats TO hr;
i ara ja ens connectem com a hr i ens disposem a crear les taules
CONNECT hr/&pass ALTER SESSION SET NLS_LANGUAGE=American; ALTER SESSION SET NLS_TERRITORY=America;
-- create tables, sequences and constraint @?/demo/schema/human_resources/hr_cre
-- populate tables @?/demo/schema/human_resources/hr_popul
-- create indexes @?/demo/schema/human_resources/hr_idx
-- create procedural objects @?/demo/schema/human_resources/hr_code
-- add comments to tables and columns @?/demo/schema/human_resources/hr_comnt
-- gather schema statistics @?/demo/schema/human_resources/hr_analz
Bé doncs, comencem
Arrenco el SQl*Plus i em connecto com a system (si em connecto com a sys, ho hauria de fer com a SYSDBA)
I executo el script ficant la ruta relativa (amb el caràcter ?)
SQL>@?/demo/schema/human_resources/hr_main.sql ... Comment created. Comment created. Commit complete. PL/SQL procedure successfully completed.
Per comprovar:
SQL> connect hr/bbdd SQL> select * from tab; SQL> select * from EMPLOYEES;
i vaig a http://127.0.0.1:8080/apex/, em connecto com a hr, i puc navegar per tot l'esquema per veure els objectes creats.
Arrencar i aturar la bd
Aturada
Script per aturar la bd:
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/config/scripts/stopdb.sh
que executa la comanda:
$SQLPLUS -s /nolog @$ORACLE_HOME/config/scripts/stopdb.sql > /dev/null 2>&1
i el fitxer stopdb.sql:
connect / as sysdba shutdown immediate exit
És a dir, al cap i a la fi fem un shutdown immediate
Arrencada
Script per arrencar la bd:
$ /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/config/scripts/startdb.sh
que executa la comanda:
$SQLPLUS -s /nolog @$ORACLE_HOME/config/scripts/startdb.sql > /dev/null 2>&1
i el fitxer startdb.sql:
connect / as sysdba startup exit
És a dir, en una sessió del Sql*Plus puc fer:
SQL> connect sys/bbdd as sysdba Connected. SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down.
SQL> startup ORACLE instance started. Total System Global Area 285212672 bytes Fixed Size 1258464 bytes Variable Size 96472096 bytes Database Buffers 184549376 bytes Redo Buffers 2932736 bytes Database mounted. Database opened. SQL>
i si vull engegar la base de dades passant per tots els estats (base de dades apagada, engegada-no muntada, muntada, oberta)
SQL> startup nomount ORACLE instance started. Total System Global Area 285212672 bytes Fixed Size 1258464 bytes Variable Size 96472096 bytes Database Buffers 184549376 bytes Redo Buffers 2932736 bytes SQL> alter database mount; Database altered. SQL> alter database open; Database altered. SQL>
Oracle arrenca automàticament a l'iniciar el sistema
Durant la instal.lació s'ha preguntat si vull que arrenqui l'Oracle a l'engegar el sistema, i he dit que sí. Evidentment, això ha de ser un script d'inici que ha d'estar a /etc/init.d
$ cd /etc/init.d
oan@ubuntu:/etc/init.d$ sudo ./oracle-xe
Usage: ./oracle-xe {start|stop|restart|force-reload|configure|status|enable|disable}
aquí trobem el script d'inici del dimoni, però que també és el de configuració.
$ sudo ./oracle-xe stop Shutting down Oracle Database 10g Express Edition Instance. Stopping Oracle Net Listener. $ sudo ./oracle-xe start Starting Oracle Net Listener. Starting Oracle Database 10g Express Edition Instance. $ sudo ./oracle-xe configure Oracle Database 10g Express Edition is already configured
xafardejo dins del script oracle-xe:
$ cat ./oracle-xe
...
case "$1" in
start)
if test -f "$CONFIGURATION"
then
if test "$ORACLE_DBENABLED" != "true"
then
exit 0
fi
else
echo "Oracle Database 10g Express Edition is not configured. You must run
'/etc/init.d/oracle-xe configure' as the root user to configure the database."
exit 0
fi
start
;;
que fa una crida a start:
start() {
if [ "$CONFIGURE_RUN" != "true" ]
then
echo "Oracle Database 10g Express Edition is not configured. You must run
'/etc/init.d/oracle-xe configure' as the root user to configure the database."
exit 0
fi
status=`ps -ef | grep tns | grep oracle`
if [ "$status" == "" ]
then
if [ -f $ORACLE_HOME/bin/tnslsnr ]
then
echo "Starting Oracle Net Listener."
$SU -s /bin/bash $ORACLE_OWNER -c "$LSNR start" > /dev/null 2>&1
fi
fi
echo "Starting Oracle Database 10g Express Edition Instance."
$SU -s /bin/bash $ORACLE_OWNER -c "$SQLPLUS -s /nolog @$ORACLE_HOME/config/scripts/startdb.sql" > /dev/null 2>&1
RETVAL=$?
if [ $RETVAL -eq 0 ]
then
echo
else
echo Failed to start Oracle Net Listener using $ORACLE_HOME/bin/tnslsnr\
and Oracle Express Database using $ORACLE_HOME/bin/sqlplus.
RETVAL=1
fi
return $RETVAL
}
i veiem que el procés d'arrencada és bàsicament engegar el listener i engegar-obrir la bd:
echo "Starting Oracle Net Listener." $SU -s /bin/bash $ORACLE_OWNER -c "$LSNR start" > /dev/null 2>&1 echo "Starting Oracle Database 10g Express Edition Instance." $SU -s /bin/bash $ORACLE_OWNER -c "$SQLPLUS -s /nolog @$ORACLE_HOME/config/scripts/startdb.sql" > /dev/null 2>&1
Una còpia del fitxer /etc/init.d/oracle-xe està a /etc/rc5.d/S20oracle-xe (i als altres nivells), que m'assegura l'arrencada inicial de l'Oracle.
Si vull reconfigurar, hauré de comentar en el script /etc/init.d/oracle-xe unes poques línies:
configure()
{
#if [ "$CONFIGURE_RUN" = "true" ]
#then
# echo "Oracle Database 10g Express Edition is already configured"
#exit 1
#fi
configure_ask
configure_perform
CONFIGURE_RUN=true
write_sysconfig
echo To access the Database Home Page go to \"http://127.0.0.1:$HTTP_PORT/apex\"
}
i ara ja em torna a fer les preguntes que em feia en la instal.lació
Specify the HTTP port that will be used for Oracle Application Express [8080]: Port 8080 appears to be in use by another application. Please specify a different port.
però clar, ara el port 8080 ja està ocupat.
Servidor Apache d'Oracle (OHS, Oracle HTTP Server) (m'he quedat aquí)
http://www.oracle.com/technology/products/ias/ohs/index.html
http://www.thisisahmed.com/tia/
http://www.orafaq.com/faqhttp.htm
El servidor web d'Oracle està basat en el servidor web d'Apache.
Els scripts d'inici no estan a /etc/init.d, sinó dins el directori bin d'Oracle:
cd $ORACLE_HOME/Apache/Apache/bin/
./apachectl start # or... httpdsctl start
=Instal.lar oracle-xe a Ubuntu 10.04 64 bits (nov 2010)=
El procés anterior, amb arquitectura de 64 bits, falla, però es pot forçar la instal.lació.
Google on ''Oracle XE'' and ''64 bit'' gave the instructions below:
<pre>
$ sudo apt-get install libc6-i386
$ sudo wget -c http://oss.oracle.com/debian/dists/unstable/main/binary-i386/libaio_0.3.104-1_i386.deb http://oss.oracle.com/debian/dists/unstable/non-free/binary-i386/oracle-xe_10.2.0.1-1.1_i386.deb
$ sudo dpkg -i libaio_0.3.104-1_i386.deb
This results in following error
dpkg: error processing libaio_0.3.104-1_i386.deb (--install): package architecture (i386) does not match system (amd64) Errors were encountered while processing: libaio_0.3.104-1_i386.deb
To force the installation, do this
$ sudo dpkg -i --force-architecture libaio_0.3.104-1_i386.deb $ sudo apt-get install bc $ sudo dpkg -i --force-architecture oracle-xe_10.2.0.1-1.1_i386.deb
And after the installation is finished, you need to configure Oracle XE as normal.
creat per Joan Quintana Compte, gener 2009 - novembre 2010
Instal.lar oracle-xe a Ubuntu 10.04 64 bits
El procés anterior, amb arquitectura de 64 bits, falla, però es pot forçar la instal.lació.
Google on Oracle XE and 64 bit gave the instructions below:
$ sudo apt-get install libc6-i386 $ sudo wget -c http://oss.oracle.com/debian/dists/unstable/main/binary-i386/libaio_0.3.104-1_i386.deb http://oss.oracle.com/debian/dists/unstable/non-free/binary-i386/oracle-xe_10.2.0.1-1.1_i386.deb $ sudo dpkg -i libaio_0.3.104-1_i386.deb
This results in following error
dpkg: error processing libaio_0.3.104-1_i386.deb (--install): package architecture (i386) does not match system (amd64) Errors were encountered while processing: libaio_0.3.104-1_i386.deb
To force the installation, do this
$ sudo dpkg -i --force-architecture libaio_0.3.104-1_i386.deb $ sudo apt-get install bc $ sudo dpkg -i --force-architecture oracle-xe_10.2.0.1-1.1_i386.deb
And after the installation is finished, you need to configure Oracle XE as normal.