IDEA连接SQL server数据库(保姆级详细且必坑,包括防火墙、 SQL Server 网络配置等问题解决)

最近需要用IDEA完成课设,同时也需要用到SQL Server实现数据持久化,而刚开始连接数据库时,即使成功用SQL Server身份验证方式连接后,在IDEA里还是不能与SQL成功连接,这里就很可能是防火墙的问题,或者是SQL Server 配置等问题,这里分享idea连接SQL server数据库的一篇经验贴,希望有这方面需要或问题的小伙伴能少走一些弯路,同时也希望大家批评指正,相互学习~

:)

0、开发环境说明

SQL Server 16.0.1000.6

IntelliJ IDEA 2021.1.1

1、启用SQL sever身份验证

打开SQL server数据库,

首先先连接服务器实例,第一次连接可以选择Windows 身份验证 (后面可更改)

右键点击服务器,选择 属性

选择 "安全性 "页签,选择 SQL Server 和 Windows 身份验证模式 。

确认更改,重启 SQL Server 实例。

下一步就可以设置SQL server 的身份验证密码了

打开 SQL Server Management Studio (SSMS),展开 安全性 文件夹,展开 登录名 文件夹,

右键点击 'sa' 用户,选择 属性 ,选择SQL Server身份验证,输入密码,检查配置,然后点击确定

这时候重新登录,用SQL Server身份验证方式,输入用户名密码,如果成功登录就完成了

报错情况 (没报错可以跳过这部分)

有部分人到里这发现还是不能用SQL Server身份验证方式连接,比如说题主这时候。。。

这时就要检查是不是下面的地方没设置好:用户名或密码错误,

SQL Server 身份验证模式:确保 SQL Server 处于混合模式

用户权限:确认 'sa' 用户在 SQL Server 上具有足够的权限。

服务状态:确认 SQL Server 实例正在运行。

当然,还有一种更直接的方法,我们可以自己重新新建登录名

右击 sa , 点击新建登录名,

设置常规设置,服务器角色,用户映射,状态,然后点击确定(一定要确认用户具有足够的权限!!!)

这样就可以 成功用SQL Server身份验证方式连接

2、在 Windows 防火墙中允许 SQL Server 端口 1433

有很多人在弄完上面成功用SQL Server身份验证方式连接后,在IDEA里还是不能与SQL成功连接,这里就很可能是防火墙 的问题,有遇到这种问题的可以看下这部分内容

1、打开防火墙设置:

按 Win + R,输入 wf.msc,然后按 Enter 打开 Windows 防火墙高级安全性控制台。

2、创建入站规则:

在左侧菜单中选择 入站规则。

在右侧菜单中选择 新建规则。

选择 端口,然后点击 下一步。

选择 TCP 并指定特定本地端口 1433,然后点击 下一步。

选择 允许连接,然后点击 下一步。

确保选择 域、专用 和 公用,然后点击 下一步。

为该规则命名,例如 SQL Server TCP Port 1433,然后点击 完成。

3、创建出站规则:

在左侧菜单中选择 出站规则。

在右侧菜单中选择 新建规则。

重复上述步骤,确保出站连接也允许 TCP 端口 1433。

4、检查防火墙规则

确认已经创建的规则生效。

打开 控制面板 ,选择 系统和安全 。

点击 Windows Defender 防火墙 。

选择 高级设置 。

在左侧菜单中选择 入站规则 和 出站规则,检查你刚刚创建的规则。

像这个样子就说明已经可以了

3、检查 SQL Server 配置

目的是确保 SQL Server 配置正确,监听 TCP 端口 1433

1、打开 SQL Server 配置管理器

右键此电脑图标,点击管理

2、启用 TCP/IP

展开 SQL Server 网络配置。

选择 SQL Server 网络配置(32 位) 或 SQL Server 网络配置(64 位)。

点击 SQL Server 网络协议,确保 TCP/IP 协议已启用。

如果 TCP/IP 协议未启用,右键点击 TCP/IP,选择 启用

3、配置 TCP 端口

右键点击 TCP/IP,选择 属性。

在 IP 地址 页签,向下滚动到 IPAll 部分 。

确保 TCP 动态端口 是空的,TCP 端口 设置为 1433 。

点击 确定,然后重启 SQL Server 服务。

4、重启 SQL Server 服务

打开 服务 管理器:

按 Win + R,输入 services.msc,然后按 Enter。

找到 SQL Server 服务,右键点击并选择 重启。

完成这些步骤后,你的 SQL Server 应该能够通过 TCP 端口 1433 接受连接。

4、IDEA连接SQL Server数据库

连接SQL Server

终于到了最后一部分啦!😃

首先需要在IDEA里面找到DATABASE ,然后选择 SQL Server

然后,填上用户名,密码,还有端口号1433 ,然后可以指定连接的数据库

点击测试连接Test Connection, Succeeded表明测试连接成功

点击OK,Log日志显示Connected,连接成功!!!

报错情况

08S01 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:"PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target"。 ClientConnectionId:a9d1ee5b-145f-4a8b-bf6c-1a78c2d465fb sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target.

这个错误是因为 JDBC 驱动程序无法找到有效的 SSL 证书路径来建立与 SQL Server 的安全连接

解决这个很简单,只需要更改一下SSL证书,换成旧点的版本就好

还是刚才的界面,点Drivers,找到SQL Server更改一下版本就好了

当然这个过程还要下载JDBC包,不过IDEA会后提示你Download,点击一键安装就可以了,这里就不赘述了~

:)

相关推荐
Hoxy.R6 小时前
【金仓数据库产品体验官】KingbaseES V9R2C16 坏块检测与修复完整测试流程
数据库
dog2506 小时前
带宽,时延,抖动的不可能三角
网络·tcp/ip
砚凝霜6 小时前
【软考信息安全】第十六章 网络安全风险评估过程与技术方法
网络·安全·web安全
Eloudy7 小时前
MLNX_OFED 的 install.pl 安装流程分析
网络·rdma·roce
太理摆烂哥7 小时前
MySQL数据库基础
数据库·mysql
wuhuhuan7 小时前
JMeter 连接数据库并取值(JDBC 实战)
数据库·jmeter
小羊没烦恼!8 小时前
OS X 上使用.NET开发应用程序
开发语言·前端·数据库·人工智能·c#·策略模式
Rain的Java大神之路8 小时前
[特殊字符]8年Java老兵转型AI Agent:90%的人挂在同一个坑,根本不用学Python!(万字实战复盘,建议收藏)
java·数据库·人工智能·后端·python·spring·ai编程
码途行者9 小时前
缓存一致性难题:Redis 和数据库如何做到数据一致?
数据库·redis
对讲机数码科普9 小时前
从电路原理到协议栈:模拟对讲机与数字对讲机的技术内核拆解
运维·网络·架构·软件工程