@@ -3,7 +3,7 @@ set -eo pipefail
3
3
shopt -s nullglob
4
4
5
5
# if command starts with an option, prepend mysqld
6
- if [ " ${1: 0: 1} " = ' -' ]; then
6
+ if [[ " ${1: 0: 1} " = ' -' ] ]; then
7
7
set -- mysqld " $@ "
8
8
fi
9
9
@@ -26,14 +26,14 @@ file_env() {
26
26
local var=" $1 "
27
27
local fileVar=" ${var} _FILE"
28
28
local def=" ${2:- } "
29
- if [ " ${! var:- } " ] && [ " ${! fileVar:- } " ]; then
29
+ if [[ " ${! var:- } " ]] && [[ " ${! fileVar:- } " ] ]; then
30
30
echo >&2 " error: both ${var} and ${fileVar} are set (but are exclusive)"
31
31
exit 1
32
32
fi
33
33
local val=" ${def} "
34
- if [ " ${! var:- } " ]; then
34
+ if [[ " ${! var:- } " ] ]; then
35
35
val=" ${! var} "
36
- elif [ " ${! fileVar:- } " ]; then
36
+ elif [[ " ${! fileVar:- } " ] ]; then
37
37
val=" $( < " ${! fileVar} " ) "
38
38
fi
39
39
export " ${var} " =" ${val} "
@@ -65,7 +65,7 @@ if [ "$1" = 'mysqld' -a -z "${wantHelp}" -a "$(id -u)" = '0' ]; then
65
65
mkdir -p " ${DATADIR} "
66
66
chown -R mysql:mysql " ${DATADIR} "
67
67
68
- if [ -f /root/pending-restore ]; then
68
+ if [[ -f /root/pending-restore ] ]; then
69
69
/root/xrecovery-final.sh
70
70
fi
71
71
@@ -78,7 +78,7 @@ if [ "$1" = 'mysqld' -a -z "${wantHelp}" ]; then
78
78
# Get config
79
79
DATADIR=" $( _get_config ' datadir' " $@ " ) "
80
80
81
- if [ ! -d " ${DATADIR} /mysql" ]; then
81
+ if [[ ! -d " ${DATADIR} /mysql" ] ]; then
82
82
file_env ' MYSQL_ROOT_PASSWORD'
83
83
if [ -z " ${MYSQL_ROOT_PASSWORD} " -a -z " ${MYSQL_ALLOW_EMPTY_PASSWORD} " -a -z " ${MYSQL_RANDOM_ROOT_PASSWORD} " ]; then
84
84
echo >&2 ' error: database is uninitialized and password option is not specified '
@@ -92,7 +92,7 @@ if [ "$1" = 'mysqld' -a -z "${wantHelp}" ]; then
92
92
" $@ " --initialize-insecure
93
93
echo ' Database initialized'
94
94
95
- if command -v mysql_ssl_rsa_setup > /dev/null && [ ! -e " ${DATADIR} /server-key.pem" ]; then
95
+ if command -v mysql_ssl_rsa_setup > /dev/null && [[ ! -e " ${DATADIR} /server-key.pem" ] ]; then
96
96
# https://github.com/mysql/mysql-server/blob/23032807537d8dd8ee4ec1c4d40f0633cd4e12f9/packaging/deb-in/extra/mysql-systemd-start#L81-L84
97
97
echo ' Initializing certificates'
98
98
mysql_ssl_rsa_setup --datadir=" ${DATADIR} "
@@ -112,17 +112,17 @@ if [ "$1" = 'mysqld' -a -z "${wantHelp}" ]; then
112
112
echo ' MySQL init process in progress...'
113
113
sleep 1
114
114
done
115
- if [ " ${i} " = 0 ]; then
115
+ if [[ " ${i} " = 0 ] ]; then
116
116
echo >&2 ' MySQL init process failed.'
117
117
exit 1
118
118
fi
119
119
120
- if [ -z " ${MYSQL_INITDB_SKIP_TZINFO} " ]; then
120
+ if [[ -z " ${MYSQL_INITDB_SKIP_TZINFO} " ] ]; then
121
121
# sed is for https://bugs.mysql.com/bug.php?id=20545
122
122
mysql_tzinfo_to_sql /usr/share/zoneinfo | sed ' s/Local time zone must be set--see zic manual page/FCTY/' | " ${mysql[@]} " mysql
123
123
fi
124
124
125
- if [ ! -z " ${MYSQL_RANDOM_ROOT_PASSWORD} " ]; then
125
+ if [[ ! -z " ${MYSQL_RANDOM_ROOT_PASSWORD} " ] ]; then
126
126
export MYSQL_ROOT_PASSWORD=" $( pwgen -1 32) "
127
127
echo " GENERATED ROOT PASSWORD: ${MYSQL_ROOT_PASSWORD} "
128
128
fi
@@ -151,12 +151,12 @@ if [ "$1" = 'mysqld' -a -z "${wantHelp}" ]; then
151
151
152
152
printf ' %s\n' " ${sql[@]} " | " ${mysql[@]} "
153
153
154
- if [ ! -z " ${MYSQL_ROOT_PASSWORD} " ]; then
154
+ if [[ ! -z " ${MYSQL_ROOT_PASSWORD} " ] ]; then
155
155
mysql+=( -p" ${MYSQL_ROOT_PASSWORD} " )
156
156
fi
157
157
158
158
file_env ' MYSQL_DATABASE'
159
- if [ " ${MYSQL_DATABASE} " ]; then
159
+ if [[ " ${MYSQL_DATABASE} " ] ]; then
160
160
echo " CREATE DATABASE IF NOT EXISTS \` ${MYSQL_DATABASE} \` ;" | " ${mysql[@]} "
161
161
mysql+=( " ${MYSQL_DATABASE} " )
162
162
fi
@@ -166,7 +166,7 @@ if [ "$1" = 'mysqld' -a -z "${wantHelp}" ]; then
166
166
if [ " ${MYSQL_USER} " -a " ${MYSQL_PASSWORD} " ]; then
167
167
echo " CREATE USER '${MYSQL_USER} '@'%' IDENTIFIED BY '${MYSQL_PASSWORD} ' ;" | " ${mysql[@]} "
168
168
169
- if [ " ${MYSQL_DATABASE} " ]; then
169
+ if [[ " ${MYSQL_DATABASE} " ] ]; then
170
170
echo " GRANT ALL ON \` ${MYSQL_DATABASE} \` .* TO '${MYSQL_USER} '@'%' ;" | " ${mysql[@]} "
171
171
fi
172
172
@@ -184,7 +184,7 @@ if [ "$1" = 'mysqld' -a -z "${wantHelp}" ]; then
184
184
echo
185
185
done
186
186
187
- if [ ! -z " ${MYSQL_ONETIME_PASSWORD} " ]; then
187
+ if [[ ! -z " ${MYSQL_ONETIME_PASSWORD} " ] ]; then
188
188
" ${mysql[@]} " <<< " ALTER USER 'root'@'%' PASSWORD EXPIRE;"
189
189
fi
190
190
if ! kill -s TERM " ${pid} " || ! wait " ${pid} " ; then
@@ -198,7 +198,7 @@ if [ "$1" = 'mysqld' -a -z "${wantHelp}" ]; then
198
198
fi
199
199
fi
200
200
201
- if [ -f /root/pending-restore ]; then
201
+ if [[ -f /root/pending-restore ] ]; then
202
202
/root/xrecovery-final.sh
203
203
fi
204
204
0 commit comments