Acceso a SQLServer desde Ubuntu

Para acceder a una base de datos SQLServer o Sybase la mejor opción es instalar los drivers TDS (Tabular Data Stream) http://en.wikipedia.org/wiki/Tabular_Data_Stream.

Hay que recordar que SQLServer de Microsoft es una versión propia de la base de datos de Sybase, por lo que comparte algunas de sus características, entre las cuales se encuentra la posibilidad de acceder a ellas mediante el driver TDS de ODBC.

Instalación de paquetes

Instalamos tdsodbc y también sqsh, que es un shell de consultas SQL pensado para sustituir al antiguo isql que se usaba originalmente para hacer querys a las bases de datos de Sybase.

$ sudo apt-get install libsybdb5 freetds-common php5-sybase sqsh unixodbc unixodbc-bin tdsodbc
/etc/init.d/apache2 restart

Ficheros de configuración

/etc/odbcinst.ini

[ODBC Drivers]
     TDS = Installed

[TDS]
     Driver = /usr/lib/odbc/libtdsodbc.so
     Setup = /usr/lib/odbc/libtdsS.so

/etc/odbc.ini

[ODBC Data Sources]
     SQLSERVER_ODBC = TDS

[SQLSERVER_ODBC]
     Driver = /usr/lib/odbc/libtdsodbc.so
     Description = Test ODBC
     Host = localhost
     ServerType = SQLServer
     FetchBufferSize = 00
     Username = UserHM
     UID = UserHM
     Password = HMuser8520
     Database = HostMonitor
     ServerOptions =
     ConnectOptions =
     Options =
     ReadOnly = no

/etc/freetds/freetds.conf

[global]
     # TDS protocol version
     tds version = 4.2

[SQLSERVER_TDS]
     # Version 8.0 para SQL Server 2000
     # Version 7.0 para SQL Server 7
     # Version 6.0 para SQL Server 6
     host = 194.179.23.1
     port = 1433
     tds version = 8.0

Prueba de conectividad TDS

$ sqsh -S 194.179.23.1 -U usuario -P password -D database
sqsh-2.1 Copyright (C) 1995-2001 Scott C. Gray
This is free software with ABSOLUTELY NO WARRANTY
For more information type 'warranty'
1>

Prueba de conectividad ODBC

$ isql -v SQLSERVER_ODBC usuario password
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL>

Acceso desde PHP

$sock=mssql_connect("SQLSERVER_TDS","usuario","password");
mssql_select_db("database",$sock);
$SQL = "select * from tabla";
$result= mssql_query($SQL);
while ($row = mssql_fetch_array($result)) {
        echo $row['id_tabla'] . " " . $row['campo1'] . " " . $row['campo2'] . "n";
}

Instalar soporte para BD Informix en Ubuntu Server 10.04 y XAMPP 1.7.4 como modulo de PHP

La instalación del PDO_INFORMIX funciono pero la experiencia con el PDO no es lo que esperaba (nunca lo había usado) así que como extraño mis connect, fetch_array y fetch_assoc, aqui les dejo como hechar a volar el modulo de Informix en PHP 5.2

Primero el ambiente:

Ubuntu Server 10.04

XAMPP for Linux 1.7.4 con su respectiva versión de desarrollo (xampp-linux-devel-1.7.4)

Despues asignamos la variable de entorno para el informix en el .profile

export INFORMIXDIR=/opt/IBM

PATH=$PATH:$INFORMIXDIR/bin

Esta debe estar seteada antes de instalar el cliente para compilar despues el modulo de informix para PHP

informix:~# export INFORMIXDIR=/opt/IBM

El cliente de informix requiere un usuario de sistema y un grupo antes de ser instalado

informix:~# addgroup –system informix

informix:~# adduser –system informix –ingroup informix

Los paquetes que debemos instalar son: default-jdk rpm make subversion

El cliente de Informix viene con una JVM pero a mi dio error al instalarlo, asi que instalar el ambiente de Java funciono bien para mi.

informix:~# apt-get install default-jdk rpm make subversion

Creamos las carpetas para instalar el cliente de Informix y php_infomix

informix:# mkdir informix_client

infomix:# mkdir php_informix

Descargamos el cliente de Informix en el directorio, hasta donde se no hay manera de realizar esto por consola, yo me registre en IBM y descargue un free trial, el paquete que use lo encontre en el serach del site de IBM como IBM Informix Client SDK V3.00.FC3 for Linux (x86) RHEL 4, 64bit

