方法一:使用文件标签EOF重定向的方法的:
#!/bin/bash user=root pass=123456 db=mysql tablename=user mysql -s --line-numbers -f -u$user -p$pass -D $db --delimiter=";" -E< --SELECT host,user from $tablename order by 1; SELECT host,user from $tablename order by 1; quit EOF
优点:sql与shell 可以分离,写sql时不用关系shell。
方法二:使用mysql参数的方法
mysql -u$user -p$pass -D $db -e "select host from user;"
当然,可以通过将传参的方式来传递 -e 后面的语句。
方法三 将每一步需要执行的语句保存到 tmp.sql 中,最后在使用
mysql -uuname -ppwd < tmp.sql
shell脚本中执行mysql语句的方法
时间: 2024-10-26 03:09:57