[CentOS-es] Conexion Centos y SQL Server

Luis T reywes en gmail.com
Mar Jun 27 21:24:38 UTC 2017


Estimado Aland,

Gracias por responder, he instalado algunas librerias para ver si funciona.
El escenario que tengo es por un lado el Server SQL 2014 y por otro el
CentOS 7.3 con PHP 7.1 necesito conectarme desde CentOS a la base de datos
de SQL Server. Probe la conexion remota hacia el SQL Server y funciona OK
desde otro Windows. Hice una prueba desde Centos hacia Windows Server con
el comando sqlcmd -S <IP> -U <USUARIO> -P <PASSWORD> y se conecta sin
problema incluso puedo consultar datos de las tablas. Me presenta el
siguiente error:

Conexión no se pudo establecer.
Array ( [0] => Array ( [0] => HYT00 [SQLSTATE] => HYT00 [1] => 0 [code] =>
0 [2] => [unixODBC][Microsoft][ODBC Driver 13 for SQL Server]Login timeout
expired [message] => [unixODBC][Microsoft][ODBC Driver 13 for SQL
Server]Login timeout expired ) [1] => Array ( [0] => 08001 [SQLSTATE] =>
08001 [1] => 10013 [code] => 10013 [2] => [unixODBC][Microsoft][ODBC Driver
13 for SQL Server]TCP Provider: Error code 0x271D [message] =>
[unixODBC][Microsoft][ODBC Driver 13 for SQL Server]TCP Provider: Error
code 0x271D ) [2] => Array ( [0] => 08001 [SQLSTATE] => 08001 [1] => 10013
[code] => 10013 [2] => [unixODBC][Microsoft][ODBC Driver 13 for SQL
Server]A network-related or instance-specific error has occurred while
establishing a connection to SQL Server. Server is not found or not
accessible. Check if instance name is correct and if SQL Server is
configured to allow remote connections. For more information see SQL Server
Books Online. [message] => [unixODBC][Microsoft][ODBC Driver 13 for SQL
Server]A network-related or instance-specific error has occurred while
establishing a connection to SQL Server. Server is not found or not
accessible. Check if instance name is correct and if SQL Server is
configured to allow remote connections. For more information see SQL Server
Books Online. ) )

La conexion PHP que tengo es:

<?php
  $serverName = "172.10.10.50"; //serverName\instanceName
  $connectionInfo = array( "Database"=>"TEST", "UID"=>"user",
"PWD"=>"123456");
  $conn = sqlsrv_connect( $serverName, $connectionInfo);

  if( $conn ) {
    echo "Conexión establecida.<br />";
    }else{
    echo "Conexión no se pudo establecer.<br />";
    die( print_r( sqlsrv_errors(), true));
  }
?>

Esto se puede deber algun error de sintaxis en el sqlsrv_connect??


Saludos,

Luis



2017-06-27 12:26 GMT-05:00 Aland Laines <aland.laines en gmail.com>:

