optimize_mysql_tables.sh: main loop failed if mysql_credential_args contains a blank sign as i.e '-u root -S /tmp/mysql.sock'.

This commit is contained in:
Christoph 2019-11-02 12:35:59 +01:00
parent 789988b940
commit 8666b07ed5

View File

@ -240,18 +240,18 @@ fi
[[ -z "$log_file" ]] && log_file="$DEFAULT_LOG_FILE"
if [[ ${#mysql_credential_args_arr[@]} -eq 0 ]]; then
[[ -z "$mysql_credential_args" ]] && mysql_credential_args="$DEFAULT_MYSQL_CREDENTIAL_ARGS"
mysql_credential_args_arr="$mysql_credential_args"
mysql_credential_args_arr[0]="default:$mysql_credential_args"
fi
declare -i length_table_name
declare -i number_blank_signd
declare -i index_i
for _val in ${mysql_credential_args_arr[@]} ; do
declare -i index_arr=0
while [[ $index_arr -lt ${#mysql_credential_args_arr[@]} ]] ; do
_all_success=true
IFS=':' read -a _val_arr <<< "${_val}"
IFS=':' read -a _val_arr <<< "${mysql_credential_args_arr[$index_arr]}"
mysql_version="${_val_arr[0]}"
mysql_credential_args="${_val_arr[1]}"
@ -406,6 +406,9 @@ for _val in ${mysql_credential_args_arr[@]} ; do
echo "[ MySQL $mysql_version ]: Finished optimizing MySQL databases at host $(hostname -f)." >> $log_file
echo "" >> $log_file
fi
(( index_arr++ ))
done
if [[ ${#info_messages_arr[@]} -gt 0 ]]; then