domingo, 6 de diciembre de 2009

El DBA del Futuro... es una Mujer

Es la única conclusión que se puede obtener de estos vídeos que Oracle esta difundiendo para publicitar varios productos dirigidos a DBA's. Y sino, juzgar vosotros mismos:

DBA 2.0 - SQL Tuning
Música del lejano oeste para el Director de Operaciones. En este caso es publicidad del Tuning Pack que se puede adquirir como opción al Oracle Enterprise Manager.


DBA 2.0 - Managing Change
Los gorritos de navidad, no tienen precio, pero ver al DBA 1.0 decir "no se puede hacer"... tiene su gracia. En este caso se trata de Real Application Testing, al contrario que el anterior, que se disfruta desde la 10g. RAT es una de las "joyas" de la nueva versión 11g.


No cobró por la publicidad, pero tras la semana del #manifiesto, algo de humor no viene mal. Además el primero lo utilizo casi cada día y el segundo estoy deseando utilizarlo. No es que este muy contento por ver como dejan al pobre DBA 1.0, pero que lo "femenino" esta de moda... eso nadie lo duda.

viernes, 4 de diciembre de 2009

Borrar una Tabla [MICRO]

¿Qué le ocurre a una consulta si borramos la tabla mientras se esta ejecutando?

Es la pregunta que apareció el otro día en el blog de Jonathan Lewis "Oracle Scrachpad", tal como comentan es una pregunta más "académica" que "practica", pero siempre esta bien clarificar conceptos.

Antes de nada, evidentemente, si hay una transacción sobre la tabla, no podremos borrarla. Comentar que si alguien realiza la prueba, necesitará una tabla lo suficientemente grande como para lanzar el DROP antes de que finalice la consulta.

Para borrarla existen dos opciones y dependen del trato de la papelera de reciclaje. Si señores, Oracle a partir de la versión 10g dispone de una Papelera de Reciclaje.
  1. Sin Purgar. Solo se ha renombrado el objeto en el diccionario de datos, por lo que la consulta finalizará correctamente: DROP TABLE emp;
  2. Con Purgado. DROP TABLE emp PURGE; Aparecerá el siguiente error: ORA-08103: object no longer exists
No dudéis en omitir la clausula PURGE en vuestro entornos productivos.

jueves, 3 de diciembre de 2009

Un Clásico Reformado: LAMT (como LAMP pero con Tomcat)

Un clásico, no solo de blogs, sino de cualquier web del "mundillo" que se precie ha de tener un manual de LAMP. Es más, seguro que hay quien los colecciona =) . Es por eso que no me he podido resistir a publicar mi propia versión de LAMT, que es como el LAMP pero con aplicaciones Java (Tomcat) en lugar de PHP.

Sobre la elección del Sistema Operativo mejor hablamos otro día, pero creo que las aplicaciones Java se están consolidando en cierto entornos, por lo que no es del todo descabellado tratar este tema... ¿no?

1. MySQL
Debido a que en los paquetes de la versión estable solo se dispone de la versión 5.0, se recurre a los "backports" de Debian para instalar la versión 5.1:
  • Se añade el un nuevo origen en el archivo /etc/apt/sources.list :
deb http://www.backports.org/debian lenny-backports main contrib non-free
  • Se actualiza la lista de paquetes: # apt-get update
  • Se instalan los certificados del nuevo origen de paquetes: # apt-get install debian-backports-keyring
  • Instalamos MySQL 5.1 : # apt-get -t lenny-backports install mysql-server-5.1 mysql-client-5.1
Se actualizará el paquete mysql-common pasándolo de la versión "estable" a la del "backport", además de instalarse varias dependencias.

LISTO!

2. JDK de Sun (ahora Oracle)
Por defecto viene instalada una versión GNU del "runtime" de Java:
# java -version
java version "1.5.0"
gij (GNU libgcj) version 4.3.2