El archivo que descargue fue clientsdk.3.00.FC3DE.LINUX.tar, el cual despues pase por usb a mi Ubuntu server en el directorios de informix client.

Descomprimimos el cliente

informix:~/informix_client# tar -xvf clientsdk.3.00.FC3DE.LINUX.tar

Corremos el instaaldor del installclientsdk.

informix:~/informix_client# ./installclientsdk

Es necesario cambiar la ruta de instalacion yo utilice /opt/IBM/

De nuevo debemos aceptar un acuerdo de licencia y avanzar en el installer.

Una ves instaaldo el cliente nos movemos al directorio de php_informix.

informix:~/informix_client# cd ../php_informix

Aqui descragamos lso fuentes de php_informix desde svn.

informix:~/php_informix# svn checkout http://svn.php.net/repository/pecl/informix/trunk/

nos movemos al directorio trunk

informix:~/php_informix# cd trunk

Ahora demos configurar e instalar el modulo de Informix.

informix:~/php_informix/trunk# /opt/lampp/bin/phpize –with-php-config=/opt/lampp/bin/php-config

informix:~/php_informix/trunk# ./configure –with-php-config=/opt/lampp/bin/php-config

Antes de seguirnos de filo con el make del modulo, debemos editar el Makefile para asegurarnos que el modulo esta ligado con la libreria de Informix checkapi.o, de otra manera si usamos el modulo nos mandar error de undefined symbol: ifx_checkAPI.

Editamos el Makefile y reemplazamos el valor de la directiva INFORMIX_SHARED_LIBADD con:

-Wl,-rpath,/opt/IBM/informix/lib/esql -L/opt/IBM/informix/lib/esql -Wl,-rpath,/opt/IBM/informix/lib -L/opt/IBM/informix/lib -lifsql -lifasf -lifgen -lifos -lifgls -ldl -lcrypt /opt/IBM/lib/esql/checkapi.o -lifglx

Ahora si podemos construir e instalar el modulo Informix:

informix:~/php_informix/trunk# make && make install

Este debera de instalarse en /usr/lib/php5/20060613. Debemos verificar que este apunta correctamente a la libreria de Informix checkapi.o, parea esto usamos el comando nm , el resultado debe arrojarnos algo como:

informix:~/php_informix/trunk# nm /usr/lib/php5/20060613/informix.so | grep ifx_checkAPI

000000000000bef0 T ifx_checkAPI

Para agregar y habilitar el modulo debemos editar el archivo php.ini que se encuentra en /opt/lampp/etc/

informix:/# nano /opt/lampp/etc/php.ini

# configuration for php INFORMIX module
extension=informix.so

El valor puede ser informix.so o si les manda error traten con “informix.so”

Por supuesto para lograr una conexión aun debemos editar /opt/IBM/etc/sqlhosts, /etc/hosts, y /etc/services todos estos deben tener la configuración para apuntar al server de informix. Además es necesario setear la variable de ambiente para apache INFORMIXDIR en /etc/apache2/apache2.conf.

Ejecutar un Jquery como comando externo desde un archivo .bat

En ocasiones tenemos que realizar algún proceso en SQL Server en algún sistema Windows. Así que les dejo este POST de como ejecutar un query como comando externo desde un archivo .bat dejando el resultado del mismo en archivo de texto o csv.
Primero generamos nuestro Store procedure en nuestra Base de datos con el comando:
USE database_name;

GO

CREATE PROCEDURE sp_name

AS

SELECT FirstName, LastName FROM Person.Person;

GO

Creamos el archivo sp.txt en la ruta D:Batch (o la que definamos) el cual debe contener la siguiente linea

EXECUTE sp_name
Ahora creamos un archivo .bat usando el bloc de notas al cual le incluiremos el siguiente comando:

sqlcmd -U usuario -P password -S server_name -d database_name -i D:Batchsp.txt -o D:Batchsalida.txt

Por ultimo modificamos las variables usuario, password. server_name y database_name. Probamos nuestro archivo.bat y revisamos el archivo de salida D:Batchsalida.txt

El futuro de MySql

Como comentaba en el post anterior, la compra de Sun por parte de Oracle ha levantado alarmas sobre el futuro de MySQL, una de las bases de datos más utilizadas (si no la-más-utilizada) en el mundo del desarrollo web, fundamentalmente por su carácter de software libre — sin ir más lejos, cientos de CMS como WordPress, Joomla o Drupal la utilizan de forma preferente o exclusiva, por lo que la posibilidad de que Oracle decidiera detener su desarrollo para favorecer sus propios sistemas de bases de datos (propietarios y de pago) se presenta para algunos como una amenaza real al futuro de sus aplicaciones.

