posted by admin on 07/13/07
El equipo de soporte de Xooma.com se complace en hacer público este breve resumen del proceso seguido en
OpenSuse 10.x para agregar soporte a
MSSQL en
PHP usando la librería
FreeTDS.
Con el fin de ser breves, ejecuta los siguientes comandos como el usuario
root:
- Descargar FreeTDS desde http://www.freetds.org
- Extrae el archivo y realiza la instalación en /usr/local/freetds:
tar xzf freetds-XXXX.tar.gz
cd freetds-XXXX/
./configure --prefix=/usr/local/freetds
make
make install - Si estas trabajando en un x86_64 asegurate de crear en el directorio /usr/local/freetds un enlace simbólico a lib usando:
ln -s lib lib64
- Descargar el RPM con el código fuente de la version de PHP instalada en la distribución desde ftp://ftp.suse.com/pub/suse/, si se han realizado actualizaciones el código fuente se encontrará en ftp://ftp.suse.com/pub/suse/update/ (debes buscar el directorio src)
- Instalar el código fuente usando: rpm -iUhv php5-5.XXXXX.rpm
- Cambia el directorio a /usr/src/packages/SOURCES/
- Extrae el archivo .tar.bz2 con el código fuente original con el siguiente comando: tar xjf php-5.XXXX.tar.bz2
- Cambia al directorio recién creado: cd php-5.XXXX/
- Configura PHP para crear el módulo dinámico mssql:
./configure --with-mssql=shared,/usr/local/freetds - Ahora construye PHP (esto se va a demorar un rato)
make - Copia el archivo generado con el siguiente comando:
cp modules/mssql/mssql.so /usr/lib64/php5/extensions (para x86_64)
cp modules/mssql/mssql.so /usr/lib/php5/extensions (para x86)
- Ahora, pasa al directorio /etc/php5/conf.d:
cd /etc/php5/conf.d/
- y crea una entrada para la configuracion de mssql:
echo "extension=mssql.so" > mssql.ini - reinicia apache:
/etc/init.d/apache2 restart
Es importante que te asegures de crear un archivo
/usr/local/freetds/etc/freetds.conf de acuerdo a las indicaciones de la documentación para que puedas utilizar la función
mssql_connect() y de ser posible ten a la mano un script que invoque la función
phpinfo() para asegurarte que los cambios han surtido efecto.
Un ejemplo muy sencillo de un
freetds.conf que funciona con
Sql Server 2000 es el siguiente:
[global]
tds version = 7.0
[myserver]
host = 192.168.1.12
port = 1433
Y finalmente desde
PHP me conecto a la base de datos "NorthWind" usando los comandos:
$conn = mssql_connect('myserver', 'usuario', 'clave');
mssql_select_db('NorthWind', $conn);
Esperamos que esta pequeña nota sea de alguna ayuda a todos los que están tratando de incorporar esta funcionalidad en
OpenSuse.
Equipo de SoporteXooma.com