Sql server 如何检查SQL Server linux数据库是否已启动并正在运行?

Sql server 如何检查SQL Server linux数据库是否已启动并正在运行?,sql-server,linux,database,Sql Server,Linux,Database,我有一个基于Docker的应用程序,它运行在SQL Server Linux数据库Docker容器上。在启动应用程序容器时,我想在启动应用程序之前检查数据库是否已启动且可用。使用sqlcmd或其他方法判断SQL Server数据库是否已启动并运行的正确方法是什么 我正在寻找与检查mysql数据库可用性的mysqladmin ping功能等价的东西。我有一个类似的用例,最后使用sqlcmd编写了自己的脚本 #/bin/bash 对于{1..20}中的i; 做 #检查数据库是否已经存在 结果=`sq

我有一个基于Docker的应用程序,它运行在SQL Server Linux数据库Docker容器上。在启动应用程序容器时,我想在启动应用程序之前检查数据库是否已启动且可用。使用
sqlcmd
或其他方法判断SQL Server数据库是否已启动并运行的正确方法是什么


我正在寻找与检查mysql数据库可用性的
mysqladmin ping
功能等价的东西。

我有一个类似的用例,最后使用
sqlcmd
编写了自己的脚本

#/bin/bash
对于{1..20}中的i;
做
#检查数据库是否已经存在
结果=`sqlcmd-S-U-P-Q“如果DB_ID('DatabaseName')不是NULL,则打印“是”`
代码=$?
如果[$RESULT==“YES”]]
然后
回声“做点什么。”
打破
elif[[$CODE-eq 0]]&&[$RESULT==“”]]
然后
echo“如果出现此问题,则数据库不存在”
打破
#如果代码不同于0,则发生错误。(很可能数据库未联机)重试。
其他的
echo“数据库尚未就绪…”
睡眠1
fi
完成
当命令成功运行时,
$code
等于
0
。如果数据库关闭,可能需要几秒钟的时间,直到命令超时,然后您将得到一个不是零的
$code