[CentOS-es] Conexion Centos y SQL Server

Luis T reywes en gmail.com
Jue Jun 29 03:01:02 UTC 2017


Estimados,

Estoy instalando nuevamente el CentOS de cero. Alguien me puede pasar link
donde se explique como instalar los drivers de SQL Server 2014. Ya segui el
tutorial de este link pero no funciono
https://www.microsoft.com/en-us/download/details.aspx?id=20098. Ahora voy a
probar con este tutorial
https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server
. La idea es poder conectar los dos servidores usando un script PHP.
Cualquier sugerencia es bienvenida, gracias.


Saludos,

Luis

2017-06-28 6:08 GMT-05:00 Elio Bastias, Project Managers <
elio.bastias en gmail.com>:

> Luis,
> Buenos días,
>
> si bien desde la consola de CentOS tenes conectividad a la DB que esta en
> un Windows, no tiene nada que ver, por que los parametros de configuración
> del comando de línea es uno y los del script son otros, por ejemplo en el
> script tenes que pasar un array asociativo mientra que en el comando de
> línea no.-
>
> Así que te sugiero revises la configuración del php.ini si esta todo lo
> necesario para soportar el conector de la db de MS SQL Server, y fíjate
> también si esta configurado el acceso remoto a aplicaciones en este caso
> del script.- y Te sugiero que pruebes con el poniendo el nombre del
> servidor como se ve en windows y el nombre de la db como se ve en el
> MSSQLServer.-
>
> Sin más,
> Saluda Atte.,
> Eb
>
> El 27 de junio de 2017, 23:37, Luis T <reywes en gmail.com> escribió:
>
> > Estimados,
> >
> > Gracias por responder, voy revisar la información que me enviaron. Como
> les
> > digo tengo problemas en la conexión con el script de PHP y tengo
> instalada
> > la versión 7.1 nose si solo es compatible con la versión PHP 5.5. Lo que
> si
> > es que al momento de digitar en la consola de CentOS: *sqlcmd -S
> > 172.10.10.50 -U user -P 123456* se conecta sin problemas y tengo acceso a
> > las bases de datos del SQL Server y consultar datos de las tablas. Voy a
> > seguir revisando para ver donde esta el problema.
> >
> >
> > Saludos,
> >
> > Luis
> >
> > 2017-06-27 19:48 GMT-05:00 Aland Laines <aland.laines en gmail.com>:
> >
> > > Hola nuevamente,
> > >
> > > http://php.net/manual/es/sqlsrv.requirements.php
> > >
> > > aunque dice que tiene soporte en linux:
> > >
> > > https://docs.microsoft.com/en-us/sql/connect/php/system-
> > > requirements-for-the-php-sql-driver#operating-systems
> > >
> > > anota que soporta estas distros
> > >
> > >
> > >    - Ubuntu 15.04 (64-bit)
> > >    - Ubuntu 16.04 (64-bit)
> > >    - Red Hat Enterprise Linux 7 (64-bit)
> > >
> > > debes de utilizar la version correctar del driver, en tu phpinfo: te
> > > muestra el driver sqlsrv instalado?
> > >
> > >
> > > Saludos..
> > >
> > >
> > >
> > >
> > > El 27 de junio de 2017, 18:21, Elio Bastias, Project Managers <
> > > elio.bastias en gmail.com> escribió:
> > >
> > > > Buenas tardes, Luis,
> > > > Mira con respecto al error, lo que rescato es "Login timeout", lo que
> > > > parece que ni encuentra la db, lo que intentaría sería colocar el
> data
> > > > source name (dsn), como lo recomienda el sitio (
> > > > https://docs.microsoft.com/en-us/sql/connect/php/connection-options
> ),
> > lo
> > > > importante también es que si se instalo bien el driver (
> > > > https://www.microsoft.com/download/details.aspx?id=20098), y saber
> > bien
> > > la
> > > > versión que tenes instalada de PHP, lo que te recomendaría sería ir a
> > > PDO,
> > > > ya que te permite tener una capa de abstracción de las DB, y no
> > > preocuparte
> > > > cuando manejes diferentes tipos de DB ó migres a otro.-
> > > > También tene en cuenta la sintaxis que te da php:
> > > > <?php
> > > > $serverName = "serverName\sqlexpress"; //serverName\instanceName
> > > > $connectionInfo = array( "Database"=>"dbName", "UID"=>"userName",
> > "PWD"=>
> > > > "password");
> > > > $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));
> > > > }
> > > > ?>
> > > > ya que en $serverName, te pide el nombre del servidor y no una IP,
> por
> > > > ejemplo por hay no esta resolviendo la IP con el nombre de la Db, ya
> > que
> > > > por lo que entiendo vos estas en un CentOS y la DB en un windows así
> > que
> > > > puede llegar a ser ese el problema, para decirte me apoyo en el
> mensaje
> > > de
> > > > error "Server is not found or not accessible. Check if instance name
> is
> > > > correct and if SQL Server is configured to allow remote connections"
> > > >
> > > > Espero haberte dado una mano, y sino comenta como lo solucionaste
> para
> > > que
> > > > otros lo puedan tener en cuenta.-
> > > > Saludos
> > > >
> > > >
> > > > El 27 de junio de 2017, 18:24, Luis T <reywes en gmail.com> escribió:
> > > >
> > > > > 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
> > > > > >
> > > > > _______________________________________________
> > > > > CentOS-es mailing list
> > > > > CentOS-es en centos.org
> > > > > https://lists.centos.org/mailman/listinfo/centos-es
> > > > >
> > > >
> > > >
> > > >
> > > > --
> > > > Elio Bastias
> > > > Project Manager
> > > > Smart - IT
> > > > |Open Source Innovation | Open Source Communications
> > > > Estrategia y Management en Comunicaciones e Infraestructurade IT
> > > >
> > > > |Gtalk/Mail: consultor en eliobastias.com.ar
> > > >
> > > > |Soporte & Mantenimiento ->http://goo.gl/BEvg73
> > > >
> > > > |-----------------------------------------------------------
> > > > -------------------------------------
> > > > Los precios cotizados por el equipamiento están expresados en Dólares
> > > > Estadounidenses e incluyen todos los impuestos vigentes que gravan
> este
> > > > tipo de operaciones, excepto el Impuesto al Valor Agregado (I.V.A.)
> > que,
> > > en
> > > > caso de corresponder, será adicionado en el porcentaje que establezca
> > la
> > > > ley al momento de realizar la facturación. Los precios resultantes de
> > la
> > > > presente serán pagaderos en dólares estadounidenses billete o en su
> > > defecto
> > > > en pesos, según cotización del dólar libre tipo vendedor del Banco de
> > la
> > > > Nación Argentina del día inmediato anterior al de efectivo pago.
> > > > Referencia: www.bna.com.ar
> > > > |-----------------------------------------------------------
> > > > -------------------------------------
> > > > Este mensaje y, en su caso, sus archivos adjuntos, son informaión
> > > > confidencial enviada para uso exclusivo de su destinatario. Está
> > > > terminantemente prohibida la lectura, copia, duplicado o reenvío de
> > esta
> > > > información por parte de cualquier persona distinta del destinatario.
> > Si
> > > > usted ha recibido este mensaje por error, por favor elimínelo e
> informe
> > > de
> > > > inmediato a su remitente.
> > > > |-----------------------------------------------------------
> > > > -------------------------------------
> > > > Antes de imprimir, pensá en tu responsabilidad y compromiso con el
> > MEDIO
> > > > AMBIENTE.-
> > > > _______________________________________________
> > > > 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
> > >
> > _______________________________________________
> > 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