Skip to content

Commit 1071340

Browse files
authored
Merge branch 'dev' into imgrefresh-batch2
2 parents 59b368d + b4a5f48 commit 1071340

File tree

8 files changed

+110
-39
lines changed

8 files changed

+110
-39
lines changed
163 KB
Loading

modules/ROOT/images/cluster-on-k8s.svg

Lines changed: 1 addition & 1 deletion
Loading

modules/ROOT/pages/backup-restore/consistency-checker.adoc

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ Value can be plain numbers, like `10000000` or e.g. `20G` for 20 gigabytes, or e
115115
| xref:configuration/configuration-settings.adoc#config_server.directories.transaction.logs.root[`server.directories.transaction.logs.root`]
116116

117117
|--from-path=<path>
118-
|Path to the directory containing dump/backup artifacts that need to be checked for consistency. If the directory contains multiple backups, it will select the most recent backup chain, based on the transaction IDs found, to perform the consistency check.
118+
|label:changed[Changed in 2025.09] Path to a backup file or a directory containing dump/backup artifacts. If the path is to a single file, that artifact is selected and checked for consistency. If a directory is provided, the tool selects the most recent backup chain (based on transaction IDs) within it and checks that chain for consistency.
119119
|
120120

121121
|--temp-path=<path>
@@ -208,11 +208,13 @@ The backup chain must be aggregated into a full recovered backup artifact before
208208
See xref:backup-restore/aggregate.adoc[] for more details.
209209
====
210210

211-
Run with the `--from-path` option to check the consistency of a backup or a dump:
211+
Run with the `--from-path` option to check the consistency of a backup or a dump. +
212+
Starting with Neo4j 2025.09, the option accepts a path to a specific backup or dump file you want to be checked for consistency.
213+
If only the directory is provided, the most recent backup chain (based on transaction IDs) within that directory will be checked.
212214

213215
[source,shell]
214216
----
215-
bin/neo4j-admin database check --from-path=<directory-with-backup-or-dump> neo4j
217+
bin/neo4j-admin database check --from-path=<path-to-backup-or-dump> neo4j
216218
----
217219

218220
[[check-database-from-cloud-uris]]

modules/ROOT/pages/backup-restore/online-backup.adoc

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,8 @@ For more information, see xref:backup-restore/online-backup.adoc#online-backup-c
6666
----
6767
neo4j-admin database backup [-h] [--expand-commands] [--prefer-diff-as-parent] [--verbose]
6868
[--compress[=true|false]] [--keep-failed[=true|false]]
69-
[--parallel-recovery[=true|false]] [--additional-config=<file>]
69+
[--parallel-recovery[=true|false]] [--remote-address-resolution
70+
[=true|false]] [--additional-config=<file>]
7071
[--include-metadata=none|all|users|roles] [--inspect-path=<path>]
7172
[--pagecache=<size>] [--temp-path=<path>] [--to-path=<path>]
7273
[--type=<type>] [--from=<host:port>[,<host:port>...]]... [<database>...]
@@ -164,6 +165,10 @@ Note: this is an EXPERIMENTAL option. Consult Neo4j support before use.
164165
|label:new[Introduced in 2025.04] When performing a differential backup, prefer the latest non-empty differential backup as the parent instead of the latest backup.
165166
|false
166167

168+
|--remote-address-resolution[=true\|false]
169+
|label:new[Introduced in 2025.09] Allow the DBMS to automatically determine which servers are eligible to serve as backup sources, instead of requiring manual selection.
170+
|false
171+
167172
|--temp-path=<path>
168173
|Provide a path to a temporary empty directory for storing backup files until the command is completed. The files will be deleted once the command is finished.
169174
|
@@ -358,10 +363,26 @@ To view the latest processed transaction IDs (and other metrics) in Neo4j Browse
358363
====
359364

