我在本地网络计算机上安装了 sql express,创建了新帐户,启用了服务器身份验证,当我尝试从本地计算机连接到此帐户时,一切正常。但是当我尝试从网络 PC 登录时,系统提示此帐户登录失败。此外,我已禁用所有防火墙。
我还需要做什么?
答案1
全新安装的 SQL Server Express 将无法使用。您必须采取额外的手动步骤才能完成安装。
启用 TCP/IP。
默认情况下,SQL Server 不会成为功能性服务器。为此,您需要通过启用网络协议使其成为服务器。
点击开始,SQL Server 配置管理器。 在下面SQL Server 网络配置,MSSQLSERVER 的协议您可以看到 tcp/ip 已被禁用:
右键点击TCP/IP并选择使能够。然后您将需要重新启动 SQL Server 服务(如果没有权限,则重新启动机器)。
启用 TCP/IP。
通过启用 TCP/IP,您应该能够通过端口远程连接到服务器
1433
。遗憾的是,Sql Server 配置管理器并未执行启用 TCP/IP 所需的所有操作;它未在防火墙上启用端口 1433。点击开始,高级安全 Windows 防火墙。 右键点击入境规则,然后点击新规则。
- 在下面“您想创建什么类型的规则”, 选择程序,然后点击下一个
选择本程序,浏览到路径
sqlservr.exe
,例如C:\Program 文件\Microsoft SQL 服务器\MSSQL11.MSSQLSERVER\MSSQL\Binn\sqlservr.exe
并点击下一个。
选择允许此连接,然后点击下一个
- 确保领域,私人的, 和民众个人资料已检查,然后单击下一个
- 给规则命名,例如SQL Server 2012 Express,然后点击结束
Windows 防火墙可能会(也可能不会)开始允许连接到现有的侦听套接字。您可能需要(也可能不会)启动 SQL Server 服务(或者,如果您没有权限,请重新启动计算机)。
启用命名管道
上述步骤对我不起作用,因为 SQL Server Management 不知道如何通过 TCP/IP 进行连接。您还必须尝试启用命名管道。
点击开始,SQL Server 配置管理器。 在下面SQL Server 网络配置,MSSQLSERVER 的协议您可以看到命名管道已被禁用:
右键点击命名管道并选择使能够。然后您将需要重新启动 SQL Server 服务(如果没有权限,则重新启动机器)。
答案2
我已经安装了 SQL Server 的普通实例(不是 Express),这个新实例上一切都运行良好......
答案3
技巧如下:
- 检查问题实例的错误日志。例如此处的错误日志文件:“C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG\”(或您的实例所在的任何位置)
其中会有几行“正在监听......”例如服务器正在监听[‘any’1129]。
- 这告诉您连接到端口 1129 上的该 IP。在 SQL 客户端中,这看起来像这样:
服务器名称,1129
或通过 IP
192.168.66.101,1129 // 假设服务器位于该 IP 上
- 如果日志中没有“监听”行,则使用服务器配置工具在该 SQL 实例上启用 IP