从shell脚本中,如何检查MySQL数据库是否存在?

mysqladmin -uroot create foo如果存在foo则返回退出状态1,否则返回0,但当然如果数据库尚不存在,它也将创建数据库.是否有一些简单的方法可以简单地检查数据库是否存在?
我意识到很久以前就已经回答了这个问题,但这样做对我来说似乎更清晰:
MysqL -u root -e 'use mydbname'

如果数据库存在,则不会产生输出退出,返回码== 0.

如果数据库不存在,这将在stderr上产生一条错误消息,并以returncode == 1退出.所以你会做这样的事情:

if ! MysqL -u root -e 'use mydbname'; then
  ...do stuff to create database...
fi

这与shell脚本运行良好,不需要对输出进行任何处理,也不依赖于本地文件系统访问.

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...