360365
==== Targeting multiple servers
366+
361367
It is recommended to provide a list of multiple target servers when taking a backup from a cluster, since that may allow a backup to succeed even if some server is down, or not all databases are hosted on the same servers.
362368
If the command finds one or more servers that do not respond, it continues trying to backup from other servers and continues backing up other requested databases, but the exit code of the command is non-zero, to alert the user to the fact there is a problem.
363369
If a name pattern is used for the database together with multiple target servers, all servers contribute to the list of matching databases.
364370

371+
[role=label--new-2025.09]
372+
==== Using `--remote-address-resolution`
373+
374+
Starting from 2025.09, the `--remote-address-resolution` option is available.
375+
When enabled, the DBMS automatically selects the most appropriate servers to act as backup sources for a given database.
376+
377+
By default, the online backup command requires the user to determine which servers host the target database and direct the command to one of them.
378+
With remote address resolution enabled, the DBMS performs this mapping automatically, removing the need for manual server selection.
379+
380+
The server selection occurs in the following order:
381+
382+
* The DBMS first selects all servers hosting the database in secondary mode.
383+
* If it is not possible to back up from one of the secondaries, the DBMS attempts to take a backup from the primary followers before finally trying the database primary writer.
384+
385+
365386
[[online-backup-example]]
366387
== Examples
367388

modules/ROOT/pages/backup-restore/planning.adoc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -183,6 +183,9 @@ Backing up a database in a clustered environment is not essentially different fr
183183
Use `SHOW DATABASE <database>` to learn which servers are hosting the database you want to back up.
184184
See xref:clustering/monitoring/show-databases-monitoring.adoc#show-databases-monitoring-listing-single[Listing a single database] for more information.
185185

186+
Starting from 2025.09, you can use the `--remote-address-resolution` option to let the DBMS select which servers to use as backup sources.
187+
See xref:backup-restore/online-backup.adoc#_using_remote_address_resolution[Back up an online database -> Cluster configurations] for more details.
188+
186189
Restoring from the command line involves putting a copy of the database on disk on each server that will need it.
187190
That can be awkward to achieve.
188191
The recommended way to restore a database in a cluster is to xref::database-administration/standard-databases/seed-from-uri.adoc[seed from URI].

modules/ROOT/pages/configuration/configuration-settings.adoc

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4058,7 +4058,7 @@ m|++++++
40584058
|Description
40594059
a|A list of attribute names on a user object that contains groups to be used for mapping to roles when LDAP authorization is enabled. This setting is ignored when `dbms.ldap_authorization_nested_groups_enabled` is `true`.
40604060
|Valid values
4061-
a|A comma-separated list where each element is a string, which Can not be empty.
4061+
a|A comma-separated list where each element is a string, which cannot be empty.
40624062
|Default value
40634063
m|+++memberOf+++
40644064
|===
@@ -4181,7 +4181,7 @@ m|+++false+++
41814181
|Description
41824182
a|The name of the base object or named context to search for user objects when LDAP authorization is enabled. A common case is that this matches the last part of `<<config_dbms.security.ldap.authentication.user_dn_template,dbms.security.ldap.authentication.user_dn_template>>`.
41834183
|Valid values
4184-
a|A string that Can not be empty.
4184+
a|A string that cannot be empty.
41854185
|Default value
41864186
m|+++ou=users,dc=example,dc=com+++
41874187
|===
@@ -4330,7 +4330,7 @@ m|+++false+++
43304330
|Description
43314331
a|Expected values of the Audience (aud) claim in the id token.
43324332
|Valid values
4333-
a|A comma-separated list where each element is a string, which Can not be empty.
4333+
a|A comma-separated list where each element is a string, which cannot be empty.
43344334
|===
43354335

43364336

