我使用独立安装程序(不是来自 war 发行版)安装了 JIRA。据我了解,独立版本会立即安装数据库和所有依赖项。现在我需要访问该数据库,但我不知道默认的数据库用户和密码是什么,也不知道如何连接到它。我可以以 root 身份访问运行 JIRA 的计算机。有什么想法吗?
最佳答案
接受的答案没有给出实际的说明和链接 has moved .
更完整的答案可以节省我的时间,因此我添加了详细的答案,以防对其他人有帮助:
- 查找数据库目录
- “HSQL 将其数据库作为文本文件存储在文件系统中。通常这些文件将位于 JIRA 应用程序主目录的数据库子目录中”
- 即
path/to/JIRA/HOME/database
- 注意:文件
jiradb.script
将位于此目录中,因此您可以尝试仅搜索该文件。在 Mac/Unix 上:find . -name "*jiradb.script"
- 关闭 JIRA(如果正在运行)
- 当 JIRA 运行时,它会锁定数据库,因此您必须首先终止服务器
- 为此,只需运行
path/to/JIRA/bin/stop-jira.sh
- 运行 HSQLDB jar
- 此位置位于
/lib
文件夹(即路径/to/JIRA/lib) - 使用以下命令运行 jar(全部在一行):
java -cp lib/hsqldb-1.8.0.5.jar org.hsqldb.util.DatabaseManager -user sa -url jdbc:hsqldb:HOME/database/jiradb
- 请注意,/HOME 和/lib 文件夹均位于 JIRA 安装的根目录下。因此,为了使其正常工作,我必须
cd
首先是根目录,对我来说就像/Users/mymachine/Downloads/atlassian-jira-6.4.9-standalone
jiradb
上面的命令只是告诉 DatabaseManager 类要使用哪个文件前缀。实际的数据库位于jiradb.script
- 此位置位于
仅限命令行
如果您无法访问图形环境,例如在 headless Unix 系统上,则上述步骤 3 将不起作用。该命令会提示 DISPLAY 变量未设置,或者无法连接到 X11 实例。
这是一个备用 HSQLDB 命令,它将在非图形设置中工作:
- Download最新的 zip 文件。这包含
lib/sqltool.jar
,lib/hsqldb.jar
,和sample/sqltool.rc
,所有这些都是您所需要的。 Set up an rc file使用适当的连接字符串(在我的示例中名为jira)。示例 rc 文件中的个人条目是一个很好的起点:只需将文件路径更改为 jira 数据库的位置即可。
urlid jira url jdbc:hsqldb:file:${user.home}/tmp/jiradb;shutdown=true username SA password transio TRANSACTION_READ_COMMITTED
运行
sqltool.jar
而不是hsqldb.jar
。您现在可以针对此数据库运行 SQL 命令$ java -jar sqltool.jar jira
关于jira - 如何连接到 JIRA 独立安装的数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7476756/