私の知る限り、MySQLスクリプトに変数を直接渡すことはできません。最善の方法は、ラッパーシェルスクリプトでユーザー変数を設定することです。次のようなもの:
passed_var1=$1
passed_var2=$2
mainsql=script.sql
mysql $(usual_parameters) -e "set @user_var1=$passed_var1; set @user_var2=$passed_var2; source $mainsql"
もちろん、実際の使用に合わせて調整してください。