Por lo que para instalar la versión de Sun (ahora Oracle), seguiremos los siguientes pasos:
  • Añadiremos los paquetes non-free a los orígenes oficiales de Debian en el archivo /etc/apt/sources.list :
deb http://ftp.rediris.es/debian/ lenny main non-free
deb-src http://ftp.rediris.es/debian/ lenny main non-free

deb http://security.debian.org/ lenny/updates main non-free
deb-src http://security.debian.org/ lenny/updates main non-free

deb http://volatile.debian.org/debian-volatile lenny/volatile main non-free
deb-src http://volatile.debian.org/debian-volatile lenny/volatile main non-free
  • Actualizamos la lista de paquetes: # apt-get update
  • Instalamos el nuevo "runtime", junto al plugin de firefox y algunas fuentes: # apt-get install sun-java6-jdk sun-java6-plugin sun-java6-fonts ttf-baekmuk ttf-unfonts ttf-unfonts-core ttf-kochi-gothic ttf-sazanami-gothic ttf-kochi-mincho
  • Debian seguirá utilizando la versión GNU del "runtime" hasta que no cambiemos su alternativa: # update-java-alternatives -s java-6-sun
  • Por último añadimos un par de variables de entorno en /etc/profile (o /etc/environment):
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export JRE_HOME=$JAVA_HOME/jre

LISTO!

3. Tomcat

En la versión estable de Debian se mantienen los paquetes de Apache Tomcat 5.5, por lo que realizaremos la instalación de forma manual a partir de los binarios:
  • Descargamos la versión 6 de Tomcat: # wget http://apache.rediris.es/tomcat/tomcat-6/v6.0.20/bin/apache-tomcat-6.0.20.tar.gz
  • Descomprimimos el archivo: # tar -xvzf apache-tomcat-6.0.20.tar.gz
  • Movemos el directorio de la aplicación a su ubicación final (/usr/local o /opt en función de nuestras preferencias): # mv apache-tomcat-6.0.20 /usr/local/
  • Creamos algunos enlaces simbólicos para simplificar la gestión:
# ln -s /usr/local/apache-tomcat-6.0.20 /usr/local/tomcat
# ln -s /usr/local/tomcat/conf /etc/tomcat
# ln -s /usr/local/tomcat/logs /var/log/tomcat
# ln -s /usr/local/tomcat/bin/catalina.sh /usr/bin/tomcat
  • Borramos ejemplos y archivos de otras plataformas
# cd /usr/local/tomcat/bin
# rm *.exe *.bat
# cd /usr/local/tomcat/webapps
# rm -rf docs examples
  • Creamos el usuario del servicio:# useradd -r --home-dir /usr/local/tomcat -m --groups nogroup --shell /bin/false tomcat
  • Damos privilegios al usuario sobre el software: # chown -R tomcat /usr/local/tomcat
  • Creamos un script de inicio /etc/init.d/tomcat, os recomiendo el que publican aquí.
  • Activamos el script que acabamos de crear
# chmod 755 /etc/init.d/tomcat
# update-rc.d tomcat defaults
  • Añadir la variable de entorno en /etc/profile (o /etc/environment):
export CATALINA_HOME=/usr/local/tomcat

LISTO!

4. Apache

Es el que más me gusta =)
  • Instalamos Apache: # apt-get install apache2
LISTO!

Existen otros detalles como: la conexión entre Apache y Tomcat (mod_jk), como conectar el Tomcat a un MySQL u Oracle en otro equipo distinto...

Lo se, ¿y esto a que viene? se preguntarán algunos... llamarlo melancolía.

miércoles, 2 de diciembre de 2009

Manifiesto "En defensa de los derechos fundamentales en Internet"

