今天遇到一个问题,sql server无法登陆,到Services里看,服务没有起来。但是在启动Service时遇到问题说无法启动。去Administrative Tools->Event Viewer中查看了一下,发现如下错误(该错误在SQL Server日志中也可以查看到,目录在C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Log):
Server TCP provider failed to listen on [ 'any' 1433]. Tcp port is already in use.
TDSSNIClient initialization failed with error 0x2740, status code 0xa. Reason: Unable to initialize the TCP/IP listener. Only one usage of each socket address (protocol/network address/port) is normally permitted.
知道可以用netstat -ano命令查看系统端口的使用情况。检查后没有发现1433端口在使用。
所以直接改了SQL Server的TCP/IP端口。更改办法如下:
In SQL Server Configuration Manager, expand SQL Server Network Configuration, and then click on the server instance you want to configure.
In the right pane, double-click TCP/IP.
In the TCP/IP Properties dialog box, click the IP Addresses tab.
In the TCP Port box of the IPAll section, type an available port number. For this tutorial, we will use 1500.
Click OK to close the dialog box, and click OK to the warning that the service must be restarted.
In the left pane, click SQL Server Services.
In the right pane, right-click the instance of SQL Server, and then click Restart. When the Database Engine restarts, it will listen on port 1500.