bash检查mysql连接
发布时间:2020-12-15 18:23:47 所属栏目:安全 来源:网络整理
导读:我正在写一个bash脚本来对我的debian squeeze Server上的数据库做一些操作. 我注意到如果我为root输入了一个错误的密码,提示将被关闭,我不会被要求再试一次……这不是很方便! 所以我试图创建一个循环,尝试连接到MYSQL并保存密码,以便以后成功. 我尝试过这个
我正在写一个bash脚本来对我的debian squeeze Server上的数据库做一些操作.
我注意到如果我为root输入了一个错误的密码,提示将被关闭,我不会被要求再试一次……这不是很方便! 所以我试图创建一个循环,尝试连接到MYSQL并保存密码,以便以后成功. 我尝试过这个,但它不起作用.
read -s -p "Enter MYSQL root password: " mysqlRootPassword while [[ -n `mysql -u root -p$mysqlRootPassword` ]]; do read -p "Can't connect,please retry: " mysqlRootPassword done 我在bash脚本方面不是很有经验,任何帮助都会很棒!
我认为你不需要[[-n backtic …]];测试嵌套就好了.尝试:
read -s -p "Enter MYSQL root password: " mysqlRootPassword while ! mysql -u root -p$mysqlRootPassword -e ";" ; do read -p "Can't connect,please retry: " mysqlRootPassword done 同时评估任何命令组直至结束;执行并检查执行的最后一个命令的返回代码,以确定是否应该执行循环.因为您正在寻找失败,您必须在测试之前使用逻辑NOT(!)或者您可以使用语法等效,即 until mysql -u root -p$mysqlRootPassword -e ";" ; do read -p "Can't connect,please retry: " mysqlRootPassword done 您可以将其视为’直到mysql正常工作,继续尝试获取正确的密码’. 不幸的是,我无法访问mysql安装,所以这是未经测试的. 我希望这有帮助. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |