Installing Oracle Database XE on Debian, Ubuntu, and Kubuntu

De Wikijoan
Dreceres ràpides: navegació, cerca

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:


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 </pre>

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.

Eines de l'usuari
Espais de noms
Variants
Accions
Navegació
IES Jaume Balmes
Màquines recreatives
CNC
Informàtica musical
joanillo.org Planet
Eines