Ante la inclusión en el Anteproyecto de Ley de Economía sostenible de modificaciones legislativas que afectan al libre ejercicio de las libertades de expresión, información y el derecho de acceso a la cultura a través de Internet, los periodistas, bloggers, usuarios, profesionales y creadores de Internet manifestamos nuestra firme oposición al proyecto, y declaramos que:
  1. Los derechos de autor no pueden situarse por encima de los derechos fundamentales de los ciudadanos, como el derecho a la privacidad, a la seguridad, a la presunción de inocencia, a la tutela judicial efectiva y a la libertad de expresión.
  2. La suspensión de derechos fundamentales es y debe seguir siendo competencia exclusiva del poder judicial. Ni un cierre sin sentencia. Este anteproyecto, en contra de lo establecido en el artículo 20.5 de la Constitución, pone en manos de un órgano no judicial -un organismo dependiente del ministerio de Cultura-, la potestad de impedir a los ciudadanos españoles el acceso a cualquier página web.
  3. La nueva legislación creará inseguridad jurídica en todo el sector tecnológico español, perjudicando uno de los pocos campos de desarrollo y futuro de nuestra economía, entorpeciendo la creación de empresas, introduciendo trabas a la libre competencia y ralentizando su proyección internacional.
  4. La nueva legislación propuesta amenaza a los nuevos creadores y entorpece la creación cultural. Con Internet y los sucesivos avances tecnológicos se ha democratizado extraordinariamente la creación y emisión de contenidos de todo tipo, que ya no provienen prevalentemente de las industrias culturales tradicionales, sino de multitud de fuentes diferentes.
  5. Los autores, como todos los trabajadores, tienen derecho a vivir de su trabajo con nuevas ideas creativas, modelos de negocio y actividades asociadas a sus creaciones. Intentar sostener con cambios legislativos a una industria obsoleta que no sabe adaptarse a este nuevo entorno no es ni justo ni realista. Si su modelo de negocio se basaba en el control de las copias de las obras y en Internet no es posible sin vulnerar derechos fundamentales, deberían buscar otro modelo.
  6. Consideramos que las industrias culturales necesitan para sobrevivir alternativas modernas, eficaces, creíbles y asequibles y que se adecuen a los nuevos usos sociales, en lugar de limitaciones tan desproporcionadas como ineficaces para el fin que dicen perseguir.
  7. Internet debe funcionar de forma libre y sin interferencias políticas auspiciadas por sectores que pretenden perpetuar obsoletos modelos de negocio e imposibilitar que el saber humano siga siendo libre.
  8. Exigimos que el Gobierno garantice por ley la neutralidad de la Red en España, ante cualquier presión que pueda producirse, como marco para el desarrollo de una economía sostenible y realista de cara al futuro.
  9. Proponemos una verdadera reforma del derecho de propiedad intelectual orientada a su fin: devolver a la sociedad el conocimiento, promover el dominio público y limitar los abusos de las entidades gestoras.
  10. En democracia las leyes y sus modificaciones deben aprobarse tras el oportuno debate público y habiendo consultado previamente a todas las partes implicadas. No es de recibo que se realicen cambios legislativos que afectan a derechos fundamentales en una ley no orgánica y que versa sobre otra materia.

martes, 1 de diciembre de 2009

Especializarse Demasiado [MICRO]

Acabo de encontrarme con esto con ésto:

"Yesterday we spent the day trial to solve this problem"

En el blog de Alejandro Vargas, donde explica como perdió un día en la instalación de un Oracle RAC, por un problema de negociación con un conmutador. Algo que en lo que no se debería gastar un día. Disponer del control de las infraestructuras, por lo menos durante la implementación, es necesario. No puedes separar la Base de Datos de la Red, del mismo modo que no se puede separar la Administración del Desarrollo.

Especializarse es inevitable, pero todavía recuerdo cuando me comentaban como seleccionaban a Españoles en Europa, por su visión global. Ser los "técnicos para todo" ha de tener sus beneficios...

Nota: Micro-Artículos - Hay muchos temas de los que hablar, pero no siempre se puede escribir un gran artículo.  Por lo que dentro de la limpieza del blog espero no dejar tema sin comentar, aunque sea en forma de [MICRO]blogging !!