viernes, 15 de marzo de 2013

INSTALANDO SSH2_CONNECT EN CENTOS 5

INSTALANDO SSH2_CONNECT EN CENTOS 5

Hola amigos,

 Para comentarles que tuve una dificultad de poder transferir archivos de una estación LINUX a otra buscando documentación referente a ello encontré varias utilidades en php especialmente con las funciones ssh2 la cual pueden ver en el siguiente link http://www.php.net/manual/en/ref.ssh2.php sin embargo esta librería no es nativa de CENTOS por lo que hay que instalarla para poder utilizarla.

 A continuación muestro los pasos para la instalación de ssh2 en un sistema operativo linux con distribucion CENTOS 5.X.

En primer lugar descargamos las librerias de instalacion en los siguientes links
para PECL http://pecl.php.net/package/ssh2 y para ssh2 http://pecl.php.net/package/ssh2

yo descargue las librerías en la ruta /usr/src por lo que procedo a ingresar a dicho directorio
cd /usr/src/



descomprimo la libreria libssh2
tar -zxvf libssh2-1.4.3.tar.gz

ingreso al directorio generado en el paso anterior
cd libssh2-1.4.3

aplico el comando configure para configurar la libreria libssh
./configure

compilo
make


instalo el compilado

make install

retrocedo a un directorio anterior.
cd ..

descomprimo la libreria ssh2
tar -zxvf ssh2-0.12.tgz

ingreso al directorio generado en el paso anterior
cd ssh2-0.12

phpize

configuro en ssh2 habilitando dicho opcion

./configure --with-ssh2

compilo
make

instalo el compilado
make install

verifico que el compilado se encuentre en la ruta /usr/lib/php/modules/
ssh2.so


edito el php.ini ubicado en /etc/php.ini y agrego la siguiente linea
extension=ssh2.so

por ultimo reinicio el servicio http
service httpd restart

referencias.
http://www.php.net/manual/en/ssh2.installation.php





lunes, 25 de febrero de 2013

Linux (Centos)+ Apache + Php + MSSQLSERVER With ODBC Parte 1

Hola queridos amigos,

 Antes que nada déjenme decirles que soy un novato en toda la plataforma Linux, PHP, Mysql y open source en general  sin embargo he tenido el atrevimiento de colocar este post para ayudar a otras personas que no tengan la misma dificultad que yo, para ello les comentare que en estos momentos me han solicitado realizar un pequeño proyecto en donde me solicitan crear algunos aplicativos en PHP sobre Linux y que consulten bases de datos MSSQLServer esto para mi es algo nuevo por lo que investigue y pude realizar dicha conexión. Ahora, hay que aclarar que para realizar ello yo tome en cuenta 2 opciones.

  Opción 1
  Re compilar el PHP con soporte a MSSQLSERVER

 Opción 2
 Utilizar drive ODBC

Para ambos casos logre completar dicha tarea, sin embargo en este post explicaré como realizar dicha conexión con ODBC.

En primer lugar hay que verificar que nuestro servidor de base de datos en este caso MSSQLSERVER este visible en nuestra red para verificar ello lo podemos hacer con un comando telnet en la consola de Linux con el siguiente comando

# telnet 192.168.1.254 1433

Connected to 172.16.8.5 (172.16.8.5).
Escape character is '^]'.

 Si la respuesta fue como la mostrada entonces el servidor de base de datos esta trabajando correctamente y podemos acceder a el. a continuación detallare los pasos que seguí para realizar la configuración.


Ingresamos al directorio donde suelo colocar los archivos que descargo
# cd /usr/src/

Procedemos a descargar freetds o en el link http://freetds.schemamania.org/
#wget ftp://ftp.astron.com/pub/freetds/stable/freetds-stable.tgz


Descomprimos el freetds
#tar -zxvf freetds-stable.tgz

Ingresamos al directorio que hemos generado
#cd freetds-0.91


Configuramos el tds
./configure --with-tdsver=7.0




Compilamos
#make


Instalamos compilados
#make install

A continuación probamos conexión.
#/usr/local/bin/tsql -S 192.168.1.254 -U sa

En seguida ingresamos el password del usuario sa y mostrará el siguiente resultado.

Password:
locale is "es_ES.UTF-8"
locale charset is "UTF-8"
using default charset "UTF-8"
1>

Salimos del prompt anterior con quit.

1> quit

Verificamos si tenemos paquetes necesarios.

#yum list freetds*

Available Packages
freetds.i386                             0.64-11.el5.centos     extras
freetds-devel.i386                       0.64-11.el5.centos     extras
freetds-doc.i386                         0.64-11.el5.centos     extras

#yum list unixodbc*

unixODBC.i386                            2.2.11-7.1             installed
Available Packages
unixODBC.i386                            2.2.11-10.el5          base
unixODBC-devel.i386                      2.2.11-10.el5          base
unixODBC-kde.i386                        2.2.11-10.el5          base
unixODBC-libs.i386                       2.2.11-10.el5          base
unixODBC64.i386                          2.2.14-3.el5           base
unixODBC64-devel.i386                    2.2.14-3.el5           base
unixODBC64-libs.i386                     2.2.14-3.el5           base

Instalamos paquetes necesarios
yum install freetds.i386
yum install freetds-devel.i386

yum install unixODBC.i386
yum install unixODBC-devel.i386

Ingresamos al archivo /etc/odbc.ini

y agregamos el siguiente contexto
[odbc-test]
Driver = ms-sql
Description = test
Server = 192.168.1.254
Port = 1433
User = sa
Password = mipassword
Database = Northwind

Ingresamos al archivo /etc/odbcinst.ini

y agregamos el siguiente contexto
[ms-sql]
Description = TDS connection
Driver = /usr/lib/libtdsodbc.so
Setup = /usr/lib/libtdsS.so
FileUsage = 1
UsageCount = 1






Ingresamos al archivo /etc/freetds.conf

y agregamos el siguiente contexto
[ms-sql]
host = 192.168.1.254
port = 1433
tds version = 7.0

en el prompt de la linea de comandos probamos la conexión

# isql -v odbc-test sa mipassword

y nos arrojara el siguiente resultado

+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL>

probamos query
SQL> select * from Customers

y nos mostrara el resultado del SELECT.

Bueno amigos hasta alli he llegado.

Continuare realizando la conexión con PHP y MSSQLSERVER en un siguiente post

Saludos.

Juan Cucho

Links references: