summaryrefslogtreecommitdiffstats
path: root/mysql/root-galera/usr/share/container-scripts/mysql/pre-init/30-ands-tuning.sh
diff options
context:
space:
mode:
Diffstat (limited to 'mysql/root-galera/usr/share/container-scripts/mysql/pre-init/30-ands-tuning.sh')
-rw-r--r--mysql/root-galera/usr/share/container-scripts/mysql/pre-init/30-ands-tuning.sh27
1 files changed, 25 insertions, 2 deletions
diff --git a/mysql/root-galera/usr/share/container-scripts/mysql/pre-init/30-ands-tuning.sh b/mysql/root-galera/usr/share/container-scripts/mysql/pre-init/30-ands-tuning.sh
index c717e9d..4c60495 100644
--- a/mysql/root-galera/usr/share/container-scripts/mysql/pre-init/30-ands-tuning.sh
+++ b/mysql/root-galera/usr/share/container-scripts/mysql/pre-init/30-ands-tuning.sh
@@ -1,17 +1,40 @@
+export MYSQL_SUPER_READ_ONLY=${MYSQL_SUPER_READ_ONLY:-0}
+export MYSQL_READ_ONLY=${MYSQL_READ_ONLY:-$MYSQL_SUPER_READ_ONLY}
+
export MYSQL_LOG_BIN=${MYSQL_LOG_BIN:-1}
export MYSQL_SYNC_BINLOG=${MYSQL_SYNC_BINLOG:-0}
+export MYSQL_BINLOG_ROW_IMAGE=${MYSQL_BINLOG_ROW_IMAGE:-full}
export MYSQL_LOG_SLAVE_UPDATES=${MYSQL_LOG_SLAVE_UPDATES:-0}
export MYSQL_BINLOG_SYNC_DELAY=${MYSQL_BINLOG_SYNC_DELAY:-0}
export MYSQL_BINLOG_NODELAY_COUNT=${MYSQL_BINLOG_NODELAY_COUNT:-0}
-export MYSQL_FLUSH_LOG_TYPE=${MYSQL_FLUSH_LOG_TYPE:-2}
-export MYSQL_FLUSH_LOG_TIMEOUT=${MYSQL_FLUSH_LOG_TIMEOUT:-1}
+export MYSQL_INNODB_FLUSH_METHOD=${MYSQL_INNODB_FLUSH_METHOD:-fsync}
+export MYSQL_INNODB_FLUSH_LOG_TYPE=${MYSQL_INNODB_FLUSH_LOG_TYPE:-2}
+export MYSQL_INNODB_FLUSH_LOG_TIMEOUT=${MYSQL_INNODB_FLUSH_LOG_TIMEOUT:-1}
+export MYSQL_INNODB_THREAD_CONCURENCY=${MYSQL_INNODB_THREAD_CONCURENCY:-0}
+export MYSQL_INNODB_BUFFER_POOL_INSTANCES=${MYSQL_INNODB_BUFFER_POOL_INSTANCES:-8}
+export MYSQL_SLAVE_PARALLEL_TYPE=${MYSQL_SLAVE_PARALLEL_TYPE:-LOGICAL_CLOCK}
export MYSQL_SLAVE_WORKERS=${MYSQL_SLAVE_WORKERS:-4}
export MYSQL_SLAVE_SKIP_ERRORS=${MYSQL_SLAVE_SKIP_ERRORS:-ddl_exist_errors}
+export MYSQL_UNSAFE_FSYNC_OPTIMIZATIONS=${MYSQL_UNSAFE_FSYNC_OPTIMIZATIONS:-0}
+
+
log_info 'Processing basic Ands configuration files ...'
envsubst < ${CONTAINER_SCRIPTS_PATH}/pre-init/ands-tuning.cnf.template > /etc/my.cnf.d/ands-tuning.cnf
+if [ ${MYSQL_READ_ONLY} -eq 1 ]; then
+ envsubst < ${CONTAINER_SCRIPTS_PATH}/pre-init/ands-ro-modes.cnf.template > /etc/my.cnf.d/ands-ro-modes.cnf
+else
+ rm -f /etc/my.cnf.d/ands-ro-modes.cnf || true
+fi
+
+if [ ${MYSQL_UNSAFE_FSYNC_OPTIMIZATIONS} -eq 1 ]; then
+ envsubst < ${CONTAINER_SCRIPTS_PATH}/pre-init/ands-unsafe-fsync.cnf.template > /etc/my.cnf.d/ands-unsafe-fsync.cnf
+else
+ rm -f /etc/my.cnf.d/ands-unsafe-fsync.cnf || true
+fi
+
if [ -v MYSQL_RUNNING_AS_SLAVE ] ; then
log_info 'Processing basic Ands configuration for replication (slave only) files ...'
envsubst < ${CONTAINER_SCRIPTS_PATH}/pre-init/ands-slave.cnf.template > /etc/my.cnf.d/ands-slave.cnf