欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

【JMeter连接SQLServer】采用window鉴权方式连接(原创)

程序员文章站 2022-04-16 19:24:12
...

大家都知道Jmeter可以连接各种数据库,这方面我也不多说了,如果你还不知道怎么连接的话,可以参看我看的另外一篇博文,这边有详细的介绍 http://blog.csdn.net/lzqinfen/article/details/38730259 回归正题,由于公司测试环境的问题,我在连接SQLServer时,

大家都知道Jmeter可以连接各种数据库,这方面我也不多说了,如果你还不知道怎么连接的话,可以参看我看的另外一篇博文,这边有详细的介绍

http://blog.csdn.net/lzqinfen/article/details/38730259


回归正题,由于公司测试环境的问题,我在连接SQLServer时,公司只能使用window方式的鉴权(通过我们的域账号验证),这下就变得麻烦了,因为本来按照普通的sqlServer连接,是很简单的如下图一样:

【JMeter连接SQLServer】采用window鉴权方式连接(原创)

但现在采用window鉴权的方式,你无法再填写username和password。我想通过网上查询,包括性能技术群,都没找到相关的解决方法,再各种尝试之后终于搞定~(所以笔者认为是原创方法,应该不为过吧)


1、Java连接数据库

Jmeter是纯Java的,大家都知道自己写Java的时候,可以写成window方式连接SQLserver,所以我坚信Jmeter应该可以用同样的方法实现。Java的实现,其实是增加了一个参数

integratedSecurity= true

所以我们在JMeter里面也做下修改,如下图(前面是IP和端口。后面增加了integratedSecurity= true,注:我这边没有指定数据库名字,你可以指定也可以不指定)

【JMeter连接SQLServer】采用window鉴权方式连接(原创)



2、看似没什么问题了,运行,结果报错(Jmeter命令窗口报错),

错误为:没有为集成身份验证配置驱动程序

原因是:C:\Windows 下缺少了sqljdbc_auth.dll文件


3、下载sqljdbc_auth.dll,并放到C:\Windows 下,重新启动,再次运行Ok。

下载地址:http://download.csdn.net/detail/lzqinfen/8066775

【JMeter连接SQLServer】采用window鉴权方式连接(原创)


----------------------------------注意 : 雷区---------------------------------------------

1、sqljdbc_auth.dll已经放到相关目录下,但是报不是64位之类的错误。

原因是:我的是win7 64位的,下载的sqljdbc_auth包中包含x86 和64位的(各3个版本的),我找到其中的64位,随便用的一个也是报错,后来选择最新日期(3.0.1301.101这个)的那个dll 就OK了,这点大家注意下

(我Jmeter是2.8的+1.7JDK ,Jmeter2.11 版本的 用最新dll应该也没问题的,请大家验证吧~);

2、另外一点注意下:Jmeter apache-jmeter-2.8\lib 下应该有sqljdbc4.jar的 ,如果没有的话 肯定也会报错的。