Skip to content

Commit f99ab8b

Browse files
committed
skip innodb buffer pool loads/saves on temporary startup/shutdown
This saves a small bit of IO, more so with mariadb-upgrade, and none of the IO/memory acheives much gain in theses temporary start situtations. Also by skipping on the temporary starts, the innodb_buffer_pool_loaded option in the healthcheck script only gains the "loaded" status on the final startup in the entrypoint.
1 parent 6120736 commit f99ab8b

File tree

8 files changed

+16
-8
lines changed

8 files changed

+16
-8
lines changed

10.2/docker-entrypoint.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,8 @@ mysql_get_config() {
120120

121121
# Do a temporary startup of the MariaDB server, for init purposes
122122
docker_temp_server_start() {
123-
"$@" --skip-networking --default-time-zone=SYSTEM --socket="${SOCKET}" --wsrep_on=OFF --skip-log-bin &
123+
"$@" --skip-networking --default-time-zone=SYSTEM --socket="${SOCKET}" --wsrep_on=OFF --skip-log-bin \
124+
--loose-innodb_buffer_pool_load_at_startup=0 --loose-innodb_buffer_pool_dump_at_shutdown=0 &
124125
mysql_note "Waiting for server startup"
125126
# only use the root password if the database has already been initializaed
126127
# so that it won't try to fill in a password file when it hasn't been set yet

10.3/docker-entrypoint.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,8 @@ mysql_get_config() {
120120

121121
# Do a temporary startup of the MariaDB server, for init purposes
122122
docker_temp_server_start() {
123-
"$@" --skip-networking --default-time-zone=SYSTEM --socket="${SOCKET}" --wsrep_on=OFF --skip-log-bin &
123+
"$@" --skip-networking --default-time-zone=SYSTEM --socket="${SOCKET}" --wsrep_on=OFF --skip-log-bin \
124+
--loose-innodb_buffer_pool_load_at_startup=0 --loose-innodb_buffer_pool_dump_at_shutdown=0 &
124125
mysql_note "Waiting for server startup"
125126
# only use the root password if the database has already been initializaed
126127
# so that it won't try to fill in a password file when it hasn't been set yet

10.4/docker-entrypoint.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,8 @@ mysql_get_config() {
120120

121121
# Do a temporary startup of the MariaDB server, for init purposes
122122
docker_temp_server_start() {
123-
"$@" --skip-networking --default-time-zone=SYSTEM --socket="${SOCKET}" --wsrep_on=OFF --skip-log-bin &
123+
"$@" --skip-networking --default-time-zone=SYSTEM --socket="${SOCKET}" --wsrep_on=OFF --skip-log-bin \
124+
--loose-innodb_buffer_pool_load_at_startup=0 --loose-innodb_buffer_pool_dump_at_shutdown=0 &
124125
mysql_note "Waiting for server startup"
125126
# only use the root password if the database has already been initializaed
126127
# so that it won't try to fill in a password file when it hasn't been set yet

10.5/docker-entrypoint.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,8 @@ mysql_get_config() {
120120

121121
# Do a temporary startup of the MariaDB server, for init purposes
122122
docker_temp_server_start() {
123-
"$@" --skip-networking --default-time-zone=SYSTEM --socket="${SOCKET}" --wsrep_on=OFF --skip-log-bin &
123+
"$@" --skip-networking --default-time-zone=SYSTEM --socket="${SOCKET}" --wsrep_on=OFF --skip-log-bin \
124+
--loose-innodb_buffer_pool_load_at_startup=0 --loose-innodb_buffer_pool_dump_at_shutdown=0 &
124125
mysql_note "Waiting for server startup"
125126
# only use the root password if the database has already been initializaed
126127
# so that it won't try to fill in a password file when it hasn't been set yet

10.6/docker-entrypoint.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,8 @@ mysql_get_config() {
120120

121121
# Do a temporary startup of the MariaDB server, for init purposes
122122
docker_temp_server_start() {
123-
"$@" --skip-networking --default-time-zone=SYSTEM --socket="${SOCKET}" --wsrep_on=OFF --skip-log-bin &
123+
"$@" --skip-networking --default-time-zone=SYSTEM --socket="${SOCKET}" --wsrep_on=OFF --skip-log-bin \
124+
--loose-innodb_buffer_pool_load_at_startup=0 --loose-innodb_buffer_pool_dump_at_shutdown=0 &
124125
mysql_note "Waiting for server startup"
125126
# only use the root password if the database has already been initializaed
126127
# so that it won't try to fill in a password file when it hasn't been set yet

10.7/docker-entrypoint.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,8 @@ mysql_get_config() {
120120

121121
# Do a temporary startup of the MariaDB server, for init purposes
122122
docker_temp_server_start() {
123-
"$@" --skip-networking --default-time-zone=SYSTEM --socket="${SOCKET}" --wsrep_on=OFF --skip-log-bin &
123+
"$@" --skip-networking --default-time-zone=SYSTEM --socket="${SOCKET}" --wsrep_on=OFF --skip-log-bin \
124+
--loose-innodb_buffer_pool_load_at_startup=0 --loose-innodb_buffer_pool_dump_at_shutdown=0 &
124125
mysql_note "Waiting for server startup"
125126
# only use the root password if the database has already been initializaed
126127
# so that it won't try to fill in a password file when it hasn't been set yet

10.8/docker-entrypoint.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,8 @@ mysql_get_config() {
120120

121121
# Do a temporary startup of the MariaDB server, for init purposes
122122
docker_temp_server_start() {
123-
"$@" --skip-networking --default-time-zone=SYSTEM --socket="${SOCKET}" --wsrep_on=OFF --skip-log-bin &
123+
"$@" --skip-networking --default-time-zone=SYSTEM --socket="${SOCKET}" --wsrep_on=OFF --skip-log-bin \
124+
--loose-innodb_buffer_pool_load_at_startup=0 --loose-innodb_buffer_pool_dump_at_shutdown=0 &
124125
mysql_note "Waiting for server startup"
125126
# only use the root password if the database has already been initializaed
126127
# so that it won't try to fill in a password file when it hasn't been set yet

docker-entrypoint.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,8 @@ mysql_get_config() {
120120

121121
# Do a temporary startup of the MariaDB server, for init purposes
122122
docker_temp_server_start() {
123-
"$@" --skip-networking --default-time-zone=SYSTEM --socket="${SOCKET}" --wsrep_on=OFF --skip-log-bin &
123+
"$@" --skip-networking --default-time-zone=SYSTEM --socket="${SOCKET}" --wsrep_on=OFF --skip-log-bin \
124+
--loose-innodb_buffer_pool_load_at_startup=0 --loose-innodb_buffer_pool_dump_at_shutdown=0 &
124125
mysql_note "Waiting for server startup"
125126
# only use the root password if the database has already been initializaed
126127
# so that it won't try to fill in a password file when it hasn't been set yet

0 commit comments

Comments
 (0)