2015-05-29 9 views
0

Запуск Сонар-бегун в проекте сонарного проекта против моего экземпляра SonarQube 4.1 не удается. В трассировке стека, я заметил, что он дает следующее сообщение об ошибке:Анализ не работает на SonarQube 4.1 с помощью java.sql.SQLException, но преуспевает на 4.5

вызвано следующими причинами: java.sql.SQLException: Доступ запрещен для пользователя «» sonar'@'172.23.48.129

что ф это мой локальные компьютеры IP. Мой сервер SonarQube находится в другой коробке.

В файле sonar-runner.properties и sonar-project.properties нет jdbc, установленного для этого IP-адреса (или имени хоста, который разрешает этот IP-адрес) в любом месте. Даже отчет уровня INFO ниже будет свидетельствовать об этом.

Странно, что я могу запустить сонар-бегун в том же образцовом проекте, указывая на тестовый экземпляр SonarQube 4.5, и анализ проходит успешно.

Она ошибки и дать следующий вывод:

sonar-runner -X 
SonarQube Runner 2.4 
Java 1.7.0_79 Oracle Corporation (64-bit) 
Mac OS X 10.10.3 x86_64 
INFO: Error stacktraces are turned on. 
INFO: Runner configuration file: /Users/senatori/Documents/sonar-runner-2.4/conf/sonar-runner.properties 
INFO: Project configuration file: /Users/senatori/Documents/sonar-examples/projects/languages/groovy/groovy-sonar-runner/sonar-project.properties 
INFO: Default locale: "en_US", source code encoding: "UTF-8" 
INFO: Work directory: /Users/senatori/Documents/sonar-examples/projects/languages/groovy/groovy-sonar-runner/./.sonar 
INFO: SonarQube Server 4.1.1 
18:10:05.102 INFO - Load batch settings 
18:10:05.121 DEBUG - Download: http://sonar.redac.dev/batch_bootstrap/properties?dryRun=false (no proxy) 
18:10:05.298 INFO - User cache: /Users/senatori/.sonar/cache 
18:10:05.311 INFO - Install plugins 
18:10:05.311 DEBUG - Download index of plugins 
18:10:05.311 DEBUG - Download: http://sonar.redac.dev/deploy/plugins/index.txt (no proxy) 
18:10:05.648 INFO - Install JDBC driver 
18:10:05.648 DEBUG - Download index of jdbc-driver 
18:10:05.648 DEBUG - Download: http://sonar.redac.dev/deploy/jdbc-driver.txt (no proxy) 
18:10:05.699 INFO - Create JDBC datasource for jdbc:mysql://sonardb001.redac.dev:3306/sonar?useUnicode=true&characterEncoding=utf8 
18:10:06.282 DEBUG - To prevent a memory leak, the JDBC Driver [com.mysql.jdbc.Driver] has been forcibly deregistered 
INFO: ------------------------------------------------------------------------ 
INFO: EXECUTION FAILURE 
INFO: ------------------------------------------------------------------------ 
Total time: 2.173s 
Final Memory: 9M/123M 
INFO: ------------------------------------------------------------------------ 
ERROR: Error during Sonar runner execution 
org.sonar.runner.impl.RunnerException: Unable to execute Sonar 
at  org.sonar.runner.impl.BatchLauncher$1.delegateExecution(BatchLauncher.java:91) 
at org.sonar.runner.impl.BatchLauncher$1.run(BatchLauncher.java:75) 
at java.security.AccessController.doPrivileged(Native Method) 
at org.sonar.runner.impl.BatchLauncher.doExecute(BatchLauncher.java:69) 
at org.sonar.runner.impl.BatchLauncher.execute(BatchLauncher.java:50) 
at org.sonar.runner.api.EmbeddedRunner.doExecute(EmbeddedRunner.java:102) 
at org.sonar.runner.api.Runner.execute(Runner.java:100) 
at org.sonar.runner.Main.executeTask(Main.java:70) 
at org.sonar.runner.Main.execute(Main.java:59) 
at org.sonar.runner.Main.main(Main.java:53) 
Caused by: 

опущены некоторые из трассировки стека для ясности

Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Access denied for user 'sonar'@'172.23.48.129' (using password: YES)) 
at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1549) 
at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1388) 
at org.apache.commons.dbcp.BasicDataSource.getLogWriter(BasicDataSource.java:1098) 
at org.apache.commons.dbcp.BasicDataSourceFactory.createDataSource(BasicDataSourceFactory.java:350) 
at org.sonar.core.persistence.DefaultDatabase.initDatasource(DefaultDatabase.java:142) 
at org.sonar.core.persistence.DefaultDatabase.start(DefaultDatabase.java:75) 
... 32 more 
Caused by: java.sql.SQLException: Access denied for user 'sonar'@'172.23.48.129' (using password: YES) 
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1078) 
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4190) 
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4122) 
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:927) 
at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1709) 

Любая идея, почему это делает это? Благодаря

ответ

1

Сообщение Access denied for user 'sonar'@'172.23.48.129' говорят вам, что пользователь sonar не может подключиться к базе данных схеме экземпляра SonarQube 4.1 с вашего компьютера (с IP-адресом 172.23.48.129).

Пожалуйста, проверьте права доступа для этой схемы, для гладких операций вы должны иметь что-то вроде:

GRANT USAGE ON `sonar`.<your sonar db> TO 'sonar'@'%' IDENTIFIED BY PASSWORD '*XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' 
GRANT ALL PRIVILEGES ON `sonar`.<your sonar db> TO 'sonar'@'%' 

... или какой-либо соответствующий IP-адрес диапазона вместо '%'.