在Neo4j 4.2.3 Community Server上删除DB和事务日志



我正在尝试将一些数据导入neo4j(社区服务器),如下所示:每天,我需要删除数据并导入新数据。在neo4j的早期版本(3.x)中,我能够通过使用以下命令执行db数据删除echo "$(cat /etc/neo4j/neo4j.conf| sed -n 's/.*dbms.directories.data=//p')"/databases/"$(cat /etc/neo4j/neo4j.conf | sed -n 's/.*dbms.active_database=//p')"/* | xargs rm -rf

现在,当我运行相同的命令时,似乎db被删除了,但事务日志没有被删除,因此neo4j无法启动。

Directories in use:
home:         /var/lib/neo4j
config:       /etc/neo4j
logs:         /var/log/neo4j
plugins:      /var/lib/neo4j/plugins
import:       /var/lib/neo4j/import
data:         /var/lib/neo4j/data
certificates: /var/lib/neo4j/certificates
run:          /var/run/neo4j
Starting Neo4j.
WARNING: Max 1024 open files allowed, minimum of 40000 recommended. See the Neo4                                                                                                                                                             j manual.
2021-02-11 21:45:22.869+0000 INFO  Starting...
2021-02-11 21:45:24.342+0000 INFO  ======== Neo4j 4.2.3 ========
2021-02-11 21:45:32.737+0000 ERROR Failed to start Neo4j on dbms.connector.http.listen_address, a socket address. If missing port or hostname it is acquired from dbms.default_listen_address.
java.lang.RuntimeException: Error starting Neo4j database server at /var/lib/neo4j/data/databases
at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:207) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.build(DatabaseManagementServiceFactory.java:163) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.server.CommunityBootstrapper.createNeo(CommunityBootstrapper.java:36) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:134) [neo4j-4.2.3.jar:4.2.3]
at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:90) [neo4j-4.2.3.jar:4.2.3]
at org.neo4j.server.CommunityEntryPoint.main(CommunityEntryPoint.java:35) [neo4j-4.2.3.jar:4.2.3]
Caused by: org.neo4j.kernel.lifecycle.LifecycleException: Component 'org.neo4j.dbms.database.DefaultSystemGraphInitializer@5634a861' was successfully initialized, but failed to start. Please see the attached cause exception "Fail to start 'DatabaseId{00000000[system]}' since transaction logs were found, while database files are missing.".
at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:463) ~[neo4j-common-4.2.3.jar:4.2.3]
at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:110) ~[neo4j-common-4.2.3.jar:4.2.3]
at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:198) ~[neo4j-4.2.3.jar:4.2.3]
... 5 more
Caused by: java.lang.IllegalStateException: Failed to initialize system graph component: This database is shutdown.
at org.neo4j.dbms.database.SystemGraphComponents.initializeSystemGraph(SystemGraphComponents.java:102) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.DefaultSystemGraphInitializer.initializeSystemGraph(DefaultSystemGraphInitializer.java:41) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.SystemGraphInitializer.start(SystemGraphInitializer.java:29) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:442) ~[neo4j-common-4.2.3.jar:4.2.3]
at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:110) ~[neo4j-common-4.2.3.jar:4.2.3]
at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:198) ~[neo4j-4.2.3.jar:4.2.3]
... 5 more
Caused by: org.neo4j.graphdb.DatabaseShutdownException: This database is shutdown.
at org.neo4j.kernel.availability.DatabaseAvailabilityGuard.assertDatabaseAvailable(DatabaseAvailabilityGuard.java:172) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginKernelTransaction(GraphDatabaseFacade.java:197) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTransactionInternal(GraphDatabaseFacade.java:176) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTransaction(GraphDatabaseFacade.java:122) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTransaction(GraphDatabaseFacade.java:116) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTransaction(GraphDatabaseFacade.java:104) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTx(GraphDatabaseFacade.java:99) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractSystemGraphComponent.detect(AbstractSystemGraphComponent.java:118) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractSystemGraphComponent.initializeSystemGraph(AbstractSystemGraphComponent.java:93) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.SystemGraphComponents.initializeSystemGraph(SystemGraphComponents.java:92) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.DefaultSystemGraphInitializer.initializeSystemGraph(DefaultSystemGraphInitializer.java:41) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.SystemGraphInitializer.start(SystemGraphInitializer.java:29) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:442) ~[neo4j-common-4.2.3.jar:4.2.3]
at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:110) ~[neo4j-common-4.2.3.jar:4.2.3]
at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:198) ~[neo4j-4.2.3.jar:4.2.3]
... 5 more
Suppressed: org.neo4j.graphdb.DatabaseShutdownException: This database is shutdown.
at org.neo4j.kernel.availability.DatabaseAvailabilityGuard.assertDatabaseAvailable(DatabaseAvailabilityGuard.java:172) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginKernelTransaction(GraphDatabaseFacade.java:197) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTransactionInternal(GraphDatabaseFacade.java:176) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTransaction(GraphDatabaseFacade.java:122) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTransaction(GraphDatabaseFacade.java:116) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTransaction(GraphDatabaseFacade.java:104) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTx(GraphDatabaseFacade.java:99) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractSystemGraphComponent.detect(AbstractSystemGraphComponent.java:118) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractSystemGraphComponent.initializeSystemGraph(AbstractSystemGraphComponent.java:93) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.SystemGraphComponents.initializeSystemGraph(SystemGraphComponents.java:92) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.DefaultSystemGraphInitializer.initializeSystemGraph(DefaultSystemGraphInitializer.java:41) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.SystemGraphInitializer.start(SystemGraphInitializer.java:29) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:442) ~[neo4j-common-4.2.3.jar:4.2.3]
at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:110) ~[neo4j-common-4.2.3.jar:4.2.3]
at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:198) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.build(DatabaseManagementServiceFactory.java:163) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.server.CommunityBootstrapper.createNeo(CommunityBootstrapper.java:36) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:134) [neo4j-4.2.3.jar:4.2.3]
at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:90) [neo4j-4.2.3.jar:4.2.3]
at org.neo4j.server.CommunityEntryPoint.main(CommunityEntryPoint.java:35) [neo4j-4.2.3.jar:4.2.3]
Caused by: java.lang.RuntimeException: Fail to start 'DatabaseId{00000000[system]}' since transaction logs were found, while database files are missing.
at org.neo4j.kernel.database.Database.validateLogsAndStoreAbsence(Database.java:546) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.database.Database.validateStoreAndTxLogs(Database.java:538) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.database.Database.start(Database.java:419) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractDatabaseManager.startDatabase(AbstractDatabaseManager.java:187) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.DefaultDatabaseManager.startDatabase(DefaultDatabaseManager.java:152) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.DefaultDatabaseManager.startDatabase(DefaultDatabaseManager.java:36) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractDatabaseManager.forEachDatabase(AbstractDatabaseManager.java:165) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractDatabaseManager.startAllDatabases(AbstractDatabaseManager.java:112) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractDatabaseManager.start(AbstractDatabaseManager.java:106) ~[neo4j-4.2.3.jar:4.2.3]
... 8 more
Suppressed: org.neo4j.graphdb.DatabaseShutdownException: This database is shutdown.
at org.neo4j.kernel.availability.DatabaseAvailabilityGuard.assertDatabaseAvailable(DatabaseAvailabilityGuard.java:172) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginKernelTransaction(GraphDatabaseFacade.java:197) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTransactionInternal(GraphDatabaseFacade.java:176) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTransaction(GraphDatabaseFacade.java:122) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTransaction(GraphDatabaseFacade.java:116) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTransaction(GraphDatabaseFacade.java:104) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTx(GraphDatabaseFacade.java:99) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractSystemGraphComponent.detect(AbstractSystemGraphComponent.java:118) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractSystemGraphComponent.initializeSystemGraph(AbstractSystemGraphComponent.java:93) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.SystemGraphComponents.initializeSystemGraph(SystemGraphComponents.java:92) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.DefaultSystemGraphInitializer.initializeSystemGraph(DefaultSystemGraphInitializer.java:41) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.SystemGraphInitializer.start(SystemGraphInitializer.java:29) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:442) ~[neo4j-common-4.2.3.jar:4.2.3]
at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:110) ~[neo4j-common-4.2.3.jar:4.2.3]
at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:198) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.build(DatabaseManagementServiceFactory.java:163) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.server.CommunityBootstrapper.createNeo(CommunityBootstrapper.java:36) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:134) [neo4j-4.2.3.jar:4.2.3]
at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:90) [neo4j-4.2.3.jar:4.2.3]
at org.neo4j.server.CommunityEntryPoint.main(CommunityEntryPoint.java:35) [neo4j-4.2.3.jar:4.2.3]
Caused by: java.lang.RuntimeException: Fail to start 'DatabaseId{00000000[system]}' since transaction logs were found, while database files are missing.
at org.neo4j.kernel.database.Database.validateLogsAndStoreAbsence(Database.java:546) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.database.Database.validateStoreAndTxLogs(Database.java:538) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.database.Database.start(Database.java:419) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractDatabaseManager.startDatabase(AbstractDatabaseManager.java:187) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.DefaultDatabaseManager.startDatabase(DefaultDatabaseManager.java:152) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.DefaultDatabaseManager.startDatabase(DefaultDatabaseManager.java:36) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractDatabaseManager.forEachDatabase(AbstractDatabaseManager.java:165) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractDatabaseManager.startAllDatabases(AbstractDatabaseManager.java:112) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractDatabaseManager.start(AbstractDatabaseManager.java:106) ~[neo4j-4.2.3.jar:4.2.3]
... 8 more
Caused by: java.lang.RuntimeException: Fail to start 'DatabaseId{00000000[system]}' since transaction logs were found, while database files are missing.
at org.neo4j.kernel.database.Database.validateLogsAndStoreAbsence(Database.java:546) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.database.Database.validateStoreAndTxLogs(Database.java:538) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.kernel.database.Database.start(Database.java:419) ~[neo4j-kernel-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractDatabaseManager.startDatabase(AbstractDatabaseManager.java:187) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.DefaultDatabaseManager.startDatabase(DefaultDatabaseManager.java:152) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.DefaultDatabaseManager.startDatabase(DefaultDatabaseManager.java:36) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractDatabaseManager.forEachDatabase(AbstractDatabaseManager.java:165) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractDatabaseManager.startAllDatabases(AbstractDatabaseManager.java:112) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.dbms.database.AbstractDatabaseManager.start(AbstractDatabaseManager.java:106) ~[neo4j-4.2.3.jar:4.2.3]
at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:442) ~[neo4j-common-4.2.3.jar:4.2.3]
at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:110) ~[neo4j-common-4.2.3.jar:4.2.3]
at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:198) ~[neo4j-4.2.3.jar:4.2.3]
... 5 more
2021-02-11 21:45:32.746+0000 INFO  Neo4j Server shutdown initiated by request

有什么线索吗?手动删除data文件夹的全部内容并没有太大帮助,因为为了允许导入而对db进行的身份验证不再有效。

使用Neo4j 4+,您需要删除:

/data/databases/<your_db_name>
/data/transactions/<your_db_name>

最新更新