QGIS连接本地SQL Server报错“SQL Server不存在或访问被拒绝”求助
QGIS连接本地SQL Server报错“SQL Server不存在或访问被拒绝”的排查方案
确认SQL Server服务状态
打开服务(Win+R输入services.msc),找到SQL Server (MSSQLSERVER),确保状态为正在运行;同时检查SQL Server Browser服务是否启用(命名实例必须开启,默认实例建议开启)。若服务未启动,右键启动并将启动类型设为自动。验证TCP/IP配置细节
打开SQL Server配置管理器,展开SQL Server网络配置->MSSQLSERVER的协议,双击TCP/IP:- 在
IP地址标签页拉至最下方,确认IPAll的TCP端口为1433(若修改过端口需对应填写) - 确保所有IP地址的
已启用选项设为是
修改完成后重启SQL Server (MSSQLSERVER)服务。
- 在
测试端口连通性
- 命令提示符执行:
telnet 127.0.0.1 1433,能正常连接则端口通畅;若失败,检查Windows防火墙是否拦截1433端口,需添加入站规则允许该端口的TCP流量。 - 或用PowerShell命令:
Test-NetConnection 127.0.0.1 -Port 1433,查看TcpTestSucceeded是否为True。
- 命令提示符执行:
检查SQL Server登录权限
- 打开SQL Server Management Studio(SSMS),以Windows身份验证登录,右键服务器选择
属性->安全性,确认服务器身份验证模式为SQL Server和Windows身份验证模式。 - 新建或确认SQL登录账号(如sa),赋予对应数据库的读写权限或
sysadmin角色。 - QGIS连接时,若使用SQL账号需选择
数据库认证,输入正确的账号密码;若用Windows账号则选Windows认证。
- 打开SQL Server Management Studio(SSMS),以Windows身份验证登录,右键服务器选择
规范QGIS连接参数
- 主机:默认实例填
127.0.0.1,1433(明确指定端口);命名实例填127.0.0.1\实例名,端口号 - 数据库:必须填写具体的目标数据库名称,而非实例名
- 避免使用
localhost,优先用127.0.0.1加端口的组合,减少解析问题。
- 主机:默认实例填
检查ODBC驱动兼容性
QGIS依赖ODBC驱动连接SQL Server,需安装与QGIS版本(32/64位)匹配的ODBC Driver 17 for SQL Server。打开对应位数的ODBC数据源管理器,在系统DSN中新建SQL Server数据源并测试连接,若此处连接失败,需先解决ODBC驱动问题。
内容的提问来源于stack exchange,提问作者Insat
相关产品推荐
相关产品推荐

