access/derby
derby DB的备份。
启动新版本,数据库迁移失败。看起来多个JVM试图连接:
2025-02-20T20:48:20.106Z [jftpl] [ERROR] [ ] [o.s.b.SpringApplication:857 ] [main ] - Application run failed
com.jfrog.topology.server.changelogs.DatabaseMigrationException: org.flywaydb.core.internal.dbsupport.FlywaySqlException:
Unable to obtain Jdbc connection from DataSource
------------------------------------------------
SQL State : XSDB6
Error Code : 45000
Message : Another instance of Derby may have already booted the database /var/opt/jfrog/artifactory/data/derby.
我在释放指出中看到“ Jfrog拓扑”是一项新服务,它是从Access中提取的”
.。我尝试仅手动使用
sudo -u artifactory /opt/jfrog/artifactory/app/topology/bin/topology.sh
启动该服务,该服务效果很好。
Config:
shared:
database:
allowNonPostgresql: true
type: derby
driver: org.apache.derby.jdbc.EmbeddedDriver
url: jdbc:derby:/opt/jfrog/artifactory/var/data/artifactory/derby
user: artifactory
artifactory:
port: 8081
tomcat:
...
access:
http:
port: 8040
database:
type: derby
driver: org.apache.derby.jdbc.EmbeddedDriver
url: jdbc:derby:/opt/jfrog/artifactory/var/data/access/derby
tomcat:
...
升级失败后,我试图返回7.90.6。我还恢复了两个数据库,不幸的是,
jfmd
元数据服务未能从“数据库中的未知迁移开始:v040_resize_pkg_tags_value_column.sql”:
2025-02-20T20:27:03.274Z [jfmd ] [INFO ] [ ] [database_bearer.go:143 ] [main ] - Db connection driver::sqlite3 and kerberosAuth::false [database]
2025-02-20T20:27:03.276Z [jfmd ] [INFO ] [ ] [database_bearer.go:158 ] [main ] - Connecting to (db config: {sqlite jdbc:derby:/opt/jfrog/artifactory/var/data/artifactory/derby}) [database]
2025-02-20T20:27:03.309Z [jfmd ] [INFO ] [ ] [migrator.go:63 ] [main ] - Applying migration files [database]
2025-02-20T20:27:03.310Z [jfmd ] [INFO ] [ ] [migrator.go:164 ] [main ] - Migration lock table created or is already present [database]
2025-02-20T20:27:03.310Z [jfmd ] [INFO ] [ ] [migration_lock_manager.go:49 ] [main ] - Trying to acquire migration lock for ip-172-31-10-237 [database]
2025-02-20T20:27:03.328Z [jfmd ] [INFO ] [ ] [migration_lock_manager.go:70 ] [main ] - Migration lock acquired for ip-172-31-10-237 [database]
2025-02-20T20:27:03.328Z [jfmd ] [INFO ] [ ] [migration_lock_manager.go:76 ] [main ] - Trying to release lock owned by: ip-172-31-10-237 [database]
2025-02-20T20:27:03.335Z [jfmd ] [INFO ] [ ] [migration_lock_manager.go:90 ] [main ] - Released lock owned by node ip-172-31-10-237 [database]
2025-02-20T20:27:03.336Z [jfmd ] [ERROR] [ ] [application.go:99 ] [main ] - Could not execute database migrations unknown migration in database: v040_resize_pkg_tags_value_column.sql
jfrog.com/metadata/v7/services/common/db.validateNoUnknownMigrations
jfrog.com/metadata/[email protected]/services/common/db/migrator_planner.go:61
所以我现在被困了。无论哪种方式都会有所帮助...
jfmd
i至少通过使用Derby Network Server启动了新版本7.104.7。这个想法要归功于聊天机器人,iirc. Config更改:
shared:
database:
allowNonPostgresql: true
type: derby
#driver: org.apache.derby.jdbc.EmbeddedDriver
driver: org.apache.derby.jdbc.ClientDriver
#url: jdbc:derby:/opt/jfrog/artifactory/var/data/artifactory/derby
url: jdbc:derby://localhost:1527//opt/jfrog/artifactory/var/data/artifactory/derby
username: APP
password: APP
访问客户端驱动程序库(注意:两个不同的版本):
db-derby-10.17.1.0-bin/lib/derbyclient.jar
到
/opt/jfrog/artifactory/app/artifactory/tomcat/lib/
db-derby-10.14.2.0-bin/lib/derbyclient.jar
到
/opt/jfrog/artifactory/app/topology/tomcat/lib/
sudo -u artifactory java -jar db-derby-10.17.1.0-bin/lib/derbyrun.jar server start