Pero… ¿existen verdaderamente razones para estas preocupaciones? Creo que no, y es más, creo que temer por el futuro de MySQL es no entender las ventajas del software libre, o peor aún, pensar que “software libre = software gratis”… Habría que agregar también que es en puntos como este donde se aprecia la diferencia práctica entre el código abierto y el software libre: a pesar de las diferentes concepciones que podríamos encontrar al respecto (por ejemplo, la definición “oficial” de código abierto, de la Open Source Initiative se parece más bien a una definición de software libre), podríamos reducir didáctica e ilustrativamente su diferencia al hecho de que en su sentido más básico, “código abierto” hace referencia al simple hecho de que es posible ver el código fuente de un programa. En este sentido, cualquier programa escrito en un lenguaje interpretado (PHP, Perl, Python, Ruby [on Rails]) distribuido públicamente caería en la definición de “código abierto” (a menos que por alguna razón “especial” su autor decidiera ofuscar el código).

Un ejemplo de lo anterior podría ser Movable Type, que en lo fundamental siempre ha sido de “código abierto”: el programa es puro código fuente interpretado, pero hasta hace poco no existía la libertad de distribuir una versión modificada, la que existe sólo a partir de su licenciamiento con la GPL. Es entonces cuando las cuatro libertades para usuarios de software cobran sentido: no se trata de una razones puramente filosóficas o políticas (aunque también lo es) ni de una posición utópica o radical (como si ello fuera algo malo)… software libre no es lo mismo que código abierto.

¿Y qué tiene que ver esto con MySQL? Que justamente, su carácter de software libre asegura un futuro protegido: si Oracle decide detener su desarrollo, cualquier grupo de desarrollo podrá tomar la última versión publicada bajo la GPL y continuar el desarrollo, creando un fork… con otro nombre (si Oracle decide proteger su marca), con nuevas metas, con otras personas participando; agregando nuevas características o simplemente mejorando su seguridad y rendimiento o con cualquier otro plan de desarrollo.

No es una posibilidad utópica: ha pasado un montón de veces y seguirá pasando. Ubuntu es un fork de Debian, WordPress es un fork de b2, Webkit es un fork de KHTML e incluso el sistema operativo de Apple, Mac OS X es un fork de Nextstep, que a su vez es un fork de BSD (que es una variante de UNIX).

¿Y si Oracle no detiene el desarrollo de MySQL sino que lo transforma en un producto de software libre de pago? Está dentro de sus libertades, mientras siga publicando su código fuente. Y esto tampoco sería el peor de los escenarios: del mismo modo, cualquier grupo podría dedicarse a distribuir ejecutables compilados a partir del código fuente, y en este caso también hay referentes —CentOS es una distribución de GNU/Linux compilada a partir del código fuente liberado por Red Hat, una distribución comercial de Linux (y una de las de mayor tradición).

De cualquier modo, los primeros pasos para asegurar el futuro de MySQL ya se han dado: uno de los creadores de esta base de datos ha anunciado la creación de la Open Database Alliance para coordinar el desarrollo colaborativo en torno a MySQL.

Y los más paranoicos se alegrarán de saber que ya existen un par de fork’s totalmente compatibles con MySQL y que fácilmente podría convertirse en su sucesor: MariaDB, una rama de MySQL desarrollada en comunidad que mantendrá la compatibilidad con los nuevos lanzamientos de MySQL, y Drizzle, un fork modular basado en MySQL 6.0 y desarrollado por los propios ingenieros de MySQL (ahora SUN) … y quién sabe, si Oracle decide finalmente jubilar a MySQL, quizás podríamos tener un sucesor que no sea solamente una copia sino una nueva y mejor base de datos.

Oracle compra Sun

El anuncio se realizo el día de hoy. De acuerdo a los comunicados de prensa de SUN y de Oracle (en inglés) anunciando el movimiento.

Después de que las conversaciones de adquisición con IBM no se concretaron, Oracle, en una movida sorpresa, llegó a un acuerdo para comprar Sun por 7.400 millones de dólares.

Según su comunicados el motivo más importante recae en dos de las propiedades más valiosas de Sun: Java y Solaris.

La Junta Directiva de Sun aprobó la compra de forma unánime, se hará efectiva en verano después de que los accionistas y el gobierno estadounidense den su aprobación.

