как получить удаленный доступ к Windows SQL Server Express из Ubuntu с кодом C#

#c# #windows #visual-studio-code #sql-server-express #ubuntu-20.04

Вопрос:

У меня есть два компьютера, стоящих рядом друг с другом, оба подключены к одному и тому же Wi-Fi-маршрутизатору для Интернета. Один из них-Windows с SQL Server Express, другой-Ubuntu с кодом Visual Studio и моим приложением на C#.

Я хочу иметь возможность общаться или получать доступ к базе данных SQL Server из своего приложения на ПК с Ubuntu.

Я могу пропинговать ПК с Windows с его IP-адресом с ПК с Ubuntu.

И я успешно следовал этому руководству вплоть до этой строки:

 On a second computer that contains the SQL Server client tools,
 

Что я не вижу, что я могу установить на Ubuntu, каков правильный способ подключения или более простой способ?

Редактировать:

Как указано в руководстве, предпринятые шаги:

  1. Включен протокол TCP/IP в Диспетчере конфигурации (Конфигурация сети SQL Server)
  2. Добавил фиксированный порт в TCP/IP в разделе «IPALL, TCP-порт» и перезапустил конфигурацию сети службы SQL Server.(так как это SQL Express прослушивает динамические порты и, следовательно, не будет работать на следующий день)
  3. Открыл/ добавил этот исправленный порт с новым входящим правилом брандмауэра Windows

Комментарии:

1. Вы открыли порт 1433 на файловой стене компьютера Windows, чтобы разрешить подключения к sql server?

2. да, как указано в учебнике MSDN, связанном…

Ответ №1:

Вы можете использовать клиентский инструмент, предоставляемый Microsoft, под названием mssql-cli (он также доступен для Windows и может использоваться таким же образом). Чтобы установить его, следуйте этому быстрому руководству:

https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-tools?view=sql-server-ver15#ubuntu

После установки вы сможете использовать mssql-cli. На этой странице подробно объясняется использование:

https://www.mssqltips.com/sqlservertip/5298/new-interactive-command-line-tool-mssqlcli-for-sql-server/

Комментарии:

1. Это, по-видимому, только инструмент командной строки, расширение для запроса через командную строку… похоже, это не одно и то же. Кроме того, ссылка затем говорит, чтобы открыть студию управления — у меня на ПК с ubuntu не установлено программное обеспечение SQL, и если оно не требуется, его лучше не устанавливать

2. На самом деле нет другого способа проверить, доступен ли ваш sql-сервер, поскольку ubuntu не имеет встроенных функций sql-клиента. Не могли бы вы также проверить 2.) по этой ссылке: docs.sdl.com/801922/570899/sdl-tridion-docs-13-sp2/… ? Это также распространенный шаг, который следует забыть после установки.

3. Я добавил шаги в свой вопрос, который я выполнил, он также охватывает проверку 2. Затем я предполагаю, что мне следует установить SQL Server Express и Management Studio на свой ПК с Ubuntu? Затем, является ли ваша ссылка на средства командной строки правильными «клиентскими средствами SQL Server», упомянутыми в руководстве?

4. Если вы продолжаете пытаться подключиться к SQL Server в Windows, достаточно установить Management Studio (или mssql-cli). Вам не нужно устанавливать полный пакет SQL Server Express в Ubuntu. Не могли бы вы также попытаться разрешить порт 1433 в вашей системе Ubuntu? sudo ufw allow 1443/tcp

5. Поэтому, если вы правильно установили mssql-cli, вы можете позвонить mssql-cli --help в свой терминал. Это пример подключения: mssql-cli -S yourserver,1443 -d DataSource -U sa