summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean McGivern <sean@mcgivern.me.uk>2017-07-07 20:31:00 +0000
committerSean McGivern <sean@mcgivern.me.uk>2017-07-07 20:31:00 +0000
commit69e17c225e53feaa7449e468e89aca3f084ab9f9 (patch)
tree1881596d438dc9c3a86488b80d3fe6e68fb90c0c
parent5f8f555a6649c8463c66551af2948f1e56e7ce6a (diff)
parent9a8130f9e257c9f4e7d43d8d494ec740d857da30 (diff)
downloadgitlab-ce-69e17c225e53feaa7449e468e89aca3f084ab9f9.tar.gz
Merge branch 'dm-mysql-log_bin_trust_function_creators' into 'master'
Mention that 9.3 also needs `log_bin_trust_function_creators` on MySQL. See merge request !12687
-rw-r--r--doc/install/database_mysql.md13
-rw-r--r--doc/update/9.2-to-9.3.md13
2 files changed, 25 insertions, 1 deletions
diff --git a/doc/install/database_mysql.md b/doc/install/database_mysql.md
index 37e9b3101ca..bc75dc1447e 100644
--- a/doc/install/database_mysql.md
+++ b/doc/install/database_mysql.md
@@ -39,6 +39,9 @@ mysql> SET storage_engine=INNODB;
# If you have MySQL < 5.7.7 and want to enable utf8mb4 character set support with your GitLab install, you must set the following NOW:
mysql> SET GLOBAL innodb_file_per_table=1, innodb_file_format=Barracuda, innodb_large_prefix=1;
+# If you use MySQL with replication, or just have MySQL configured with binary logging, you need to run the following to allow the use of `TRIGGER`:
+mysql> SET GLOBAL log_bin_trust_function_creators = 1;
+
# Create the GitLab production database
mysql> CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_general_ci`;
@@ -60,7 +63,15 @@ mysql> \q
```
You are done installing the database for now and can go back to the rest of the installation.
-Please proceed to the rest of the installation before running through the utf8mb4 support section.
+Please proceed to the rest of the installation **before** running through the steps below.
+
+### `log_bin_trust_function_creators`
+
+If you use MySQL with replication, or just have MySQL configured with binary logging, all of your MySQL servers will need to have `log_bin_trust_function_creators` enabled to allow the use of `TRIGGER` in migrations. You have already set this global variable in the steps above, but to make it persistent, add the following to your `my.cnf` file:
+
+```
+log_bin_trust_function_creators=1
+```
### MySQL utf8mb4 support
diff --git a/doc/update/9.2-to-9.3.md b/doc/update/9.2-to-9.3.md
index 097b996ec31..910539acc70 100644
--- a/doc/update/9.2-to-9.3.md
+++ b/doc/update/9.2-to-9.3.md
@@ -164,6 +164,19 @@ permissions on the database:
```bash
mysql -u root -p -e "GRANT TRIGGER ON \`gitlabhq_production\`.* TO 'git'@'localhost';"
```
+
+If you use MySQL with replication, or just have MySQL configured with binary logging,
+you will need to also run the following on all of your MySQL servers:
+
+```bash
+mysql -u root -p -e "SET GLOBAL log_bin_trust_function_creators = 1;"
+```
+
+You can make this setting permanent by adding it to your `my.cnf`:
+
+```
+log_bin_trust_function_creators=1
+```
### 11. Update configuration files