Solapas principales

Imaginemos el siguiente escenario:

Tenemos una web en PHP en un servidor Linux con Apache y tenemos una base de datos en un servidor SQL alojado en una máquina Windows. La base de datos tiene todos los registros de clientes con sus datos y facturación. Queremos que al hacer login en la web esta haga consultas a la base de datos de Microsoft SQL server.

Para poder hacer la conexión entre PHP y MS SQL utilizaremos Freetds (set de librerías Linux & Unix) y la extensión MS SQL. En la familia Debian lo instalamos así:

sudo apt-get install freetds-common freetds-bin unixodbc php5-sybase

Reiniciamos apache:

sudo /etc/init.d/apache2 restart

El archivo de configuración de FREETDS:

nano /etc/freetds/freetds.conf

Podemos ver en phpinfo si tenemos la libreria freetds activa: Para comprobarlo creamos un archivo de nombre info.php con el siguiente contenido:

phpinfo();

Si tenemos xampp movemos el archivo info.php al directorio /opt/lampp/htdocs o si tenemos apache instalado en sistema en /var/www.

Abrimos el navegador y en la url :

http://localhost/info.php

Ahora desde la terminal podemos testear si conecta con Ms sql.

Abrimos una terminal:

tsql -H mi_servidor_sql -p puerto -U usuario_sql -P contraseña -D base_de_datos

Ejemplo:

tsql -H 192.168.1.221 -p 1433 -U sa -P sql123 -D EMPRESA

También podemos utilizar este código php para comprobar la conexión.

Igual que con el info.php el archivo test.php lo copiamos al directorio web y llamamos al archivo desde la url del navegador:

Creamos un archivo test.php con el siguiente código:

<?php
 
$link = mssql_connect('192.168.1.221', 'sa', 'sql123');
    if(!$link) {
             echo 'Could not connect';
             die('Could not connect: ' . mssql_error());
                    
    }
    echo'Successful Sql Connection';
    msssql_close($link);
    
?>
En la linea :
$link = mssql_connect () sustituimos "192.168.1.221" por la ip de la máquina windows con el servidor sql apuntando a la instancia SQL, por ejemplo:
 
192.168.1.130\VIRTUAL
 
"VIRTUAL" es el nombre de la instancia SQL del servidor MSSQL. Depende de la configuración. Puede ser directamente en la ip o dominio.
 
"sa" es el usuario admin de SQL, lo sustituimos por el usuario que tenemos en SQL asociado y con permisos a la base de datos.
 
"sql123" es la contraseña. Sustituimos por la nuestra.

Si la conexión se establece con éxito podremos ver en el navegador:

Successful Sql Connection

Adjunto archivos info.php y test.php en zip a pie de post. 

 

Archivo: 

Contenido por etiquetas

Linux Linux Tips Solución Linux Help Drupal Arch-Linux Media Front Terminal Hacking Videos Shell Linux seguridad Manjaro Mac OSX Servers Linux-Distro Consola Linux Guías Comandos Android Screencast Ubuntu Drush Windows MacOS Joomla Backtrack Command Line Cracking Debian Xampp Compiz Fusion Seguridad Drupal 7 Skype Instalación Media Youtube Telefonía Virtualmin ROOT Servidor Local Antergos CyanogenMod KDE Elastix Server Sysmonitor ClamAv ownCloud error Descargar Kali Linux Samba Libros PDF Joomla Seguridad Setup Nivo Slider Escritorio Views Grub Webmin Drush_Make Líder Virtual Whatsapp Kali SCP SSH Unix Noticias mysql Asterisk Boot PHP servidor web Xampp 1.8.1 dd Chrome Distros Top 500 Youtube Rootear url Limpias Drush Windows Katana apache ROM SEO url canonica Iphone Joomla 3.0 XFCE Centos Metasploit Galaxy S DARKY´S ROM (bootstrap) exec: 90: : Permission denied Open DNS Conky CryptKeeper LPS Metasploitable Rarcrack TinyMCE CKEditor .make Drupal 8 Streaming Atraci Tails Telegram Sigram duff Fish ncdu PBX g729 Wol Códec String htaccess SA-CORE-2013-003 Gimp Prestashop Papá FINK youtube-dl Sox Redgum Imagesloaded Archserver Wake On Lan Viber Real Estate Galaxy S3 vs Iphone 5 Webform Layout Horizontal Slider Media Vimeo Acquia Tilt 3D pipenv Python Django Galaxy S4 Homebrew Java6 Windows 10 MS-SQL SQL Kingsoft Office WPS MediaFront 1and1 VMplayer Inyection SQL Mounty IMCE Secure Copy Alsi Script Google-Earth Arranque compartir red firewall sistema bitacora fallo firestarter Cain & Abel sniffing Office gh22ns50 grep GCP Driver r8168 Triple-Boot Webform_Layout Webform Views Horizontal Slider Xwinwrap dselect winAUTOPWN Shutter Supercomputadoras Aircrack-ng Encriptar Enlaces Externos Nube Joomla 2.5 FTP Wine Line Redes Fing Overlook Fing LAMP PhpMyadmin Cerebro FDesktopRecorder Piropos Geek Texto Sustituir Jdownloader 10 Millones Ahorra Migrar Munich internal server error 500 Recovery