> Hola Ojo que estas con dos cosas distintas.. has instalado mssql, pero
> quieres usar sqlsrv_connect, lo cual esta mal, lo correcto es usar
> http://php.net/manual/es/function.mssql-connect.php, otra cosa revisa la
> version de php que estas usando en el servidor en algunas tiene problemas
> de compatibilidad y en otras esta deprecated.
>
> Un abrazo..
>
>
>
>
> El 23 de junio de 2017, 16:30, Efraín Déctor <efraindector en motumweb.com>
> escribió:
>
> > Que raro.
> >
> > Checa esta respuesta: https://stackoverflow.com/a/43687495
> >
> >
> > El 23/06/2017 a las 04:20 p. m., Luis T escribió:
> >
> >> Hola Efraín,
> >>
> >> Si realice la instalacion de php-mssql. de hecho en CentOS me aparece
> >> esto:
> >>
> >> Inline image 1
> >>
> >> Nose si es un error en la sintaxis del sqlsrv_connect aunque ya he
> >> probado varios ejemplos que estan en la web y no doy con el error. Nose
> que
> >> pueda estar afectando la conexion.
> >>
> >>
> >> Saludos,
> >>
> >> Luis
> >>
> >> 2017-06-23 16:11 GMT-05:00 Efraín Déctor <efraindector en motumweb.com
> >> <mailto:efraindector en motumweb.com>>:
> >>
> >>
> >>     Hola.
> >>
> >>     Seguro que instalaste php-mssql (yum install php-mssql) ?
> >>
> >>     Saludos
> >>
> >>
> >>     El 23/06/2017 a las 03:13 p. m., Luis T escribió:
> >>
> >>>     Hola Efraín,
> >>>
> >>>     Gracias por tu respuesta, sabes que sigue todos los pasos pero no
> >>>     me permite conectar la base SQL. Habilite la conexion remota del
> >>>     SQL, desactive firewall. Probe con las tres opciones de conexion
> >>>     pero nada, por telnet si se establece la conexion. Este momento
> >>>     estoy usando esto:
> >>>
> >>>     <?php
> >>>     $serverName = "172.10.10.50\SQL2014, 1433";
> >>>     //serverName\instanceName, portNumber (default is 1433)
> >>>     $connectionInfo = array( "Database"=>"PRUEBA", "UID"=>"user1",
> >>>     "PWD"=>"123456");
> >>>     $conn = sqlsrv_connect( $serverName, $connectionInfo);
> >>>
> >>>     if( $conn ) {
> >>>          echo "Connection established.<br />";
> >>>     }else{
> >>>          echo "Connection could not be established.<br />";
> >>>          die( print_r( sqlsrv_errors(), true));
> >>>     }
> >>>     ?>
> >>>
> >>>     Revise los logs y me aparece esto:
> >>>
> >>>     PHP Fatal error:  Call to undefined function sqlsrv_connect() in
> >>>     /var/www/html/prueba.php on line 4
> >>>
> >>>     Toda la configuracion la realice tal como esta en el tutorial,
> >>>     nose si hay algun error de sintaxis o es necesario habilitar algo
> >>>     en Windows o Centos.
> >>>
> >>>     Cualquier ayuda de antemano gracias.
> >>>
> >>>
> >>>     Saludos,
> >>>
> >>>     Luis
> >>>
> >>>
> >>>     2017-06-22 14:43 GMT-05:00 Efraín Déctor
> >>>     <efraindector en motumweb.com <mailto:efraindector en motumweb.com>>:
> >>>
> >>>         Que tal.
> >>>
> >>>         Primero que nada en Centos necesitas instalar php-mssql que
> >>>         está en el repositorio EPEL.
> >>>
> >>>         Para la conexion en PHP sigue la documentación oficial:
> >>>         http://php.net/manual/es/function.sqlsrv-connect.php
> >>>         <http://php.net/manual/es/function.sqlsrv-connect.php>
> >>>
> >>>
> >>>         Saludos
> >>>
> >>>
> >>>
> >>>
> >>>         El 22/06/2017 a las 02:36 p. m., Luis T escribió:
> >>>
> >>>             Estimados,
> >>>
> >>>             Tengo desarrollado una aplicacion PHP en un Centos 7 y
> >>>             necesito conectarlo
> >>>             a un servidor SQL Server donde tengo una base de datos,
> >>>             para poder
> >>>             almacenar ahi la informacion. He buscando en internet
> >>>             informacion pero
> >>>             todavia no lo tengo bien claro. Alguien que me pueda
> >>>             indicar cual es la
> >>>             mejor forma para realizar esto, de antemano agradezco sus
> >>>             respuestas,
> >>>             gracias.
> >>>
> >>>
> >>>             Saludos,
> >>>
> >>>             Luis
> >>>             _______________________________________________
> >>>             CentOS-es mailing list
> >>>             CentOS-es en centos.org <mailto:CentOS-es en centos.org>
> >>>             https://lists.centos.org/mailman/listinfo/centos-es
> >>>             <https://lists.centos.org/mailman/listinfo/centos-es>
> >>>
> >>>
> >>>
> >>>
> >>
> >>
> > _______________________________________________
> > CentOS-es mailing list
> > CentOS-es en centos.org
> > https://lists.centos.org/mailman/listinfo/centos-es
> >
> _______________________________________________
> CentOS-es mailing list
> CentOS-es en centos.org
> https://lists.centos.org/mailman/listinfo/centos-es
>


Más información sobre la lista de distribución CentOS-es