Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jmeter-连接mysql数据库需要额外做什么?_Jmeter - Fatal编程技术网

jmeter-连接mysql数据库需要额外做什么?

jmeter-连接mysql数据库需要额外做什么?,jmeter,Jmeter,在我的JMeter测试计划中,我创建了一个线程组,并添加了带有JDBC连接配置的配置元素: Url: jdbc:mysql://localhost:3306/atmdb, Driver class: com.mysql.jdbc.Driver username: **** password: **** 我还添加了jdbc请求采样器和视图结果树侦听器。但是,在执行此测试计划后,我看到以下错误: 2015/12/18 12:53:39 INFO - jmeter.engine.StandardJM

在我的JMeter测试计划中,我创建了一个线程组,并添加了带有JDBC连接配置的配置元素:

Url: jdbc:mysql://localhost:3306/atmdb,
Driver class: com.mysql.jdbc.Driver
username: ****
password: ****
我还添加了jdbc请求采样器和视图结果树侦听器。但是,在执行此测试计划后,我看到以下错误:

2015/12/18 12:53:39 INFO - jmeter.engine.StandardJMeterEngine: Running the test! 
2015/12/18 12:53:39 INFO - jmeter.samplers.SampleEvent: List of sample_variables: [] 
2015/12/18 12:53:39 WARN - jmeter.protocol.jdbc.config.DataSourceElement: Could not load driver: com.mysql.jdbc.Driver java.lang.ClassNotFoundException: com.mysql.jdbc.Driver at java.net.URLClassLoader$1.run(URLClassLoader.java:366) 
  at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
  at java.security.AccessController.doPrivileged(Native Method) 
  at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
  at java.lang.ClassLoader.loadClass(ClassLoader.java:425) 
  at java.lang.ClassLoader.loadClass(ClassLoader.java:358) 
  at java.lang.Class.forName0(Native Method) 
  at java.lang.Class.forName(Class.java:270) 
  at org.apache.avalon.excalibur.datasource.ResourceLimitingJdbcDataSource.configure(ResourceLimitingJdbcDataSource.java:264) 
  at org.apache.jmeter.protocol.jdbc.config.DataSourceElement.initPool(DataSourceElement.java:235) 
  at org.apache.jmeter.protocol.jdbc.config.DataSourceElement.testStarted(DataSourceElement.java:108) 
  at org.apache.jmeter.engine.StandardJMeterEngine.notifyTestListenersOfStart(StandardJMeterEngine.java:214) 
  at org.apache.jmeter.engine.StandardJMeterEngine.run(StandardJMeterEngine.java:336) 
  at java.lang.Thread.run(Thread.java:745)
2015/12/18 12:53:39 INFO - jmeter.gui.util.JMeterMenuBar: setRunning(true,local) 
2015/12/18 12:53:39 INFO - jmeter.engine.StandardJMeterEngine: Starting ThreadGroup: 1 : JDBC Users 
2015/12/18 12:53:39 INFO - jmeter.engine.StandardJMeterEngine: Starting 1 threads for group JDBC Users. 
2015/12/18 12:53:39 INFO - jmeter.engine.StandardJMeterEngine: Thread will continue on error 
2015/12/18 12:53:39 INFO - jmeter.threads.ThreadGroup: Starting thread group number 1 threads 1 ramp-up 1 perThread 1000.0 delayedStart=false 
2015/12/18 12:53:39 INFO - jmeter.threads.ThreadGroup: Started thread group number 1 
2015/12/18 12:53:39 INFO - jmeter.engine.StandardJMeterEngine: All thread groups have been started 
2015/12/18 12:53:39 INFO - jmeter.threads.JMeterThread: Thread started: JDBC Users 1-1 
2015/12/18 12:53:39 WARN - jmeter.protocol.jdbc.config.DataSourceElement: Could not return Connection java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/atmdb at java.sql.DriverManager.getConnection(DriverManager.java:596) 
  at java.sql.DriverManager.getConnection(DriverManager.java:215) 
  at org.apache.avalon.excalibur.datasource.JdbcConnectionFactory.newInstance(JdbcConnectionFactory.java:182) 
  at org.apache.avalon.excalibur.pool.InstrumentedResourceLimitingPool.newPoolable(InstrumentedResourceLimitingPool.java:655) 
  at org.apache.avalon.excalibur.pool.ValidatedResourceLimitingPool.newPoolable(ValidatedResourceLimitingPool.java:145) 
  at org.apache.avalon.excalibur.datasource.ResourceLimitingJdbcConnectionPool.newPoolable(ResourceLimitingJdbcConnectionPool.java:91) 
  at org.apache.avalon.excalibur.pool.InstrumentedResourceLimitingPool.get(InstrumentedResourceLimitingPool.java:371) 
  at org.apache.avalon.excalibur.pool.ValidatedResourceLimitingPool.get(ValidatedResourceLimitingPool.java:97) 
  at org.apache.avalon.excalibur.datasource.ResourceLimitingJdbcDataSource.getConnection(ResourceLimitingJdbcDataSource.java:188) 
  at org.apache.jmeter.protocol.jdbc.config.DataSourceElement$DataSourceComponentImpl.getConnection(DataSourceElement.java:286) 
  at org.apache.jmeter.protocol.jdbc.config.DataSourceElement.getConnection(DataSourceElement.java:146) 
  at org.apache.jmeter.protocol.jdbc.sampler.JDBCSampler.sample(JDBCSampler.java:85) 
  at org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:434) 
  at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:261) 
  at java.lang.Thread.run(Thread.java:745)
2015/12/18 12:53:39 INFO - jmeter.threads.JMeterThread: Thread is done: JDBC Users 1-1 
2015/12/18 12:53:39 INFO - jmeter.threads.JMeterThread: Thread finished: JDBC Users 1-1 
2015/12/18 12:53:39 INFO - jmeter.engine.StandardJMeterEngine: Notifying test listeners of end of test 
2015/12/18 12:53:39 INFO - jmeter.gui.util.JMeterMenuBar: setRunning(false,local)

有人能帮我吗?

您似乎没有在JMeter的Lib文件夹中放置正确的mysql连接器文件。请下载此jar文件并将其放在JMeter安装的Lib文件夹中

您可以从以下URL下载最新的mysql-connector-java-5.1.38-bin.jar

要正确配置MySQL JDBC连接,请参阅JMeter官方文档:

  • 最好将JMeter和MySQL服务器放在不同的机器上,以获得更可靠的结果,因为它们可能会干扰并争夺机器资源
  • 并将其放到JMeter的类路径(通常是JMeter安装的/lib文件夹)。或者,您可以在级别上配置路径

  • 如果将.jar文件复制到/lib文件夹,则重新启动JMeter以拾取.jar文件
  • 我还建议查看指南,了解如何执行关联、添加断言等

  • 请按照以下两个步骤解决此问题。它解决了我的问题

  • 将mysql连接器jar放在apache-jmeter-3.0\lib文件夹中
  • 重新启动jmeter

  • 仅在重新启动后,它将拾取新放置的jar文件。

    感谢您的快速响应……我完全按照您所说的做了,但它不起作用。myqsql-connector还需要与正在使用的mysql db兼容。因此,您需要检查您尝试连接的mysql的变体/版本。然后搜索与数据库兼容的连接器。