Acceso completo (root) a MySQL

Desde su versión 5.7 MySQL ha cambiado su seguridad y ya no permite acceder como usuario root en instalaciones nuevas. Para trabajar de modo similar, primero debemos crear un nuevo usuario MySQL desde ssh por ej phpmyadmin con clave 12345.

Luego debemos ejecutar las siguientes líneas…

sudo mysql -u root

Creamos un nuevo usuario sólo si es necesario:

CREATE USER ‘phpmyadmin’@’localhost’ IDENTIFIED BY ‘12345’;

Le damos permisos completos

GRANT ALL PRIVILEGES ON *.* TO ‘phpmyadmin’@’localhost’ WITH GRANT OPTION;
FLUSH PRIVILEGES;

Listo, con eso ya tenemos listo un usuairo para trabajar libremente.

Anuncios

Instalar PHP 5.6 sobre Debian 9

debian_php

Tal vez por mantener compatibilidad con software antiguo (como es mi caso) sea necesario instalar PHP versión 5.6 además de la versión vigente que actualmente es 7.2.

Para lograrlo podemos seguir los siguientes pasos:

1 Instalamos los paquetes necesarios:

apt install apt-transport-https lsb-release ca-certificates

2 Obtenemos la clave gpg necesaria

wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg

3 Agregamos el repositorio a nuestro sources.list

sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'

4 Actualizamos y luego instalamos PHP 5.6

apt update
apt install php5.6

5 Para cambiar entre las diferentes versiones de PHP que tengamos instaladas:

update-alternatives --config php
There are 3 choices for the alternative php (providing /usr/bin/php).

Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/php7.2 72 auto mode
 1 /usr/bin/php5.6 56 manual mode
 2 /usr/bin/php7.0 70 manual mode
 3 /usr/bin/php7.2 72 manual mode

 

 

 

Cómo utilizar npm detrás de un proxy?

npm-logo-300x163

Para poder utilizar npm detrás de un proxy simplemente debemos realizar los siguientes pasos…

npm config set strict-ssl false
npm config set registry "http://registry.npmjs.org/"
npm --proxy http://proxy.dominio.com:puerto

Tan sencillo como eso. Ahora ya podemos instalar paquetes con npm.

npm i jquery --save

Por ejemplo acabamos de instalar jQuery.

Eso es todo!

Instalar Arc Theme y Papirus Icons mediante PPA

Como primer paso nos aseguramos de eliminar cualquier versión anterior de este theme para evitar conflictos.

sudo rm -rf /usr/share/themes/{Arc,Arc-Darker,Arc-Dark}
sudo rm -rf ~/.local/share/themes/{Arc,Arc-Darker,Arc-Dark}
sudo rm -rf ~/.themes/{Arc,Arc-Darker,Arc-Dark}

Luego agregamos los siguientes repositorios

sudo add-apt-repository ppa:noobslab/themes
sudo add-apt-repository ppa:noobslab/icons

Ahora actualizamos la lista de paquetes disponibles

sudo apt update

Y por último instalamos Arc Theme y sus respectivos íconos

sudo apt install arc-theme arc-icons

Como paso opcional podemos instalar además el set de íconos Papirus y sus complementos para Libre Office y Filezilla

sudo apt install papirus-gtk-icon-theme

Si además utilizamos Libre Office y Filezilla y queremos el aspecto Papirus en ellos instalamos

sudo apt install libreoffice-style-papirus filezilla-theme-papirus

Y eso es todo. Ya tenemos disponible una buena combinación visual entre el theme arc-dark y los íconos papirus-arc-dark.

 

 

 

 

Cómo instalar OCI8 sobre Ubuntu 14.04 con PHP 5.6

DATABASE
Como primer paso necesitamos instalar Oracle Instant Client y su respectivo SDK. Esto podemos hacerlo en 6 cortos pasos:

  1. Descargamos la versión de Instant Client de nuestra preferencia desde Instant Client Downloads for Linux x86-64
  2. Creamos una nueva carpeta /opt/oracle
    sudo mkdir /opt/oracle
  3. Extraemos los archivos descargados anteriormente en la carpeta creada en el paso 2
    cd /opt/oracle
    sudo unzip instantclient-basic-linux-12.1.0.2.0.zip
    sudo unzip instantclient-sdk-linux-12.1.0.2.0.zip
  4. Creamos los siguientes dos enlaces simbólicos
    sudo ln -s /opt/oracle/instantclient_12_1/libclntsh.so.12.1 /opt/oracle/instantclient_12_1/libclntsh.so
    sudo ln -s /opt/oracle/instantclient_12_1/libocci.so.12.1 /opt/oracle/instantclient_12_1/libocci.so
  5. Agregamos la carpeta a nuestra configuración ldconfig
    sudo echo /opt/oracle/instantclient_12_1 > /etc/ld.so.conf.d/oracle-instantclient
  6. Actualizamos los run-time bundings
    ldconfig

 

