|
|
|
@ -0,0 +1,36 @@ |
|
|
|
#!/bin/bash |
|
|
|
|
|
|
|
# Open a connection as a user |
|
|
|
# |
|
|
|
# example: ynh_mysql_connect_as --user="user" --password="pass" <<< "UPDATE ...;" |
|
|
|
# example: ynh_mysql_connect_as --user="user" --password="pass" --default_character_set="utf8mb4" < /path/to/file.sql |
|
|
|
# |
|
|
|
# usage: ynh_mysql_connect_as --user=user --password=password [--database=database] [--default_character_set=character-set] |
|
|
|
# | arg: -u, --user= - the user name to connect as |
|
|
|
# | arg: -p, --password= - the user password |
|
|
|
# | arg: -d, --database= - the database to connect to |
|
|
|
# | arg: -c, --default_character_set= - the charset to use |
|
|
|
# |
|
|
|
# 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=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:-}" |
|
|
|
|
|
|
|
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" |
|
|
|
} |