diff --git a/helpers/mysql b/helpers/mysql index c11f7989a..e4bcb42f6 100644 --- a/helpers/mysql +++ b/helpers/mysql @@ -14,16 +14,25 @@ # Requires YunoHost version 2.2.4 or higher. ynh_mysql_connect_as() { # Declare an array to define the options of this helper. - local legacy_args=upd - local -A args_array=([u]=user= [p]=password= [d]=database=) + local legacy_args=updc + local -A args_array=( [u]=user= [p]=password= [d]=database= [c]=default_character_set= ) local user local password local database + local default_character_set # Manage arguments with getopts ynh_handle_getopts_args "$@" database="${database:-}" + default_character_set="${default_character_set:-}" - mysql --user="$user" --password="$password" --batch "$database" + if [ -n "$default_character_set" ] + then + default_character_set="--default-character-set=$default_character_set" + else + default_character_set="--default-character-set=latin1" + fi + + mysql --user="$user" --password="$password" "$default_character_set" --batch "$database" } # Execute a command as root user @@ -127,13 +136,15 @@ ynh_mysql_drop_db() { # Requires YunoHost version 2.2.4 or higher. ynh_mysql_dump_db() { # Declare an array to define the options of this helper. - local legacy_args=d - local -A args_array=([d]=database=) + local legacy_args=dc + local -A args_array=( [d]=database= [c]=default_character_set= ) local database + local default_character_set # Manage arguments with getopts ynh_handle_getopts_args "$@" + default_character_set="${default_character_set:-latin1}" - mysqldump --single-transaction --skip-dump-date --routines "$database" + mysqldump --single-transaction --skip-dump-date --routines --default-character-set=$default_character_set "$database" } # Create a user