Skip to content

Commit 9270c02

Browse files
committed
WIP
1 parent ec95b22 commit 9270c02

File tree

1 file changed

+9
-21
lines changed

1 file changed

+9
-21
lines changed

modules/ROOT/pages/clustering/disaster-recovery.adoc

Lines changed: 9 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -170,31 +170,19 @@ However, not adding new servers reduces the capacity of the cluster to handle wo
170170
Furthermore, it might require the topology for a database to be altered to make deallocating servers and recreating databases possible.
171171
=====
172172
173-
// ? from here
174-
. For each `CORDONED` server, run `DEALLOCATE DATABASES FROM SERVER cordoned-server-id` on one of the available servers.
175-
This will try to move all database allocations from this server to an available server in the cluster.
176-
Once a server is `DEALLOCATED`, all allocated user databases on this server has been moved successfully.
177-
+
178-
[NOTE]
179-
=====
180-
Remember, moving databases can take an unbounded amount of time since it involves copying the store to a new server.
181-
Therefore, an allocation with `currentStatus` = `DEALLOCATING` should reach the `requestedStatus` = `DEALLOCATED` given some time.
182-
=====
183-
. If any deallocations failed, make them possible by executing the following steps:
184-
.. Run `SHOW DATABASES`. If a database show `currentStatus`= `offline` this database has been stopped.
185-
.. For each stopped database that has at least one allocation on any of the `CORDONED` servers, start them by running `START DATABASE stopped-db WAIT`.
173+
. Run `SHOW DATABASES`. If a database show `currentStatus`= `offline` this database has been stopped.
174+
. For each stopped database that has at least one allocation on any of the `CORDONED` servers, start them by running `START DATABASE stopped-db WAIT`.
186175
This is necessary since stopped databases cannot be moved from one server to another.
187176
+
188177
[NOTE]
189178
=====
190179
A database can be set to `READ-ONLY` before it is started to avoid updates on a database that is desired to be stopped with the following command:
191180
`ALTER DATABASE database-name SET ACCESS READ ONLY`.
192181
=====
193-
.. On each server, run `CALL dbms.cluster.statusCheck([])` to check the write availability for all databases on this server, see xref:clustering/monitoring/status-check.adoc#monitoring-replication[Monitoring replication] for more information.
182+
. On each server, run `CALL dbms.cluster.statusCheck([])` to check the write availability for all databases on this server, see xref:clustering/monitoring/status-check.adoc#monitoring-replication[Monitoring replication] for more information.
194183
Depending on the environment, consider extending the timeout for this procedure.
195184
If any of the primary allocations for a database report `replicationSuccessful` = `TRUE`, this database is write available.
196-
197-
.. For each database that is not write available, recreate it to move it from lost servers and regain write availability.
185+
. For each database that is not write available, recreate it to move it from lost servers and regain write availability.
198186
Go to xref:clustering/databases.adoc#recreate-databases[Recreate databases] for more information about recreate options.
199187
Remember to make sure there are recent backups for the databases before recreating them, see xref:backup-restore/online-backup.adoc[Online backup] for more information.
200188
+
@@ -203,11 +191,11 @@ Remember to make sure there are recent backups for the databases before recreati
203191
By using recreate with xref:clustering/databases.adoc#undefined-servers-backup[Undefined servers with fallback backup], also databases which have lost all allocation can be recreated.
204192
Otherwise, recreating with xref:clustering/databases.adoc#uri-seed[Backup as seed] must be used for that specific case.
205193
=====
206-
.. Return to step 3 to retry deallocating all servers.
207-
. For each deallocated server, run `DROP SERVER deallocated-server-id`.
208-
This safely removes the server from the cluster's view.
209-
210-
// ? to here really
194+
. For each `CORDONED` server, run `DEALLOCATE DATABASES FROM SERVER cordoned-server-id` on one of the available servers.
195+
This will try to move all database allocations from this server to an available server in the cluster.
196+
This operation might fail if enough unconstrained servers were not added to the cluster to replace lost servers.
197+
. For each deallocating or deallocated server, run `DROP SERVER deallocated-server-id`.
198+
This removes the server from the cluster's view.
211199
====
212200

213201

0 commit comments

Comments
 (0)