Recordemos también que Sun compró MySQL hace un poco más de un año, lo cual significa que ahora pasa a ser controlado por Oracle.

Lo realmente procupante de esta operación es el futuro de MySQL como el manejador de bases de datos estandard de aplicaciones web y hasta hace poco de ERPS y aplicaciones de misión critica. Es por muchos conocido que muchas empresas empezaron a migrar sus aplicaciones de misión critica y core bussines a MySQL. Esto obedecía principalmente a la situación económica, a el hecho de que MySQL tenia ahora el motor transaccional innodb que le permitía cumplir con los estandares de ACID (ACID compliant) y por supuesto a que en manos de SUN podrías obtener un buen contrato de soporte 24 x 7 365 y en tu idioma. Muchos pensamos que estos factores mostraban a MySQL como un producto bien madurado y por evolución natural lo colocaría en una posición de líder indiscutible en la industria de los RDBMS.

Sin embargo en mi muy particular punto de vista, es una movida muy conveniente para Oracle, ya que la mayoría de las aplicaciones de Oracle están desarrolladas en Java. Por lo que ahora sera capaz de ofrecer soluciones completas (Hardware, Software y Tupperware), usando sus recién adquiridos; los míticos servidores T con procesadores Sparc, el sistema operativo Solaris, BEA Web logic como application server y por supuesto Oracle 10g como RDBMS, lo que dejaría a MySQL y a Glassfish fuera del esquema principal de negocio y por supuesto, muy probablemente dejaran de recibir soporte en algún tiempo.

Y pensando en que Oracle no ha figurado por ser una empresa cercana al open source, al menos a la comunidad que lo conforma, entonces nos queda pensar que el impacto para los productos (al menos los que compiten con su catalogo actual), seria negativo

Si esto sucede seria una verdadera lastima y el impacto para la red puede ser muy fuerte ya que MySql esta instalado en la gran mayoría de los web servers en el mundo y por supuesto el hecho de que el acuñado termino LAMPP perderia la «M». Me han contactado ya muchos miembros de la comunidad open source y algunos tienen ya la idea muy clara de que debemos empezar a buscar un reemplazo digno. Algunos ya están probando Firebird, otros de hecho están pensando en formar ya un nuevo proyecto en que se incluya código de Postgresql y Firebird y hacer un nuevo RBDMS incluyendo alguno de los motores opensource ya existentes que tenga soporte de ACID .

Afortunada o desafortunadamente no sabemos que rumbo vaya a tomar Oracle al respecto pero para algunos es ya un hecho que se acerca la muerte de MySQL como standard de la comunidad Open Source, algunos incluso lo piensan de ese modo – según sus palabras «No trabajaría con el de nuevo si pertenece a ORACLE.»

LAMPP Training – Curso MYSQL

Tenemos dos fechas tentativas para iniciar el curso, el 9 ó 16 de Mayo de 2009 depende del número de interesados. Mínimo 5 personas.

Revisa la encuesta en la parte inferior de la barra lateral para saber que fecha prefieres de inicio del curso.

La idea es impartir todo el training LAMP (Linux, Apache, MySQL y PHP) continuando el impulso al Open Source.

El temario propuesto para MySQL es:

I.- Introducción

  • Historia MySQL.
  • Acerca de GNU/GPL
  • Definición de SQL.
  • Principales características.
  • Herramientas Gráficas.

II.- Trabajando con MySQL

  • Introducción.
  • Conectándose y desconectándose al servidor MySQL.
  • Privilegios de usuarios.
  • Ejecutando algunas consultas.
  • Creando y usando una base de datos.
  • Creando una tabla.
  • Cargando datos en una tabla.
  • Recuperando información de una tabla.
  • Ordenando registros.
  • Cálculos con fechas.
  • Trabajando con valores nulos.
  • Coincidencia de patrones.
  • Conteo de filas.
  • Usando más de una tabla.
  • Usando mysql en modo batch.

III.- MySQL CLI

  • Acceso a un servidor MySQL y administración de la base de datos por línea de comandos.
  • Conectar con el servidor MySQL.
  • Dentro de la consola de MySQL.
  • Otras Sentencias SQL.
  • Para salir de la línea de comandos de MySQL.
  • Información acerca de las bases de datos y las tablas.
  • Tipos de conexiones.

Duración:

6 sesiones, sábados de 09:00 a 13:00 hrs.

Ubicación:

Atizapán de Zaragoza, Estado de México. Se envía croquis por correo electrónico al recibir la confirmación.

El costo por persona es de $ 2,000.

