内部 H2 数据库的 SonarQube 默认凭据?

SonarQube default credentials for internal H2 db?

我是 运行 SonarQube 5.6.1,正在尝试保存我创建的视图。为此,我想看一下 Sonar(根据它自己的自述文件)用于内部嵌入式数据库的 H2 DB。

我已经 运行 H2 jar 文件并且在控制台中能够登录到虚拟数据库。如果 SonarQUbe 是 运行,我无法连接。

那么,该数据库的默认凭据是什么? 尝试了我的用户凭据和 admin/admin、none 工作。 Admin/admin 是 SonarQube 管理员用户的默认值。

默认值为 sonar/sonar .

编辑:这是在SonarQube 5.6.x时回答的。最近的版本(例如 v6.7 LTS)可能已更改为空 username/password(对于嵌入式数据库)。

我使用的是声纳 6.5,用户名密码是默认值。 用户名为sa,没有任何密码。 我能够使用以下命令(从声纳主目录)备份数据库:

java -cp lib/jdbc/h2/h2-1.3.176.jar org.h2.tools.Script -url jdbc:h2:tcp://localhost:9092/sonar

等同于:

java -cp lib/jdbc/h2/h2-1.3.176.jar org.h2.tools.Script -url jdbc:h2:tcp://localhost:9092/sonar -user sa

此外,如果服务器出现故障,您仍然可以使用以下方式访问数据库:

-url jdbc:h2:<SONAR_HOME>/data/sonar -user sa

默认为 admin/admin 7.1 版。使用 brew 安装。

对于下面的配置(openjdk-11sonarqube-8),按照以下步骤操作:

  • 将目录更改为 /opt/sq/lib/jdbc/h2

    cd /opt/sq/lib/jdbc/h2

  • 运行命令行下面打开h2shell

    java -cp h2-1.3.176.jar org.h2.tools.Shell

系统会提示您填写以下内容:

  • URL jdbc:h2:localhost:9000/data/sonar

  • 驱动程序 org.h2.Driver

  • 用户声纳

  • 密码声纳

以下是 SonarQube v8.4.2 的说明:

使用管理凭据登录 SonarQube 后(admin/admin,如果您下载的是原始安装),那么您可以从标有“管理”的顶部菜单导航,点击“系统”,点击“ System" drop-down 框,然后查找数据库部分。您会找到“user”和“URL”。确认这是您所期望的。

在我的默认安装中,我使用以下方法登录到 H2 控制台(在确保我的 SonarQube 实例启动后,我不得不重新启动它,因为它 运行 也太长了,我认为它一定是停滞了):

Driver Class: org.h2.Driver
JDBC URL: jdbc:h2:tcp://localhost:9092/sonar

不需要用户名和密码。如果你想设置一个,那么你可以修改sonar.jdbc.usernamesonar.jdbc.password属性your-sonarqube-installation-directory/conf/sonar.properties 文件。这是它的一个片段:

# User credentials.
# Permissions to create tables, indices and triggers must be granted to JDBC user.
# The schema must be created first.
#sonar.jdbc.username=
#sonar.jdbc.password=

#----- Embedded Database (default)
# H2 embedded database server listening port, defaults to 9092
#sonar.embeddedDatabase.port=9092