是否有可能检查mongo数据库是否已经存在?
是的,您可以获取现有数据库的列表.从Java驱动程序中,您可以执行类似的操作,以获取在localhost上运行的mongod服务器上的数据库名称
Mongo mongo = new Mongo( "127.0.0.1", 27017 ); ListdatabaseNames = mongo.getDatabaseNames();
这相当于mongo shell"show dbs"命令.我相信所有驱动程序中都存在类似的方法.
从外壳程序中,如果要显式检查数据库是否存在:
db.getMongo().getDBNames().indexOf("mydb");
如果“ mydb”不存在,将返回“ -1”。
要从外壳程序使用它:
if [ $(mongo localhost:27017 --eval 'db.getMongo().getDBNames().indexOf("mydb")' --quiet) -lt 0 ]; then echo "mydb does not exist" else echo "mydb exists" fi