mirror of
https://github.com/nextcloud/documentation.git
synced 2026-01-03 02:09:45 +07:00
Updated description of MySQL/MariaDB BINLOG requirement.
This commit is contained in:
@@ -17,6 +17,37 @@ Choosing to use MySQL / MariaDB, PostgreSQL, or Oracle as your database requires
|
||||
|
||||
.. note:: The steps for configuring a third party database are beyond the scope of this document. Please refer to the documentation for your specific database choice for instructions.
|
||||
|
||||
.. _db-binlog-label:
|
||||
|
||||
MySQL / MariaDB with Binary Logging Enabled
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
ownCloud is currently using a ``TRANSACTION_READ_COMMITTED`` transaction isolation
|
||||
to avoid data loss under high load scenarios (e.g. by using the sync client with
|
||||
many clients/users and many parallel operations). This requires a disabled or
|
||||
correctly configured binary logging when using MySQL or MariaDB. Your system is
|
||||
affected if you see the following in your log file during the installation or
|
||||
update of ownCloud:
|
||||
|
||||
An unhandled exception has been thrown:
|
||||
exception 'PDOException' with message 'SQLSTATE[HY000]: General error: 1665
|
||||
Cannot execute statement: impossible to write to binary log since
|
||||
BINLOG_FORMAT = STATEMENT and at least one table uses a storage engine limited
|
||||
to row-based logging. InnoDB is limited to row-logging when transaction
|
||||
isolation level is READ COMMITTED or READ UNCOMMITTED.'
|
||||
|
||||
There are two solutions. One is to disable binary logging. Binary logging
|
||||
records all changes to your database, and how long each change took. The
|
||||
purpose of binary logging is to enable replication and to support backup
|
||||
operations.
|
||||
|
||||
The other is to change the BINLOG_FORMAT = STATEMENT in your database
|
||||
configuration file, or possibly in your database startup script, to
|
||||
BINLOG_FORMAT = MIXED. See `Overview of the Binary
|
||||
Log <https://mariadb.com/kb/en/mariadb/overview-of-the-binary-log/>`_ and `The
|
||||
Binary Log <https://dev.mysql.com/doc/refman/5.6/en/binary-log.html>`_ for
|
||||
detailed information.
|
||||
|
||||
Parameters
|
||||
----------
|
||||
For setting up ownCloud to use any database, use the instructions in :doc:`../installation/installation_wizard`. You should not have to edit the respective values in the :file:`config/config.php`. However, in special cases (for example, if you want to connect your ownCloud instance to a database created by a previous installation of ownCloud), some modification might be required.
|
||||
|
||||
@@ -70,4 +70,7 @@ options.
|
||||
|
||||
**Running ownCloud in a subdir**: If you're running ownCloud in a subdir and
|
||||
want to use CalDAV or CardDAV clients make sure you have configured the correct
|
||||
:ref:`service-discovery-label` URLs.
|
||||
:ref:`service-discovery-label` URLs.
|
||||
|
||||
**Note for MySQL/MariaDB environments**: Please refer to :ref:`db-binlog-label`
|
||||
on how to correctly configure your environment if you have binary logging enabled.
|
||||
@@ -260,17 +260,7 @@ enabled, your upgrade may fail with these errors in your MySQL/MariaDB log::
|
||||
to row-based logging. InnoDB is limited to row-logging when transaction
|
||||
isolation level is READ COMMITTED or READ UNCOMMITTED.'
|
||||
|
||||
There are two solutions. One is to disable binary logging. Binary logging
|
||||
records all changes to your database, and how long each change took. The
|
||||
purpose of binary logging is to enable replication and to support backup
|
||||
operations.
|
||||
|
||||
The other is to change the BINLOG_FORMAT = STATEMENT in your database
|
||||
configuration file, or possibly in your database startup script, to
|
||||
BINLOG_FORMAT = MIXED. See `Overview of the Binary
|
||||
Log <https://mariadb.com/kb/en/mariadb/overview-of-the-binary-log/>`_ and `The
|
||||
Binary Log <https://dev.mysql.com/doc/refman/5.6/en/binary-log.html>`_ for
|
||||
detailed information.
|
||||
Please refer to :ref:`db-binlog-label` on how to correctly configure your environment.
|
||||
|
||||
Occasionally, *files do not show up after a upgrade*. A rescan of the files can help::
|
||||
|
||||
|
||||
Reference in New Issue
Block a user