Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Neo4J - Database failed to create: Error: Could not change password

I am trying to create a database for my Neo4J Desktop, but everytime I attempt to do so, I get the following: Database failed to create: Error: Could not change password

How can I fix this and successfully create the Database?

I'm running Neo4J Desktop 1.0.18 and attempting to work with Neo4J 3.3.3.

like image 309
J. Hanobik Avatar asked Mar 17 '18 22:03

J. Hanobik


3 Answers

I was in the same situation apparently. First check that your problem was the same as mine!

1 - Within the application Neo4J Desktop access the menu: Developer\Developer Tools

enter image description here

2 - Select the Console tab
3 - Try again to create the Database
4 - Check if the error message appears:
Neo4jAdmin: Error: missing "server" JVM at "C:\Program Files (x86)\Java\jre1.8.0_201\bin\server\jvm.dll". Please install or use the JRE or JDK that contains these missing components.

enter image description here

If this is happening with you, do the following:

1 - Go to the directory where the jre is installed, in my case it was in:
C:\Program Files (x86)\Java\jre1.8.0_201\bin
2 - Within this directory create a folder called server
3 - Still in the bin directory, go to the client directory
4 - Copy all content from the client folder into the sever folder
5 - Restart Neo4J Desktop as administrator
6 - Try again to create the database

Hope this helps!

like image 89
Alexandre Neukirchen Avatar answered Sep 29 '22 15:09

Alexandre Neukirchen


I had a similar problem; here is what I did to solve it:

  1. remove the file located at %NEO4J_HOME%/data/dbms/auth or at least move it somewhere else.

  2. restart Neo4J Desktop

  3. If the problem isn't solved yet, put the file mentionned in 1. back at %NEO4J_HOME%/data/dbms/auth

PS: %NEO4J_HOME% is the path to your Neo4J installation folder

like image 37
L.J.M BETE Avatar answered Sep 29 '22 14:09

L.J.M BETE


I'm having exactly the same problem.

Specs below-

Neo4j Desktop: 1.0.18
Neo4j: 3.3.4
Platform: Windows 10 Enterprise v 1703

To be clear, this is occurring (for me) on the Windows platform. It would be helpful if other commenters could clarify which platform they are using.

Since my original reply I have tried-

  • Upgrading to Neo4J 1.0.19
  • Installing for all users, not just my account

Neither of these has helped.

Looking at the Neo4J log file, I think this shows where the problem is-

[2018-03-29 11:20:04:0542] [info] Executing 'C:\Users\<mylogin>\.Neo4jDesktop\neo4jDatabases\database-c2c04041-5a81-43fe-a004-56b1c47f4c1c\installation-3.3.4\bin\neo4j-admin.bat' [ 'set-initial-password', 'password' ]
[2018-03-29 11:20:08:0511] [error] Neo4jAdmin: Invoke-Neo4jAdmin : An object at the specified path C:\Users\<mylogin in 8.2 format> does not exist.
At line:1 char:163
+ ... agement.psd1'; Exit (Invoke-Neo4jAdmin set-initial-password password)
+                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

There is a neo4j-admin.bat file at the path specified, but it looks as if Neo4J isn't finding it.

The error message shows the path to the .bat file truncated at the "personal folder" point. In our corporate PC config we have a domain name appended to our personal file paths, so my personal folder looks like <myname>.<domainname> .

The error has converted this path to the old DOS "8.3" format in the form "MYNAM~1.COR" and then choked.

I'm guessing at this point, but I would say Neo4J has not been tested on a Windows environment with "complex" names in the users file paths. Somewhere they are falling foul of Windows still-present "file name mangling" feature that munges long filenames down to 8.3 format.

UPDATE: Out of interest I tried manually running the neo4j-admin.bat script (in a cmd window) that the error points to, results were-

neo4j-admin "set-initial-password" password
Invoke-Neo4jAdmin : Unable to determine the path to java.exe
    At line:1 char:163
    + ... agement.psd1'; Exit (Invoke-Neo4jAdmin set-initial-password password)
    +                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
        + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,Invoke-Neo4jAdmin

I think this indicates that the script is trying to run, but needs a bunch of environment set up, that would normally be handled by Neo4J itself.

I feel more confident in saying this is an issue, at least for the Windows install, caused by Neo4J's configuration tools and scripts not handling Windows pathnames correctly.

UPDATE2:

I reported this as a bug in Neo4J (BugID #11429 in GITHub).

The developers are saying it has been fixed, The fix will be included in a future release. Full text of the response-

    This issue should have been resolved with #11469.

    The fixed script will be included in upcoming releases. For the time
being, you can override your TEMP and TMP environment variables with a
path that doesn't contain MSDOS8.3 convention path entries
(as suggested by @chrisp429 in #9646).

    Feel free to re-open the issue if you encounter the error again with new versions.
like image 24
Incans Avatar answered Sep 29 '22 13:09

Incans