Erzwingen Sie, dass SQL Server 2019/Ubunti IPv4 statt IPv6 verwendet

Erzwingen Sie, dass SQL Server 2019/Ubunti IPv4 statt IPv6 verwendet

Wir testen die Benutzerfreundlichkeit von Microsofts SQL Server auf Linux-Servern für unsere internen Produkte und sind während der Konfiguration auf ein Problem gestoßen. Wir versuchen, SQLServer 2019 (Vorschau) einzurichten und zu konfigurieren, und es ist uns gelungen, das Repository einzurichten und die SQL Server-Binärdateien daraus zu installieren. Wenn wir es jedoch ausführen sudo /opt/mssql/bin/mssql-conf setupund die Edition auswählen, bleibt es eine Weile hängen und es treten Fehler auf. Das Protokoll zeigt:

2019-05-21 14:07:57.08 spid22s     Error: 26024, Severity: 16, State: 1.
2019-05-21 14:07:57.08 spid22s     Server failed to listen on 'any' <ipv6> 1433. Error: 0x2742. To proceed, notify your system administrator.
2019-05-21 14:07:57.08 spid22s     Error: 17182, Severity: 16, State: 1.
2019-05-21 14:07:57.08 spid22s     TDSSNIClient initialization failed with error 0x2742, status code 0xa. Reason: Unable to initialize the TCP/IP listener. A socket operation encountered a dead network. 

Der Übeltäter ist offensichtlich, das Setup versucht, den Server auf zu starten <ipv6>, was wir aus Gründen, die nichts damit zu tun haben, auf Produktionsrechnern deaktiviert haben. Wir brauchen SQL Server zum Einrichten und Ausführen auf <ipv4>und ich sehe keine Möglichkeit, dies mit zu ändern mssql-config, wie inmssql-config-Anweisungen.

Hat jemand Erfahrung mit der Einrichtung?

Antwort1

Ok, ich habe eine Lösung in Umgebungsvariablen gefunden. Verwenden Sie einfach

sudo MSSQL_IP_ADDRESS=0.0.0.0 /opt/mssql/bin/mssql-conf setup

Dadurch wird auch die Bindung der Konfiguration nach dem Neustart erzwungen any <ipv4>. Da dieses Verhalten nicht dokumentiert zu sein scheint, lasse ich es hier für die Nachwelt stehen.

Antwort2

sudo /opt/mssql/bin/mssql-conf setze network.ipaddress 0.0.0.0

funktioniert auch

Antwort3

/opt/mssql/bin/mssql-conf set network.ipaddress 0.0.0.0

systemctl restart mssql-server

funktioniert gut !!

verwandte Informationen