2008-09-29 8 views

Respuesta

31

FreeTDS + unixODBC o iODBC

instalar primero FreeTDS, a continuación, configurar uno de los dos motores de ODBC para usar FreeTDS como su controlador ODBC. Luego use la interfaz de línea de comando del motor ODBC.

unixODBC tiene isql, iODBC tiene iodbctest

También puede utilizar su lenguaje de programación favorito (yo he utilizado con éxito Perl, C, Python y Ruby para conectarse a MSSQL)

Personalmente estoy usando FreeTDS + iODBC:

$more /etc/freetds/freetds.conf 
[10.0.1.251] 
    host = 10.0.1.251 
    port = 1433 
    tds version = 8.0 

$ more /etc/odbc.ini 
[ACCT] 
Driver = /usr/local/freetds/lib/libtdsodbc.so 
Description = ODBC to SQLServer via FreeTDS 
Trace = No 
Servername = 10.0.1.251 
Database = accounts_ver8 
+1

En Ubuntu utilizo la ruta del controlador '/ usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so'. Obtengo ERROR [ISQL]: no pudo SQLConnect. –

+0

ODBC es el controlador que permite que Linux hable con MSSQL, y FreeTDS interpreta el protocolo, ¿verdad? – orrymr

+0

Microsoft publicó ayer un servidor SQL público para Linux con soporte para Docker, Ubuntu, etc. https://www.microsoft.com/en-us/sql-server/sql-server-vnext-including-Linux – gavioto

2

Usted no dice lo que quiere hacer con los datos resultantes, pero si se trata de consultas generales para el desarrollo/mantenimiento entonces tendría pensado escritorio remoto para las ventanas Servidor y luego utilizar las herramientas reales de SQL Server en su siempre habría sido una opción más productiva que cualquier otra solución pirateada en Linux.

6

pymssql es un módulo DB-API Python, basado en FreeTDS. Funcionó para mí Cree algunas funciones de ayuda, si es necesario, y úselo desde el shell de Python.

2

Hay una lib de abstracción disponible para PHP. No estoy seguro de lo que soportará la caja de su cliente, pero si es Linux, entonces ciertamente debería apoyar la construcción de una interfaz de consulta PHP con esto: http://adodb.sourceforge.net/ Espero que le ayude.

9

sqsh (http://www.sqsh.org/) + freetds (http://www.freetds.org)

sqsh era principalmente un reemplazo isql de Sybase SQL Server (ahora ASE) pero funciona muy bien para la conexión a SQL Server (siempre y cuando use freetds).

Para compilar, simplemente apunte $ SYBASE a la instalación de freetds y debería funcionar desde allí. Lo uso en mi Mac todo el día.

La mejor parte de sqsh son las características avanzadas, como vinculación de servidor simple sin errores (no es necesario configurar servidores vinculados en SQL Server), control de flujo y bucle (no más concatenar cadenas y ejecutar SQL dinámico) e invisible copia/carga masiva

¡Cualquiera que use cualquier otra herramienta de línea de comandos es simplemente loco! :)

+0

Tiene un problema instalando sqsh: http://stackoverflow.com/questions/18784242/install-sqsh-for-freetds-sql-server – noahlz

+0

'sqsh.org' ya no es un buen enlace (¿actualmente bienes raíces japoneses?). Se puede encontrar [en SourceForge] (https://sourceforge.net/projects/sqsh/), aunque no ha habido actualizaciones desde 2014. – r2evans

11

sql-cli es una interfaz de línea de comando multiplataforma basada en nodejs para el servidor sql. Puede instalarlo a través de npm https://www.npmjs.org/package/sql-cli

Se puede conectar a instancias instaladas localmente y azul de sql.

+2

¡Gracias! ** ¡Esta debería ser la respuesta aceptada! ** Esta es, de lejos, la mejor solución para las personas que utilizan el cliente CLI 'mysql'. – dotancohen

Cuestiones relacionadas