miércoles, 25 de mayo de 2016

Cambiar la zona horaria en MySQL

Con la siguiente sentencias podrás consultar la zona horaria:

1
mysql> SELECT @@global.time_zone, @@session.time_zone, TIMEDIFF(NOW(), UTC_TIMESTAMP);

Para cambiarla, puedes hacerlo con o sin reinicio del servidor MySQL. Aquí te dejo los pasos para cada una de las opciones:


Opción 1: Con reinicio del servicio

Es necesario editar el archivo "/etc/my.cnf"

Agrega o modifica la línea:

default-time-zone = '-04:00'

Luego reinicia el servicio:

$ service mysql restart



Opción 2: Sin reiniciar el servicio

En este caso puedes cambiar la zona horaria para que aplique a nivel global o solo para la sesión actual en la que estás (osea, se te desconectar y vuelves a entrear, se perderá la zona horaria elegida anteriormente)

Si el cambio lo quieres hacer global, la sentencia debe ser la siguiente:

1
mysql> SET GLOBAL time_zone = '-04:00';


En cambio, si quieres que solo aplique a la sesión actual, la sentencia debe ser esta:

1
mysql> SET time_zone = '-04:00';



Bonus (Linux):

Si se te complica utilizar números para especificar la zona horaria y te sientes más cómodo o familiarizado con los nombres, puedes agregarlos a MySQL muy fácilmente si estás trabajando en GNU/Linux (supongo que para Windows será igualmente fácil pero yo no entro ahí). Tan solo ejecuta el siguiente comando en la shell:

$ mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -uroot -p mysql

Con esto ya puedes realizar los cambios de la zonas horarias de la siguiente forma:

1
mysql> SET time_zone='America/Santiago';
o
1
mysql> SET GLOBAL time_zone='America/Santiago';

* Puede que requiera reinicio del servicio para para refrescar data en cache de antiguas zonas horarias (en caso de existir).

viernes, 20 de mayo de 2016

Error de SSL en módulo HTTP::Response de Perl

Si por alguna razón no se pueden conectar a un sitio con SSL utilizando el módulo "HTTP::Response" de Perl, puede ser que les falte una librería.

El error sería el siguiente:
Can't connect to www.example.com:443

Y los módulos afectados pueden ser, por ejemplo:
HTTP::Response, REST::Client u otros.

Intente instalar "IO::Socket::SSL"

cpan
cpan -i IO::Socket::SSL

cpanm
cpanm IO::Socket::SSL

Ejecuten el siguiente comando y vean si ya pueden conectarse:

lwp-request -USed https://www.example.com/

Ojalá les funcione, sino a seguir navegando por las oscuras aguas de la Internet.