Xray DB连接的快速调试技巧

罗兰杨
2023-01-22十一10

与系统相关。只安装Yaml。在撰写本文时,这是Xray 3.x+。

x光的系统。与基于Java的系统相比,Yaml的数据库条目略有不同。yamls和Artifactory一样,尽管它们都是postgres支持的。让我们来看一个示例数据库片段Artifactory:共享:
数据库:
类型:postgresql
司机:org.postgresql.Driver
url: jdbc: postgresql: / / 10.138.0.1:5432 / artifactory
用户名:artifactory
密码:<编辑>

与x光相比:共享:
数据库:
类型:postgresql
司机:org.postgresql.Driver
url: postgres: / / 10.138.0.1:5432 / x光
用户名:x光
密码:<编辑>

它们看起来很相似,对吧?一个常见的错误是管理员会在JFrog产品中使用相同的格式,但忽略了URL格式。hth华体会最新官方网站注意,Artifactory's前面有'jdbc',而Xray没有这样的前缀。Artifactory是一个基于java的产品,因此使用了“java数据库连接”。x射线是用Golang写的,因此不需要。另一个常见的是Artifactory的url是'postgresql://',但在x射线中,它应该是'postgres://'

如果没有处理这些点,Xray将假设url不正确,忽略提供的url,并尝试使用默认url (localhost)。这可能会导致一些奇怪的错误,比如数据库“不可达”或用户/密码组合错误,这取决于你的设置方式,例如:

关键错误:退出x射线程序,原因:dial tcp 127.0.0.1:5432:连接:连接被拒绝

所以总的来说,它是从:

url: jdbc: postgresql: / / 10.138.0.1:5432 / artifactory

url: postgres: / / 10.138.0.1:5432 / x光

另一个争论点是RabbitMQ。默认情况下,rabbitMQ密码将在安装过程中注入,但有时系统会注入。Yaml是通过其他方式提供的,比如自动化。

如果你看到一些错误,比如rabbitMQ的403,你可能错过了以下部分:共享:
rabbitMq:
用户名:客人
密码:JFXR_RABBITMQ_COOKIE

默认密码为“JFXR_RABBITMQ_COOKIE”*。您可以通过以下步骤修改密码://m.si-fil.com/confluence/display/JFROG/Installing+Xray#InstallingXray-ChangingRabbitMQDatabaseCredentials
*如果你从2升级。xinstance, the default password is 'guest'

记得更新系统。如果你有,就用Yaml。