
우리는 내부 제품에 대해 Linux 서버에서 Microsoft SQL Server의 유용성을 테스트하고 있으며 구성 중에 문제가 발생했습니다. 우리는 SQLServer 2019(미리보기)를 설정 및 구성하려고 시도 중이며 저장소를 설정하고 여기에서 SQL Server 바이너리를 설치했습니다. 그런데 실행해서 sudo /opt/mssql/bin/mssql-conf setup
에디션을 선택하면 잠시 멈춰서 오류가 뜹니다. 로그에는 다음이 표시됩니다.
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.
범인은 명백합니다. 설치 프로그램은 에서 서버를 시작하려고 시도하는데 <ipv6>
, 이와 관련 없는 이유로 프로덕션 시스템에서는 이를 비활성화했습니다. 설정하고 실행하려면 SQL Server가 필요하며 다음과 같이 <ipv4>
이를 사용하여 변경할 방법이 없는 것 같습니다.mssql-config
mssql-config 지침.
누구든지 이것을 설정한 경험이 있습니까?
답변1
좋아, 환경 변수에서 해결책을 찾았습니다. 그냥 사용
sudo MSSQL_IP_ADDRESS=0.0.0.0 /opt/mssql/bin/mssql-conf setup
또한 다시 시작한 후에 구성이 강제로 바인딩됩니다 any <ipv4>
. 이 동작은 문서화되지 않은 것 같으므로 후손을 위해 여기에 남겨 두겠습니다.
답변2
sudo /opt/mssql/bin/mssql-conf set network.ipaddress 0.0.0.0
너무 작동
답변3
/opt/mssql/bin/mssql-conf set network.ipaddress 0.0.0.0
systemctl restart mssql-server
잘된다 !!