MySQLのport番号をシェルスクリプトの関数内で指定する方法
port forwardingを使って、リモートでMySQLにアクセスする方法について質問させていただきます。
以下に簡単なdemo script(demo.sh)を作成しました。
echo $1;
echo $2;
echo "$HOME/local/bin/mysql -u user -D WB -h$1 --port=$2" (<-ここのコマンドは正常に動きます。)
query() {
$HOME/local/bin/mysql -u user -D WB -h$1 --port=$2
}
query "begin;\
#some command for MySQL
commit;"
OSはubuntu16.04を使って、portの番号を13306に設定しております。
bash demo.sh xxxx 13306
(xxxは実際のIP addressです。)
とタイプしますと、
mysql: [ERROR] /home/user/local/bin/mysql: Empty value for 'port' specified
というエラーが出てきます。
自分の理解では、portの番号が指定されていないことがエラーの原因だと思います。
しかし、3番目のechoの結果を、直接terminalにコピペしますと、正常にMySQLにアクセスできます。このことより、コマンド自体は問題ないと考えております。
質問ですが、bash scriptではEmpty value for 'port' specifiedとなってしまっている部分を、何とかport番号を指定する方法はありますでしょうか?
ーPオプションも試してみましたが、問題は解決しませんでした。
もし何方かご存知でしたら、ご教授をお願いします。
何卒宜しくお願い致します。