Instalar cliente Oralce SQL Plus en Debian

16 May, 2016

Comments

Para instalar SQL PLus de Oracle en Debian de una forma fácil y rápida, tendremos que instalar los siguientes paquetes necesarios en el sistema: apt-get install alien rpm libaio1

Una vez instalados los paquetes anteriores, vamos la pagina de descargas de Oracle y descargamos los siguiente paquetes:

oracle-instantclient11.2-basic-11.2.0.2.0.x86_64.rpm
oracle-instantclient11.2-sqlplus-11.2.0.2.0.x86_64.rpm
oracle-instantclient11.2-devel-11.2.0.2.0.x86_64.rpm

Instalamos los paquetes rpm en Debian, esto es posible gracias a Alien, que nos convertirá los paquetes .rpm en paquetes .deb. EL comando para la instalación de los paquetes con alien, es el siguiente:

alien -i oracle-instantclient*-basic*.rpm
alien -i oracle-instantclient*-sqlplus*.rpm
alien -i oracle-instantclient*-devel*.rpm

Para que funcione correctamente debemos especificar la ruta de Oracle basic en el archivo /etc/ld.so.conf.d/oracle.conf en mi caso es la siguiente: /usr/lib/oracle/11.2/client64/lib/

Posteriormente ejecutamos ldconfig para actualizar el vinculo anterior.

Para ejecutar SQL Plus escribimos: sqlplus64

Nos conectamos a nuestro servidor de base de datos Oralce con: sqlplus64 usuario/contraseña@IP:PUERTO/Servicio

Historial en SQLPlus

Si queremos tener un historial de los comandos introducidos en sqlplus64 tendremos que instalar rlwrap: apt-get install rlwrap

Con rlwrap podremos guardar un historial de los comandos para ejecutarlos seria de la siguiente forma: rlwrap sqlplus64 usuario/contraseña@IP:PUERTO/Servicio

Para dejarlo correctamente, podemos añadir un alias en nuestro .bash_aliases de la siguiente forma: nano ~/.bash_aliases

Dentro introducimos lo siguiente: alias sqlplus='rlwrap sqlplus64'

A la hora de ejecutarlo introducimos el nuevo alias, para que funcione el alias, tenemos que cerrar y abrir de nuevo el terminal: sqlplus usuario/contraseña@IP:PUERTO/Servicio

Con esto ya estaría funcionando correctamente SQL Plus en Debian, para poder conectarnos remotamente a nuestro servidor de base de datos Oracle. Si tenéis cualquier duda o problema, comentarla.

Un cordial saludo!

Instalación manual de librerías en QPython [Android]

15 May, 2016

Comments

Como todos los años me toca consultar los decimos de la lotería de navidad de mi familia, así que para ahorrar tiempo, cree un script en Python para consultar los boletos.

Ya que normalmente me suelen asaltar en cualquier lugar para que se los consulte, decidí poder ejecutar el script en mi teléfono para hacerlo portable. La aplicación que utilice es QPython. El problema que me encontré con esta aplicación fue que no disponía de librerías esenciales como request. Para solucionar este error decidí instalar esta libreria de forma manual ya que no encontré otra forma de instalarlo en la aplicación.

Instalar request de forma manual en QPython para Android:

Lo primero que tenemos que hacer es encontrar la ubicación donde tiene las librerías QPython, en mi caso fue: /mnt/sdcard/com.hipipal.qpyplus/lib/python2.7/site-packages/

Lo siguiente fue descargar request de (https://pypi.python.org/pypi/requests/) como requests-2.9.1.tar.gz.

Por ultimo solo tenemos que copiar la carpeta request que se encuentra dentro del paquete requests-2.9.1.tar.gz a la ruta anterior, /mnt/sdcard/com.hipipal.qpyplus/lib/python2.7/site-packages/

Una vez echo esto ya tendremos funcionando nuestra librería de request.

BONUS:

El script en cuestión de la lotería de navidad del 2015:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# https://github.com/Tedezed

import requests

list_numeros = {'89650', '39204', '49038'}

for numero in list_numeros:
respuesta = requests.get('http://api.elpais.com/ws/LoteriaNavidadPremiados', params={'n': numero })
exec respuesta.text
if busqueda['error'] == 0:
print 'Numero ' + str(busqueda['numero']) + ' premio: ' + str(busqueda['premio'])
else:
print 'ERROR en numero ' + str(numero)

if busqueda['status'] == 0:
print 'El sorteo no ha comenzado aún.'
if busqueda['status'] == 1:
print 'El sorteo ha empezado.'
if busqueda['status'] == 2:
print 'El sorteo ha terminado, lista no segura.'
if busqueda['status'] == 3:
print 'El sorteo ha terminado y existe una lista oficial en PDF.'
if busqueda['status'] == 4:
print 'El sorteo ha terminado y la lista de números y premios está basada en la oficial.'

La API utilizada es api.elpais.com la cual nos devuélvele un JSON en formato erroneo: busqueda={"numero":89765,"premio":0,"timestamp":1450785981,"status":1,"error":0}

Que debería ser de este modo: {"busqueda" : {"numero":89765,"premio":0,"timestamp":1450785981,"status":1,"error":0}}

Un saludo!

Instalación de Rockmongo

14 May, 2016

Comments

En esta entrada explicare como instalar Rockmongo en Debian de forma fácil, utilizando repositorios de código de GitHub. Esta herramienta permite realizar labores básicas de administración por medio del navegador. En un principio la configuración posterior de la instalación del mismo debería asegurar solo el acceso desde la red interna o locahost ya que podría comprometer la seguridad de nuestro servidor.

Instalación previa de Mongodb desde repositorios oficiales de Debian: apt-get install mongodb

Instalación de phph5, php5-dev, apache y git como dependencias de RockMongo: sudo apt-get install apache2 php5 php5-dev git

Instalación de extensión para PHP de Mongodb: Descargamos en el directorio tmp ya que este eliminara el contenido temporal posteriormente:

cd /tmp/
git clone https://github.com/mongodb/mongo-php-driver-legacy.git
cd mongo-php-driver-legacy

Proceso de compilación:

phpize
./configure
make all

Si la compilación se realizo con éxito, solo faltaría realizar la instalación como root con el siguiente comando: # make install

Editamos y añadimos la siguiente linea, para activar la extensión: sudo nano /etc/php5/apache2/php.ini

Buscar por: ; Dynamic Extensions extension=mongo.so

Instalación de RockMongo desde repositorio GitHub asegurando la ultima versión en desarrollo, pero si queréis una versión oficial final lo recomendable es bajarla desde la web oficial:

cd /var/www/html/
git clone https://github.com/iwind/rockmongo.git

Es recomendable cambiar la contraseña por defecto de esta herramienta, la cambiar editando el siguiente fichero: nano /var/www/html/rockmongo/config.php $MONGO["servers"][$i]["control_users"]["admin"] = "admin";

Reinicio de Apache2 para cargar los últimos cambios: # systemctl restart apache2.service

Para entrar en Rockmongo entramos desde el navegador a: (http://127.0.0.1/rockmongo/)

Con esto termino mi entrada por ahora.

Un saludo!