Exploring Graphs with Elixir: Installing Neo4j (p.141)

Exploring Graphs with Elixir by @tonyhammond: P.181 — Ch 5 > Creating the PropertyGraph Project

For anyone curious about installing Neo4j or experiencing issues.
There’s a “Neo4j Desktop” which includes “Enterprise Edition”, and there’s a “Community Edition” which I chose.

For Mac, I used this Homebrew formula
Also brew install the listed openjdk version to avoid potential errors when starting neo4j.
I had a previous openjdk version installed which caused issues, so reinstalled.

If using APOC, you probably might need to enable it as a plugin.
For mac, I went to my installation directory at: $HOME/neo4j)
then move the “apoc-version-core.jar” file from the “labs” to the “plugins” directory.

Lastly, if you’re getting errors, you may need to modify the neo4j configuration file to allow security settings for external plugins/other full database access
Mac with Homebrew: $HOME/neo4j/conf/neo4j.conf

I added this line after googling my error:

dbms.security.procedures.unrestricted=gds.*,apoc.*

Hi mvellandi:

Am late to this forum but will be going back though your earlier comments. And thanks for posting those. Let me start here anyway. :slight_smile:

So, I had been keping (brief) notes on server installation back to an appendix which we didn’t include in the beta. I thought I had also included something about APOC installation there but now see that I haven’t. Must have made a mental note and then not followed up. But perhaps I could have also said something in the text. I just saw that I added something similar for the n10s library in Chapter 11:

Installation is very simple. You just need to copy the neosemantics jar file into the plugins folder of your local Neo4j instance, update the Neo4j config file, and restart the server. For details, see the Installation guidelines.

Btw, I didn’t know you could install Neo4j using brew. Very cool. Also I did have to upgrade my openjdk for the latest Neo4j.

One thing I haven’t discussed in the book are the UIs for the various graph databases which can be very helpful in visualizing the graphs. I guess I was more focused on interacting with graph databases from an Elixir perspective only, and mainly from IEx. And so I didn’t talk about jumping between different tools which certainly allows for a much better understanding.