The TCP/IP connection to the host 192.168.10.152, port 1433 has failed. Error: "null. Verify the connection properties. Make sure that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port. Make sure that TCP connections to the port are not blocked by a firewall.".
우분투에서 DBeaver등 SQL 클라이언트로 MSSQL 서버에 접속 하려고 할때 MSSQL 서버에 연결할 수 없다는 것을 의미합니다.
- 우분투에서의 기준입니다. -
1. SQL Server 실행 확인
먼저 MSSQL 서버가 실행 중인지 확인합니다.
sudo systemctl status mssql-server
MSSQL 서버가 실행 중이 아니면 시작합니다.
sudo systemctl start mssql-server
2. TCP/IP 프로토콜 활성화
SQL Server Configuration Manager에서 TCP/IP 프로토콜이 활성화되어 있는지 확인합니다.
- SQL Server Configuration Manager를 엽니다.
- SQL Server Network Configuration을 확장하고 Protocols for MSSQLSERVER를 선택합니다.
- TCP/IP가 활성화되어 있는지 확인합니다. 비활성화되어 있다면, Enabled로 변경합니다.
3. TCP/IP 포트 설정 확인
TCP/IP 포트 설정이 올바른지 확인합니다.
- SQL Server Configuration Manager에서 Protocols for MSSQLSERVER를 더블 클릭합니다.
- IP Addresses 탭을 선택합니다.
- IPAll 섹션에서 TCP Port가 1433으로 설정되어 있는지 확인합니다.
4. 방화벽 설정 확인
서버의 방화벽이 포트 1433에 대한 접근을 허용하는지 확인합니다.
Ubuntu 방화벽 설정
sudo ufw allow 1433/tcp
sudo ufw reload
5. 서버 네트워크 연결 확인
서버와 클라이언트 간의 네트워크 연결이 정상인지 확인합니다.
서버에서 포트 확인
서버에서 포트 1433이 열려 있는지 확인합니다.
sudo netstat -tuln | grep 1433
클라이언트에서 서버 연결 확인
클라이언트에서 서버의 포트 1433으로 연결이 가능한지 확인합니다.
telnet 192.168.10.152 1433
telnet이 설치되어 있지 않다면 다음 명령어로 설치할 수 있습니다.
sudo apt-get install telnet
6. 연결 문자열 확인
연결 문자열이 올바르게 구성되었는지 확인합니다. 예를 들어, 다음과 같은 형식으로 설정되어야 합니다.
sqlcmd -S 192.168.10.152,1433 -U sa -P 'your_password'
연결 문자열의 호스트 이름, 포트 번호, 사용자 이름, 비밀번호가 정확한지 다시 한 번 확인해 주세요.