Jestem bardzo nowy w SQL i serwerach baz danych. Ostatnio korzystam z SQL Server Express i uzyskuję dostęp do mojej bazy danych za pomocą SQL Server Management Studio w systemie Windows. Próbuję teraz osiągnąć podobną konfigurację na komputerze z systemem Linux.
Chciałbym utworzyć lokalną instancję SQL Server na komputerze, a następnie użyć SQLectron jako klienta GUI do przeszukiwania mojej bazy danych. Korzystam z Manjaro Linux, więc instaluj moje pakiety z AUR.
Do tej pory mam zainstalowane mssql-server
, mssql-tools
i sqlectron-gui
. Uruchomiłem sudo /opt/mssql/bin/mssql-conf setup
polecenie, aby (jak sądzę) skonfigurować lokalny serwer. Po wykonaniu tej czynności polecenie systemctl status mssql-server
zwraca:
[kev @ XPS-Manjaro ~] $ systemctl status mssql-server ● mssql-server.service - Aparat baz danych Microsoft SQL Server Załadowano: załadowano (/usr/lib/systemd/system/mssql-server.service; włączony; preset dostawcy: wyłączony) Aktywny: aktywny (działa) od śr. 23.08.2017 13:43:49 IST; 2 godz. 42 min. Temu Dokumenty: https://docs.microsoft.com/en-us/sql/linux Główny PID: 9130 (sqlservr) Zadania: 165 CGroup: /system.slice/mssql-server.service ├─9130 / opt / mssql / bin / sqlservr └─9144 / opt / mssql / bin / sqlservr 23 sierpnia 13:43:52 XPS-Manjaro sqlservr [9130]: [dane BLOB 145B] 23 sierpnia 13:43:52 XPS-Manjaro sqlservr [9130]: [66B blob data] 23 sierpnia 13:43:52 XPS-Manjaro sqlservr [9130]: [Dane BLOBa 96B] 23 sierpnia 13:43:52 XPS-Manjaro sqlservr [9130]: [Dane blob 100B] 23 sierpnia 13:43:52 XPS-Manjaro sqlservr [9130]: [71B blob data] 23 sierpnia 13:43:52 XPS-Manjaro sqlservr [9130]: [124B danych blobu] 23 sierpnia 13:49:03 XPS-Manjaro sqlservr [9130]: [dane BLOB 156B] 23 sierpnia 13:49:03 XPS-Manjaro sqlservr [9130]: [194B danych obiektów blob] 23 sierpnia 13:52:31 XPS-Manjaro sqlservr [9130]: [74B blob data] 23 sierpnia 13:52:31 XPS-Manjaro sqlservr [9130]: [199B danych obiektów blob]
Próbuję teraz utworzyć połączenie lokalne z moim serwerem za pomocą SQLectron na następującym ekranie:
Ponieważ mam bardzo małe doświadczenie z serwerami SQL, jestem całkowicie zagubiony, skąd wziąć wszystkie te poświadczenia, aby połączyć się z moim lokalnym serwerem. Jedyne, co znam, to hasło, które ustawiłem w sudo /opt/mssql/bin/mssql-conf setup
poleceniu.
Jak znaleźć nazwę serwera, adres hosta (127.0.0.1?), Port, domenę, ścieżkę gniazda Unix i nazwę użytkownika?
address
ponieważ 127.0.0.1` powinno działać;port
powinno być ustawione podczas konfigurowania serwera (domyślnie jest to 1433);user
będzie nazwą użytkownika, na którą chcesz się zalogować (prawdopodobnie może to być konto użytkownika Linux lub konto SQL Server (jaksa
), ipassword
jest to hasło do tego konta.Database
iSchema
byłby domyślną bazą danych i schematem, z którym się połączysz; spróbujmaster
i puste, albomaster
idbo
.Odpowiedzi:
Jeśli GUI działa na tym samym komputerze, co usługa serwera mssql, możesz użyć localhost jako adresu (127.0.0.1). Jeśli używasz GUI z innej stacji roboczej, potrzebujesz adresu IPv4 komputera, na którym działa usługa mssql-server. Można to uzyskać, uruchamiając
ifconfig
z wiersza poleceń systemu Linux. Przykładowe dane wyjściowe zifconfig
:Na powyższym wyjściu ważnym bitem jest adres „inet”, który w moim przypadku to 192.168.200.11.
Domyślny port dla SQL Server to 1433 - chyba że w mssql-conf wybierzesz inny port, użyj tego numeru portu. Upewnij się, że zapora sieciowa w systemie Linux zezwala na połączenia zewnętrzne za pośrednictwem 1433, jeśli zamierzasz połączyć się z programem SQL Server za pośrednictwem sieci.
Użyj
sa
jako loginu i hasła określonego podczas instalacji programu SQL Server za pomocąsudo /opt/mssql/bin/mssql-conf setup
polecenia.Pozostawiłbym pustą domenę i ścieżkę gniazda UNIX.
Po nawiązaniu połączenia z instancją możesz skonfigurować konto inne niż sa. Zrób to z
CREATE LOGIN
oświadczeniem .Tylko do twojej wiadomości, możesz użyć SQL Server Management Studio, aby połączyć się z SQL Server w Linuksie, jeśli tego chcesz.
źródło
mssql-server
imssql-tools
żadne z nich nie wydaje się mieć żadnej aplikacji GUI ani niczego zainstalowanego w odniesieniu do SSMS. Ponieważ jestem najbardziej zaznajomiony z SSMS, wolałbym nadal go używać, ale nie sądziłem, że jest dostępny w systemie Linux.CPX-9GL9XXXXXXX\SQLEXPRESS
. Jak znaleźć tę równoważną nazwę serwera bez dostępu do SSMS?CPX-9GL9XXXXXXX\SQLEXPRESS
->SQLEXPRESS
to nazwa instancji , która zostanie przetłumaczona przez usługę SQL Server Browser na numer portu. Niestety, przeglądarka SQL Server nie jest jeszcze obsługiwana w systemie Linux , więc musisz znać numer portu, którym jest domyślnie 1433.