50% en la primera sesión y 50% en la penúltima.

Para cualquier duda o aclaración escribe un comentario en este post.

Instalar Oracle 10g release 2 en Ubuntu Edgy

Lo primero es descargarnos desde el sitio de oracle (www.oracle.com) el fichero con la base de datos. Tienes que tener cuenta en oracle, si no es tu caso registrate en la propia pagina web.

10201_database_linux32.zip (668,734,007 bytes) (cksum – 2737423041)

Guardamos el archivo descargado y lo descomprimimos en una carpeta. Observa que al descomprimir hay un fichero denominado “runInstaller“, este es el fichero que usaremos para iniciar la instalacion de Oracle. pero no ahora, antes tenemos que realizar una serie de comprobaciones y crear al usuario de oracle.

Para la correcta instalacion asegurate de tener instalados los siguientes paquetes:

gcc
libaio
lesstif2
lesstif2-dev
make
rpm
libc6
libstdc++5
binutils
libmotif

comprueba que los tienes instalados por ejemplo consultando via Synaptic y si no los tienes instalalos mediante apt-get

como root crea las siguientes enlaces simbolicos:


ln -s /usr/bin/awk /bin/awk
ln -s /usr/bin/rpm /bin/rpm
ln -s /usr/bin/basename /bin/basename

La documentacion de Oracle dice que el sistema debe tener 512Mb minimo de RAM y 1 Gb de swap.

Para ver la cantidad de RAM y swap ejecuta:

grep MemTotal /proc/meminfo

Para ver el espacio libre en disco ejecuta:

df -k

Es necesario tambien a justar algunos parametros del kernel. Para ver la configuración actual de nuestro sistema ejecuta:

/sbin/sysctl -a | grep sem/sbin/sysctl -a | grep shm/sbin/sysctl -a | grep file-max/sbin/sysctl -a | grep ip_local_port_range

Ahora edita el fichero /etc/sysctl.conf y añade o modifica estas líneas:


kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000

Al reiniciar se leera la configuración del kernel de /etc/sysctl.conf y se aplicaran los cambios. Pero si queremos que los cambios se apliquen inmediatamente ejecutamos:

/sbin/sysctl -p

Para ver los límites del shell ejecutamos:

ulimit -a, que nos mostrará algo parecido a esto:

core file size (blocks, -c) 0data seg size (kbytes, -d)
unlimitedfile size (blocks, -f) unlimited
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
stack size (kbytes, -s) unlimited
cpu time (seconds, -t) unlimited
max user processes (-u) 2047
virtual memory (kbytes, -v) unlimited

Por defecto, hay un límite por usuario, de 1024 descriptores de fichero, y 2047 procesos. Editamos el fichero /etc/security/limits.conf para modificar estos valores:

* soft nproc 2047
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536

Las dos últimas líneas imponen un límite inicial de 1024, pero permiten que un usuario aumente el límite a 65536 usando el comando ulimit -n 65536. Las dos primeras líneas limitan el número de procesos.

Añade lo siguiente a /etc/pam.d/login:

session required /lib/security/pam_limits.so

pam_limits.so es el módulo que procesa la configuración del fichero /etc/security/limits.conf que cambiamos antes.

creamos ahora el usuario de oracle y los grupos:

Para ver si ya existen escribe:
grep oinstall /etc/group
grep dba /etc/group
grep nobody /etc/group
id oracle
id nobody

Si no existen crealos con:


/usr/sbin/groupadd oinstall
/usr/sbin/groupadd dba
/usr/sbin/groupadd nobody
/usr/sbin/useradd -c “Oracle Software Owner” -g oinstall -G dba oracle
/usr/sbin/useradd -g nobody nobody
# cambiamos el password del usuario oracle
passwd oracle

Si tienes problemas usa el menu principal (Administracion > Usuarios y grupos) para crear el usuario oracle y añadirlo a los grupos oracle y dba. Seria tambien recomendable que le dieras
permisos de administracion.

Creamos el directorio base de oracle (/u01/app/oracle), y opcionalmente un directorio de datos para las bases de datos que creemos (/u02/oradata):

mkdir -p /u01/app/oracle
mkdir -p /u02/oradata
chown -R oracle :o install /u01 /u02
chmod -R 775 /u01 /u02

Cuando no creamos un directorio de datos, oracle usa /u01/app/oracle/oradata. Cada base de datos ocupa un subdirectorio del directorio de datos.

conectate como usuario oracle y añade esto al fichero /home/oracle/.bash_profile:

