summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2021-11-14 13:29:56 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2021-11-14 13:29:56 +0000
commitfc9380949597cd732f47dc674b9d7c9a8f1cd059 (patch)
tree31065e03e2f73551bbade059dcfada7fc3750906
parentInitial commit. (diff)
downloadmysql-defaults-fc9380949597cd732f47dc674b9d7c9a8f1cd059.tar.xz
mysql-defaults-fc9380949597cd732f47dc674b9d7c9a8f1cd059.zip
Adding upstream version 1.0.6.upstream/1.0.6
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
-rw-r--r--doc/frozen-mode/README37
-rw-r--r--doc/frozen-mode/downgrade22
2 files changed, 59 insertions, 0 deletions
diff --git a/doc/frozen-mode/README b/doc/frozen-mode/README
new file mode 100644
index 0000000..6b57b7e
--- /dev/null
+++ b/doc/frozen-mode/README
@@ -0,0 +1,37 @@
+Debian packages of the form <variant>-server-core-<version> provide
+binaries for MySQL and variant server daemons only. These are intended
+for users who wish to manage database data directories and daemon and
+service configurations themselves.
+
+Debian packages of the form <variant>-server-<version> depend on the
+corresponding <variant>-server-core-<version> packages and add automatic
+management of database data directories and daemon and service
+configuration via maintainer scripts.
+
+It is possible for a <variant>-server-<version> maintainer script to
+detect a local customisation that means that it cannot continue. Each
+known case is documented in a separate file in this directory.
+
+When such a situation arises, the <variant>-server-<version> maintainer
+scripts will enter "frozen mode". We consider this preferable to the
+maintainer script failing with a non-zero return code, which was the
+previous behaviour. The previous behaviour would cause dpkg to fail,
+causing apt to fail, leaving system packaging in a broken state and
+causing a release upgrade to fail for example. This seemed excessive for
+what could be an intended configuration change by the user.
+
+Instead, "frozen mode" stops the <variant>-server-<version> maintainer
+scripts from making changes until the user intervenes. The maintainer
+scripts will not start the daemon, perform database upgrades or make
+similar changes.
+
+When "/etc/mysql/FROZEN" exists (even if it is a broken symlink), then
+frozen mode is defined to be turned on. Usually a maintainer script
+turning frozen mode on will create a symlink at /etc/mysql/FROZEN
+pointing to further documentation on the specific case encountered in
+this directory with an explanation and suggestions for resolution.
+
+To resolve frozen mode, resolve the situation documented by
+/etc/mysql/FROZEN and only then remove the /etc/mysql/FROZEN symlink,
+and run "dpkg-reconfigure <package>" where <package> should usually be
+in the form <variant>-server-<version>.
diff --git a/doc/frozen-mode/downgrade b/doc/frozen-mode/downgrade
new file mode 100644
index 0000000..32da07c
--- /dev/null
+++ b/doc/frozen-mode/downgrade
@@ -0,0 +1,22 @@
+This MySQL or variant installation has entered "frozen mode". Maintainer
+scripts will avoid making changes or starting the daemon until manually
+released from this state. See /usr/share/doc/mysql-common/README for
+general information about this mode.
+
+In this particular case, an incompatible downgrade attempt has been
+detected. This can be resolved in one of two ways:
+
+1. Change the contents of /var/lib/mysql/ to contain database data that
+is compatible with the currently installed MySQL or variant daemon
+version. For example: you could restore from a backup. Alternatively you
+could do a dump using a future version binary and then a restore using
+the current version binary.
+
+2. Switch to a MySQL or variant daemon version that is compatible with
+the data currently in /var/lib/mysql/. For example, if you have
+attempted a downgrade from mysql-server-5.7 to mysql-server-5.6, you
+could "apt install mysql-server-5.7" again.
+
+Please resolve this situation and only then remove the /etc/mysql/FROZEN
+symlink. You can then run "dpkg-reconfigure <package>" where <package>
+should usually be in the form <variant>-server-<version>.