我有一个简单的脚本连接到外部MySQL服务器。
#!/bin/bash
server=1.2.3.1
port=3306
user=root
pass=root
db=radius
output=$(mysql -N -h $server -u $user -p$pass $db -e "select * from table)
echo "$output"
问题是当服务器1.2.3.1上的mysql服务失败时,因为脚本长时间等待回答了!
如何只等待1秒钟,如果服务器没有响应,脚本会终止进程? 或者如何检查以前服务是否在远程服务器上?
问候。
答案 0 :(得分:0)
我没有对此进行测试,但是我想您可以设置一个计时器,然后测试您的结果是否有值。
#!/bin/bash
server=1.2.3.1
port=3306
user=root
pass=root
db=radius
output=$(mysql -N -h $server -u $user -p$pass $db -e "select * from table)
sleep 1
if ! [[ $output ]]
mysql exit
fi
echo "$output"