@@ -4411,8 +4411,7 @@ a|A string that must be semicolon-separated list of key-value pairs or empty
44114411
|===
44124412
|Description
44134413
a|The claim to use as the list of groups in Neo4j. These could be Neo4J roles directly, or can be mapped using dbms.security.oidc.<provider>.authorization.group_to_role_mapping.
4414-
The JWT claim may also contain a single group returned as A string. as well as a list of groups as was previously required.
4415-
4414+
The claim specified should be a string type representing a single group, or an array of strings representing multiple groups.
44164415
|Valid values
44174416
a|A string.
44184417
|===
@@ -4426,7 +4425,7 @@ a|A string.
44264425
[frame="topbot", stripes=odd, grid="cols", cols="<1s,<4"]
44274426
|===
44284427
|Description
4429-
a|The claim to use as the username in Neo4j. This would typically be sub, but in some situations it may be be desirable to use something else such as email.
4428+
a|The claim to use as the username in Neo4j. This would typically be sub, but in some situations it may be desirable to use something else such as email.
44304429
|Valid values
44314430
a|A string.
44324431
|Default value

modules/ROOT/pages/installation/osx.adoc

Lines changed: 68 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -3,38 +3,32 @@
33
= macOS installation
44

55
Before you install Neo4j on macOS, check xref:installation/requirements.adoc[System Requirements] to see if your setup is suitable.
6-
6+
If it is not already installed, get link:https://openjdk.org/[OpenJDK 21] or link:https://www.azul.com/downloads/[ZuluJDK 21].
77

88
[[osx-console]]
9-
== Unix console application
9+
== Install and start Neo4j
1010

11-
. If it is not already installed, get link:https://openjdk.org/[OpenJDK 21] or link:https://www.azul.com/downloads/[ZuluJDK 21].
12-
. Download the latest release from link:{neo4j-download-center-uri}[Neo4j Deployment Center].
13-
+
14-
Select the appropriate tar.gz distribution for your platform.
15-
. Make sure to download Neo4j from link:{neo4j-download-center-uri}[Neo4j Deployment Center] and always check that the SHA hash of the downloaded file is correct:
16-
.. To find the correct SHA hash, go to Neo4j Deployment Center and click on `SHA-256` which will be located below your downloaded file.
17-
.. Using the appropriate commands for your platform, display the `SHA-256` hash for the file that you downloaded.
18-
.. Ensure that the two are identical.
19-
. Extract the contents of the archive, using `tar -xf` <filename>.
20-
For example, `tar -xf neo4j-community-{neo4j-version-exact}-unix.tar.gz`.
11+
You can install Neo4j on macOS either by downloading and extracting a TAR archive or by using the Homebrew package manager.
12+
13+
=== Install Neo4j using a tar archive
14+
15+
. Download the Linux/Mac Executable {neo4j-version-exact} (TAR) release from link:{neo4j-download-center-uri}[Neo4j Deployment Center].
16+
. Extract the contents of the archive, using `tar -xf <filename>` or by double-clicking the file.
2117
. Place the extracted files in a permanent home on your server and set the environment variable `NEO4J_HOME` to point to the extracted directory, for example, `export NEO4J_HOME=/path/to/_<NEO4J_HOME>` to make it easier to refer to it later.
22-
. xref:configuration/file-locations.adoc#file-locations-file-locations[Change the default locations] of the _data_, _conf_, _certificates_, _licenses_, and _plugins_ (if you plan to use custom plugins) directories by setting the environment variable `NEO4J_CONF` and the respective xref:configuration/configuration-settings.adoc#_server_directories_settings[`server.directories.*`] settings to point to the desired locations.
18+
. (Recommended) xref:configuration/file-locations.adoc#file-locations-file-locations[Change the default locations] of the _data_, _conf_, _certificates_, _licenses_, and _plugins_ (if you plan to use custom plugins) directories by setting the environment variable `NEO4J_CONF` and the respective xref:configuration/configuration-settings.adoc#_server_directories_settings[`server.directories.*`] settings to point to the desired locations.
2319
+
2420
[NOTE]
2521
====
2622
Storing your Neo4j files outside `NEO4J_HOME` will simplify the upgrade process later because you will be able to replace the DBMS binaries without affecting the configuration and state.
2723
Otherwise, these Neo4j files will remain in the old installation folder and may be accidentally overwritten during an upgrade or deleted during a subsequent uninstall.
2824
====
29-
. Accept either the commercial or the evaluation license agreement before running the Neo4j Enterprise Edition.
25+
. label:enterprise[Enterprise Edition] Accept either the commercial or the evaluation license agreement.
3026
If you are using Community Edition, you can skip this step.
3127
* Use one of the following options to accept the commercial license agreement.
3228
See the link:https://legal.neo4j.com/[Neo4j licensing] page for details on the available agreements.
33-
+
3429
** Set the environment variable `NEO4J_ACCEPT_LICENSE_AGREEMENT=yes`.
3530
** Run `$NEO4J_HOME/bin/neo4j-admin server license --accept-commercial`
3631
* Use one of the following options to accept the link:https://neo4j.com/terms/enterprise_us/[Neo4j Evaluation Agreement for Neo4j Software]:
37-
+
3832
** Set the environment variable `NEO4J_ACCEPT_LICENSE_AGREEMENT=eval`.
3933
** Run `$NEO4J_HOME/bin/neo4j-admin server license --accept-evaluation`.
4034
. Before starting up the database for the first time, it is recommended to use the `set-initial-password` command of `neo4j-admin` to define the password for the native user `neo4j`.
@@ -45,18 +39,69 @@ For more information, see xref:configuration/set-initial-password.adoc[].
4539
. Start Neo4j:
4640
* To run Neo4j as a console application, use: `$NEO4J_HOME/bin/neo4j console`.
4741
* To run Neo4j in a background process, use: `$NEO4J_HOME/bin/neo4j start`.
48-
. Open _\http://localhost:7474/_ in your web browser.
49-
. Connect using the username `neo4j` with your password or the default password `neo4j`.
50-
You will then be prompted to change the password.
51-
. Stop the server by typing `Ctrl-C` in the console.
5242

