在sonarqube中-选择拒绝给用户的命令';声纳用户&x27@';本地主机';对于表';会话变量

在sonarqube中-选择拒绝给用户的命令';声纳用户&x27@';本地主机';对于表';会话变量,sonarqube,sonarqube-5.0,sonarqube-4.5,Sonarqube,Sonarqube 5.0,Sonarqube 4.5,原因:org.apache.commons.dbcp.SQLNestedException:无法创建 PoolableConnectionFactory(SELECT命令拒绝给用户 表“会话变量”的“sonar_用户”@“localhost”) 位于org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1549) ~[commons-dbcp-1.4.jar:1.4

原因:org.apache.commons.dbcp.SQLNestedException:无法创建 PoolableConnectionFactory(SELECT命令拒绝给用户 表“会话变量”的“sonar_用户”@“localhost”) 位于org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1549) ~[commons-dbcp-1.4.jar:1.4] 位于org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1388) ~[commons-dbcp-1.4.jar:1.4] 位于org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044) ~[commons-dbcp-1.4.jar:1.4] 位于org.sonar.core.persistence.DefaultDatabase.checkConnection(DefaultDatabase.java:113) ~[sonar-core-4.5.5.震击器:na] ... 27由于以下原因而忽略的公共帧:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:SELECT 对表的用户“sonar\u user”@“localhost”的命令被拒绝 “会话变量” 位于sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法) ~[na:1.8.060] 位于sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:1.8.060] 在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.060] 位于java.lang.reflect.Constructor.newInstance(Constructor.java:422) ~[na:1.8.060] 在com.mysql.jdbc.Util.handleNewInstance(Util.java:411)~[mysql-connector-java-5.1.27.jar:na] 在com.mysql.jdbc.Util.getInstance(Util.java:386)~[mysql-connector-java-5.1.27.jar:na] 位于com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1054) ~[mysql-connector-java-5.1.27.jar:na] 在com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4237)~[mysql-connector-java-5.1.27.jar:na] 在com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4169)~[mysql-connector-java-5.1.27.jar:na] 在com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2617)~[mysql-connector-java-5.1.27.jar:na]


您的SonarQube服务器连接到数据库的用户(
'sonar\u user'@'localhost'
)没有足够的权限(根据错误消息,它无法在数据库中发出
SELECT
命令)


您需要将此权限授予MySQL数据库中的此用户(这里有一个关于如何实现此权限的说明)。

您的SonarQube服务器与数据库连接的用户(
'sonar\u user'@'localhost'
)没有足够的权限(根据错误消息,它无法在数据库中发出
SELECT
命令)

您需要在MySQL数据库中将此权限授予此用户(以下是如何实现此权限的详细说明)。

要访问全局会话变量,请尝试在MySQL中使用以下命令: $GRANT ALL ON sonar.*给由“sonar”标识的“%”sonar

$GRANT ALL ON sonar.*给“sonar”@“本地主机”,由“sonar”标识

如果它不起作用,那么您应该尝试(它只为所有数据库的“sonar”用户提供选择权限): $GRANT选择打开。至“声纳”@“%”,由“声纳”标识

$GRANT选择打开。至“声纳”@“本地主机”,由“声纳”标识

它为sonar用户提供访问所有数据库的权限,并具有选择、插入、更新、删除(DB上所有可能的移动)的所有权限。 格兰特全速前进。至“声纳”@“%”,由“声纳”标识

格兰特全速前进。至“声纳”@“本地主机”,由“声纳”标识

要访问全局|会话变量,请尝试MYSQL中的with命令: $GRANT ALL ON sonar.*给由“sonar”标识的“%”sonar

$GRANT ALL ON sonar.*给“sonar”@“本地主机”,由“sonar”标识

如果它不起作用,那么您应该尝试(它只为所有数据库的“sonar”用户提供选择权限): $GRANT选择打开。至“声纳”@“%”,由“声纳”标识

$GRANT选择打开。至“声纳”@“本地主机”,由“声纳”标识

它为sonar用户提供访问所有数据库的权限,并具有选择、插入、更新、删除(DB上所有可能的移动)的所有权限。 格兰特全速前进。至“声纳”@“%”,由“声纳”标识

格兰特全速前进。至“声纳”@“本地主机”,由“声纳”标识

如果它解决了你的问题,你就应该回答这个问题如果它解决了你的问题,你就应该回答这个问题