Как я могу использовать MS SQL Server из Mac OS X Terminal? - PullRequest
13 голосов
/ 24 марта 2011

Я использую Mac для разработки веб-приложений. Наша среда выполнения - Java, наш веб-сервер - Jetty, а IDE - Eclipse. Таким образом, весь наш стек может быть использован из Mac и Windows изначально ... за исключением нашей базы данных, которая является MS SQL Server (в диапазоне от 2000 до 2008 в зависимости от приложения). Мне нужен клиент командной строки Unix для MS SQL Server.

Мне не нравится ни один из клиентов OS X с графическим интерфейсом для SQL Server - я считаю их утомительными и не очень похожими на Mac - поэтому в настоящее время я использую SQL Server 2008 Management Studio на Windows XP, через VMWare Fusion. Но запуск и выход из этого процесса по-прежнему огромен, он израсходует мою оперативную память во время работы и отравляет мои резервные копии Time Machine, меняя несколько файлов по 2 ГБ на диске каждый раз, когда я его использую.

Мне нравится, как MySQL можно использовать из командной строки, так что это отличный способ быстро добраться до моей базы данных и исследовать ошибку или добавить некоторые тестовые данные. Если бы я только мог использовать SQL Server таким образом! Если не считать реализации клиента командной строки с использованием прямого JDBC, есть ли что-нибудь, что делает это возможным?

Ответы [ 5 ]

9 голосов
/ 04 августа 2016

Это приложение с открытым исходным кодом, вышедшее в 2014 году, sql-cli , предоставляет полезную консоль командной строки для Mac OS X и других рабочих столов.

6 голосов
/ 22 октября 2017

Microsoft теперь предоставляет двоичные файлы OS X для инструментов командной строки для SQL Server, включая sqlcmd, а также собственный драйвер ODBC .Теоретически это должно поддерживать подключение с проверкой подлинности Windows, если на Mac настроен Kerberos соответствующим образом - что вряд ли предлагает инструмент sql-cli.

Они распространяются в виде пакетов Homebrew:

$ brew tap microsoft/mssql-release https://github.com/Microsoft/homebrew-mssql-release
$ brew update
$ ACCEPT_EULA=y brew install --no-sandbox msodbcsql mssql-tools

Подключение хоста OS X в качестве клиента к SQL Server , работающий в Docker :

$ sqlcmd -S 127.0.0.1 -U sa -P 'yourStrong(!)Password'
1> SELECT @@VERSION AS 'SQL Server Version'
2> GO
SELECT @@VERSION AS 'SQL Server Version'

SQL Server Version
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Microsoft SQL Server 2017 (RTM) - 14.0.1000.169 (X64)
    Aug 22 2017 17:04:49
    Copyright (C) 2017 Microsoft Corporation
    Developer Edition (64-bit) on Linux (Ubuntu 16.04.3 LTS)

(1 rows affected)
1> quit

Вы можете настроить DSN в ~/.odbc.ini:

# Give -D to connect using a DSN:
# sqlcmd -S DockerMS -D -U user -P password

[DockerMS]
Driver = ODBC Driver 13 for SQL Server
Server = 127.0.0.1,1433
Database = YourDefaultDB

где настройка Driver соответствует имени, зарегистрированному в unixODBC в процессе установки, см. odbcinst -q -d.

4 голосов
/ 22 мая 2011

Установить FreeTDS и затем вы можете запустить sqsh из терминала

1 голос
/ 24 марта 2011

Бесплатный, с открытым исходным кодом, на основе Java: SQuirreL ?

Вероятно, вы не получите инструмент на основе командной строки для SQL Server так же, как вы сделали бы вещи для MySQLили оракул.Почти все команды и действия, которые вам нужно выполнить , являются командами SQL: вам просто нужен клиент SQL

0 голосов
/ 20 февраля 2019

Попробуйте использовать Azure Data Studio , кроссплатформенный инструмент.Я использую в качестве клиента SQL на MAC и упал он является лучшим.Это бесплатно и удобно для пользователя, в отличие от других клиентов Free SQL.

...