53-
When Neo4j runs in console mode, logs are printed to the terminal.
43+
=== Install Neo4j as a macOS service
44+
45+
The easiest way to install Neo4j as a service on macOS is to use the Homebrew package manager (see https://brew.sh/[Homebrew installation instructions]).
46+
47+
. Install Neo4j using Homebrew:
48+
+
49+
[source, shell]
50+
----
51+
brew install neo4j
52+
----
53+
+
54+
This command installs Neo4j Community Edition and sets it up as a service that can be managed using Homebrew.
55+
. (Recommended) If you want to change the default directories or other settings, you can do so in the `neo4j.conf` file located at `/opt/homebrew/Cellar/neo4j/{neo4j-version-exact}/libexec/conf/neo4j.conf`.
56+
If already started, changes to the configuration file will not take effect until you restart the Neo4j service using `brew services restart neo4j`.
57+
. Start Neo4j as a macOS service:
58+
+
59+
[source, shell]
60+
----
61+
brew services start neo4j
62+
----
63+
+
64+
This command starts the Neo4j service and sets it to launch automatically at system startup.
65+
. To check the status of the Neo4j service, use:
66+
+
67+
[source, shell]
68+
----
69+
brew services list
70+
----
5471

72+
Alternatively, if you want to install Neo4j Enterprise or prefer native service control, you can use the standard macOS system tools, such as `launchd`, to create a service based on the `neo4j` command.
5573

56-
== macOS service
74+
== Access Neo4j
5775

58-
Use the standard macOS system tools to create a service based on the `neo4j` command.
76+
By default, Neo4j Community Edition does not include graph tools such as visualization, data exploration, and monitoring.
77+
However, you can use the Neo4j Aura console to access these features for free.
78+
No subscription is required.
5979

80+
. Sign up or log in to the link:http://console-preview.neo4j.io/self-managed[Aura Console].
81+
. On the *Instances* page, click the *Self-managed* tab and then *+ Add deployment* button.
82+
. Select *URL Connection*.
83+
. Provide a *Name* and *Connection URL*.
84+
If you have installed Neo4j locally on your system, you can connect to _\http://localhost:7474_.
85+
. Click the *Connect* dropdown to launch various graph tools such as *Query*, *Explore*, and *Dashboards*.
86+
. Type the username `neo4j` and your password or the default password `neo4j`.
87+
You will be prompted to change the latter upon first login.
88+
+
89+
image::aura-add-deployment.png[width=800,alt=Aura add self-managed deployment]
90+
91+
You are now connected and can use the Aura Console to run Cypher queries, visualize graphs, and optionally monitor your local Neo4j database in Neo4j Aura.
92+
For details, see link:https://neo4j.com/docs/getting-started/#_work_with_data[Get started with Neo4j].
93+
94+
Alternatively, you can use the Neo4j Browser, a web-based user interface for interacting with Neo4j that is included with the Neo4j installation.
95+
To access the Neo4j Browser, open a web browser and navigate to _\http://localhost:7474_.
96+
Connect using the username `neo4j` with your password or the default password `neo4j`.
97+
If the default password is used, you will be prompted to change it upon first login.
98+
99+
== Logging
100+
101+
Neo4j logs are written to the _logs_ directory under _NEO4J_HOME_.
102+
For detailed information about the log files, see xref:monitoring/logging.adoc[Logging].
103+
104+
When Neo4j runs in console mode, logs are printed to the terminal.
60105

61106
== macOS file descriptor limits
62107

modules/ROOT/pages/kubernetes/operations/scaling.adoc

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -62,9 +62,9 @@ helm upgrade <release-name> neo4j/neo4j -f values.yaml
6262
[[horizontal-scaling]]
6363
== Horizontal scaling
6464

65-
You can add a new server to the Neo4j cluster to scale out write or read workloads.
65+
You can add a new server to the Neo4j cluster to scale out read workloads.
6666

67-
The following examples assume that you have a running Neo4j cluster with 3 servers and your Kubernetes cluster has a node available for the new server, `server4`.
67+
The following examples assume that you have a running Neo4j cluster with three servers and your Kubernetes cluster has a node available for the new server, `server4`.
6868

6969
Install `server4` using one of the following options:
7070

@@ -143,7 +143,7 @@ This feature is useful when you want to add a new server to the cluster and enab
143143
+
144144
[source, shell, subs="attributes"]
145145
----
146-
helm install server4 neo4j --set neo4j.edition=enterprise --set neo4j.acceptLicenseAgreement=yes --set volumes.data.mode=defaultStorageClass --set neo4j.password="password" --set neo4j.minimumClusterSize=3 --set neo4j.name=my-cluster --set neo4j.operations.enableServer=true --set image="neo4j/helm-charts-operations:5.26.0" --set protocol="neo4j"
146+
helm install server4 neo4j --set neo4j.edition=enterprise --set neo4j.acceptLicenseAgreement=yes --set volumes.data.mode=defaultStorageClass --set neo4j.password="password" --set neo4j.minimumClusterSize=3 --set neo4j.name=my-cluster --set neo4j.operations.enableServer=true --set image="neo4j/helm-charts-operations:2025.8.0" --set protocol="neo4j"
147147
----
148148

149149
* Use a _values.yaml_ file to set the values for the new server and the _neo4j/neo4j_ Helm chart to install the new server.
@@ -173,7 +173,7 @@ volumes:
173173
174174
operations:
175175
enableServer: true
176-
image: "neo4j/helm-charts-operations:5.26.0"
176+
image: "neo4j/helm-charts-operations:2025.8.0"
177177
# protocol can be "neo4j or "neo4j+ssc" or "neo4j+s". Default set to neo4j
178178
# Note: Do not specify bolt protocol here...it will FAIL.
179179
protocol: "neo4j"
@@ -256,4 +256,5 @@ SHOW DATABASES;
256256
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
257257
----
258258
+
259-
Note that `server4` now hosts the `neo4j` database with the `secondary` role.
259+
Note that `server4` now hosts the `neo4j` database with the `secondary` role.
260+

0 commit comments

Comments
 (0)