如何在MySql查询上设置超时?

问题描述:

我有一个shell脚本如何在大循环上执行一些查询,但有时脚本不响应。 我想添加一个超时到Mysql查询以防止此错误。如何在MySql查询上设置超时?

$sql=`mysql --protocol=tcp --user=**** --password=\'****\' --host="vl*****1" --database="C***K" -e "UPDATE C****k SET current_status =\'$status\',last_state_change=\'$lastchange\' WHERE MC_internal_name=\'$InternalName\';" 

Tkanks!

+0

找到错误!如果你通过cron启动脚本,你可以更好地在MySQL中直接使用EVENTS。所以脚本只在服务器启动并运行时才启动。您还可以向SQL添加LIMIT以防止运行很长时间。如果查询使用Indexe,也可以通过EXPLAIN检查 –

使用选项:

--connect-timeout=# 

连接超时之前替换的秒数冲刺。