1

我想用 YCSB 框架对 PostgreSQL 进行基准测试。因此,我遵循项目 Github 站点的说明来使用 JDBC 库。

给定的示例说您需要一个我从站点下载的 JDBC 驱动程序。我使用的文件(不确定是否正确)是JDBC3 Postgresql Driver, Version 9.3-1103. 现在我不确定在哪里放置下载的 jar 以运行项目。到目前为止,我尝试在执行命令之前将 JAR 放在 bin 文件夹中$ ./bin/ycsb load jdbc -s -P workloads/workloada。这导致了以下错误。

Error in database operation: java.sql.SQLException: No suitable driver found for jdbc:postgresql://127.0.0.1:5432/ycsb?user=postgres&password=password

显然,将驱动程序 JAR 放在 bin 文件夹中的位置并不正确,或者可能只是错误的 JAR。有人可以告诉我必须在哪里放置驱动程序以及下载的 jar 是否正确?

4

2 回答 2

2

对我有帮助的是以下内容。虽然我确信有更好的方法来做到这一点。

我将以下依赖项添加到POM.xml.

<dependency>
  <groupId>com.postgres.driver</groupId>
  <artifactId>postgresdriver</artifactId>
  <version>9.3</version>
  <scope>system</scope>
  <systemPath> "Path to JAR on filesystem" </systemPath>
</dependency>

groupId并且artifactId可以根据需要进行选择,并且version是可选的。scope应该设置为并且system必须systemPath指向文件系统上的JAR(例如/home/user/driver.jar

于 2015-09-17T10:48:37.797 回答
0

Jar 只需要以一种或另一种方式位于类路径上。您可以像这样指定 jar 路径:

./bin/ycsb load jdbc -s -P workloads/workloada -cp /path/to/jar

-cp 允许您手动将内容添加到类路径

于 2015-11-18T20:49:57.290 回答