umask 022
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=/u01/app/oracle/product/10.1.0/db_1; export ORACLE_HOME
ORACLE_SID=test; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
ORACLE_OWNER=oracle; export ORACLE_OWNER
#TNS_ADMIN=/home/oracle/config/10.1.0 export TNS_ADMIN
NLS_LANG=SPANISH_SPAIN.WE8ISO8859P1; export NLS_LANG
#ORA_NLS10=${ORACLE_HOME}/db_1/nls/data; export ORA_NLS10
CLASSPATH=${CLASSPATH}:${ORACLE_HOME}/jdbc/lib/classes12.zip
LD_LIBRARY_PATH=${ORACLE_HOME}/lib; export LD_LIBRARY_PATH
DISABLE_HUGETLBFS=1; export DISABLE_HUGETLBFS
TEMP=/tmp; export TEMP
TMPDIR=/tmp; export TMP
PATH=$PATH:/u01/app/oracle/product/10.1.0/db_1/bin; export PATH

Crea tambien estos directorios:

mkdir -p /home/oracle/config/10.1.0
mkdir /var/lock/subsys

Vale nos va tocando ya la instalacion grafica:

si estamos en una maquina diferente a la que queremos instalar oracle tenemos que exportar el display en nuestra maquina local y ejecutar:

xhost +
su
export display :0.0

para dar permisos sobre nuestro entorno de ventanas. luego nos conectamos a la maquina remota donde queremos ejecutar la instalacion y exportamos la variable DISPLAY

export DISPLAY=<tu ip local>:0.0

En el caso de que queramos instalar sobre la misma maquina donde nos encontramos (como en el ejemplo). basta con iniciar las X como usuario “oracle” y en el escritorio abrir una consola de comandos. nos desplazamos hacia la carpeta donde descomprimimos el fichero con la base de datos y ejecutamos:

./runInstaller -ignoreSysPreReqs

Ponemos el flag “-ignoreSysPreReqs” porque por defecto se espera instalar en una maquina Red Hat, y fallaria la comprobacion de seguridad al comprobar que nuestro sistema operativo no es ese. con este flag le forzamos a que continue la instalacion independientemente del sistema que tengamos.

Comienza el proceso de instalación:

Aparece la pantalla de bienvenida.Pulsa en continuar:

Selecciona el tipo de instalación. Yo elegí Standard:

Comprueba si tu maquina cumple los requisitos necesarios (Yo no los pase pero continue):

Selecciona Opción de configuración:

Selecciona la configuración de la base de datos:

Especificar Opciones de configuración:

Seleccionar opción de conexión a la base de datos:

Pulsa en Continuar:

Especificar opciones de copia de seguridad (seleccione valores por defecto):

Te pide password para los usuarios de la base de datos, yo seleccione la misma para todos, usa alguna que recuerdes fácilmente:

Resumen de opciones seleccionadas:

Comienza el proceso de instalación de ficheros en el sistema:

Llega un momento que se detiene y nos pide ejecutar 2 scripts:

abres una consola de comandos como “root” los ejecutas y vuelves a pulsar el botón de continuar:

Pulsa en continuar:

Pulsa en continuar:

Ejecución de los servicios automáticos. Pulsa en continuar:

Termina la instalación de la base de datos y al finalizar te indica las rutas URL de las aplicaciones (anotarlas):

Ejemplo de sesion mediante iSQLPlus:

   

Ejemplo de administración de la base de datos con la aplicación web. nota: debes loguearte como sys o dba y con la opcion “sysdba” no normal.

Con esta aplicación web puedes administrar toda la base de datos y crear por ejemplo las tablas de la base de datos y los usuarios que accederán a ellas:

Aunque yo la verdad prefiero el modo consola (con sqlplus) o en su defecto usar el TOAD.

Para arrancar Oracle en modo consola:

te conectas como usuario oracle, asegúrate que tienes cargadas las variables de entornor, ORACLE_HOME, ORACLE_SID, etc. entonces desde consola:

primero paras el listener:

lsnrctl
stop
exit;

despues te conectas a sqlplus:

sqlplus /nolog
connect sys@test as sysdba
startup


Para parar oracle en modo consola:

primero activa el listener:

lsnrctl
start
exit

y luego te conectas con sqlplus:

sqlplus /nolog
connect sys as sysdba
shutdown

o puede que necesites hacer un shutdown immediate

shutdown inmediate

en el caso de que no se cerrara correctamente haz un ps -ef | grep oracle y vete matando los procesos.