How to use one database on two real systems

Product/components used and version/fix level:

Linux 2.6 (CentOS 6.10)
Hercules 4.7
z/VM 4.4
Adabas 6.2.3
Natural 3.16

Detailed explanation of the problem:

How to share ASSO and DATA DASDs between two real systems?

We have two x86 servers.
First server (Linux-Hercules-z/VM-Adabas) have r/w access to ASSO and DATA DASDs.
And second server (Linux-Hercules-z/VM-Adabas) should have read-only access. Second Hercules instance use ASSO and DATA DASDs in read-only mode.
ASSO and DATA DASDs difined as SHARED in both z/VM systems.
Both ADABAS nucleus start with (ASSO/WORK/DATA/TEMP/SORT)CACHE=NO, second ADABAS nucleus start with READONLY=YES.
But to see the changes on the second server, we need to restart the r/w nucleus first and then the read-only nucleus, and only in that order.

In other words, how to use the same ASSO and DATA data sets on two lpars or basics?

We must definitely use ADAPLEX+ ?

Please help me understand whether it is possible to distribute the load across two real servers in our case.

Thanks in advance.

Hi Evgen,
We use a similar structure. In order for 2 servers to access the same data, we keep the data on a 3rd server and mount it on 2 servers. We set up a failover structure on these servers. When one server is active, it opens access authorization to the directory we mount, and removes access authorization from the other server that is inactive.

Thanks for reply.
How do you mount the data? How is it organized? As I understand, you use one server at a time.
Is it possible to use two servers at the same time?
I tested different schemes, but changes made on one server are visible on the second only after restarting both Adabas nucleus.

Organization, i.e. authorization, is done automatically by failover according to the activity of the relevant application. Doing this while two separate servers are active can technically cause errors as you said.

I look at the process as follows. I have 2 separate servers running and one of these servers is active and one is passive. I have an active machine and this machine is connected to a db. In case of error, my active machine becomes inactive and my inactive machine automatically becomes active and connects to the same db with the same information. The data appears on the second machine as well as on the first machine without the need for any restart.

Your solution is aimed at increasing fault tolerance, I will take note of it.
But in my case clustering and load balancing are most needed.

I have a suggestion for you. Maybe it will help you. We use 2 active servers. There is a load balancer in front and behind this load balancer there are 2 active application servers. A request comes to the domain name on a load balancer. The load balancer sends the requests to the two servers in order with the Round Robin algorithm. But while doing this, you should not put an extra cluster server in front of the two servers.