Llegado este punto ya tenemos instalado nuestro Oracle Instan Client, ahora para poder utilizarlo desde PHP hacemos los siguientes 4 pasos:

  1. Instalamos los siguientes paquetes
    sudo apt install php-pear php5-dev build-essential libaio1
  2. Ahora necesitamos el driver OCI8 (Configuración proxy solo si es necesario)
    sudo pear config-set http_proxy http://proxy.dominio.com:puerto
    sudo pecl install oci8-2.0.10
  3. Agregamos en nuestro archivo de configuración php.ini el nuevo driver
    extension = oci8.so
  4. Reiniciamos el servidor web apache para que tome la nueva configuración
    sudo service apache2 restart

 

Listo! Ya completado todo el proceso podemos acceder a las bases Oracle desde nuestras aplicaciones PHP.

 

 

 

 

 

 

 

 

¿Cómo habilitar el modo de gráficos livianos en Ubuntu?

Dependiendo de nuestro hardware posiblemente unity consuma demasiados recursos debido a los efectos gráficos y animaciones que posee en su configuración base. Pero eso podemos modificarlo haciendo uso del Low Graphics Mode de Unity.

Para poder configurarlo de ese modo primero debemos instalar CompizConfig Settings Manager que no es otra cosa que un administrador de efectos del motor Compiz.

sudo apt install compizconfig-settings-manager

Al finalizar lo abrimos y hacemos click en la opción Ubuntu Unity Plugin. Resaltada en rojo.

compiz0

Luego sobre el final tildamos la opción Enable Low Graphics Mode. También resaltada en rojo.

compiz1

Eso es todo, el cambio se nota inmediatamente. La interface se hace mucho más liviana y ágil.

Impresora Fiscal desde PHP mediante OCX

hasar

Luego de intentar conectarme a una impresora fiscal sobre GNU/Linux durante varios meses y sin éxito, decidí enfrentar este desarrollo sobre Windows. Al investigar el tema me encontré varios documentos informativos provistos por la fábrica de la impresora, en este caso Hasar. En dichos documentos una de las opciones mencionadas para conectar con la impresora es utilizando un control OCX desarrollado y dristribuído de forma gratuita por la fábrica.

Decidí profundizar sobre este método de conexión con la impresora y me puse manos a la obra. Encontré que es necesario registrar en Windows el control OCX que queremos utilizar y podemos hacerlo del siguiente modo.

Dependiendo de si el sistema operativo sobre el que trabajamos es de 32 o 64 bits tenemos que colocar nuestro archivo OCX en las siguientes rutas respectivamente:

c:\windows\system32 ( para 32 bits )
c:\windows\syswow64 ( para 64 bits )

Una vez hecho esto abrimos una consola MS-DOS como administrador y situados en la carpeta del paso anterior ejecutamos por ejemplo:

regsvr32 fiscal150423.ocx

Llegado este punto ya tenemos registrado en Windows el control OCX necesario y podemos incorporarlo a nuestro proyecto de desarrollo.

Como en mi caso necesito acceder a la impresora fiscal desde una aplicación PHP que ya tengo desarrollada comencé a investigar como utilizar el control OCX ya registrado desde PHP. El acceso es muy simple.

Como primer paso es preciso cargar la extensión correspondiente en el archivo php.ini del siguiente modo:

extension=php_com_dotnet.dll

Hecho esto podemos instanciar el objeto OCX para poder trabajar con él:

$hasar = new COM( "hasar.fiscal.1" );

Luego podemos utilizar cualquiera de los métodos disponibles en dicho control, por ejemplo:

$hasar->Puerto = 2;
$hasar->Transporte = PUERTO_SERIE;
$hasar->AutodetectarControlador();
$hasar->AutodetectarModelo();
echo $hasar->Version;
$hasar->PedidoDeStatus;
var_dump( $hasar->Respuesta(0) );

Bueno, hasta acá ya podemos trabajar con lo que necesitemos. El resto dependerá del desarrollo de nuestra aplicación.