2013-06-05 163 views
6

我使用以下软件:声纳无法连接到数据库

  • 声纳3.4.1
  • MySQL 5.1中
  • 的Maven 2.2.1
  • 的Tomcat 7

我有一个pom.xml文件,我试图用Sonar执行,但得到follwing错误。

[INFO] Building asgard-bpm 
[INFO] task-segment: [sonar:sonar] (aggregator-style) 
[INFO] ----------------------------------------------------------------------- 
[INFO] [sonar:sonar {execution: default-cli}] 
[INFO] Sonar host: http://{host:8080}/sonar 
[INFO] Sonar version: 3.4.1 
[INFO] Execute: org.codehaus.sonar:sonar-maven-plugin:3.4.1:sonar 
[INFO] [sonar:sonar {execution: default-sonar}] 
[INFO] [14:34:54.474] Load project settings 
[INFO] [14:34:54.552] Install plugins 
[INFO] [14:34:56.674] Apply project exclusions 
[INFO] [14:34:56.674] Install JDBC driver 
[WARN] [14:34:56.736] H2 database should be used for evaluation purpose only 
[INFO] [14:34:56.736] Create JDBC datasource for jdbc:h2:tcp://host/sonar 
[INFO] ------------------------------------------------------------------------ 
[ERROR] BUILD ERROR 
[INFO] ------------------------------------------------------------------------ 
[INFO] Can not execute Sonar 

Embedded error: Fail to connect to database 
Connection refused: connect 

我已经创建了一个数据库中的用户与用户名为“声纳”,密码为“sonarsonar”。

创建了名为'sonar'的模式并且还授予了所有特权。

下面是在SONAR.properties文件中设置的属性。

sonar.web.host:       {127.0.0.1} 
sonar.web.port:       80 
sonar.web.context:      /


sonar.jdbc.username:      sonar 
sonar.jdbc.password:      sonarsonar 

sonar.jdbc.url:          {jdbc:mysql://host:3306/sonaruseUnicode=true&characterEncoding=utf8} 
sonar.jdbc.driverClassName:    com.mysql.jdbc.Driver 
sonar.jdbc.validationQuery:    select 1 

有人可以告诉我如何解决这个错误。

+0

看起来你的声纳服务器已配置到好好的谈一次到MySQL,但您的构建仍然谈话的默认数据库H2。 –

+0

我有同样的问题 – BigDong

回答

2

您的声纳没有连接到您的数据库。检查您的< .m2/settings.xml>文件。您需要更改< sonar.jdbc.url>属性下:

<!-- H2 - Default DB --> 
<!-- <sonar.jdbc.url> 
     jdbc:h2:tcp://localhost:9092/sonar 
    </sonar.jdbc.url> --> 
<!-- MySQL DB --> 
    <sonar.jdbc.url> 
     jdbc:mysql://localhost:3306/sonar?useUnicode=true&amp;characterEncoding=utf8 
    </sonar.jdbc.url> 

另外,看看这个答案:https://stackoverflow.com/questions/17102025/sonar-not-connecting-to-mysql-db

+4

链接不工作 –

0

配置 “sonar-runner.properties” 连接到MySQL数据库。

尝试在取消此行:

sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&amp;characterEncoding=utf8 
sonar.jdbc.username=sonar 
sonar.jdbc.password=sonar 
sonar.sourceEncoding=UTF-8