使用AZ命令行列出CosmosDB实例中的数据库

时间:2018-07-11 14:16:07

标签: azure azure-cosmosdb azure-cli

我正在尝试使用AZ命令行列出CosmosDB实例中的所有数据库-

az account set --subscription $subscriptionId
az cosmosdb database list --name $cosmosName --resource-group $resourceGroup

上面的命令产生以下响应-

  

操作失败:找不到资源

添加--debug自变量时,出现上述错误以及以下详细信息-

  

状态码:404
  {“ code”:“ NotFound”,“ message”:“系统中不存在具有指定ID的实体。\ r \ nActivityId:d5383919-7c23-4158-bded-2c623d55ab9b,Microsoft.Azure.Documents.Common / 2.0 .0.0“}

我要查询的CosmosDB确实存在,它是通过运行命令az cosmosdb list派生的,我直接从门户网站复制了SubscriptionId和ResourceGroup。

MS docs和命令az cosmosdb database list --help似乎都表明我在做什么应该可以工作。

谁能建议我该怎么做才能解决此问题?

2 个答案:

答案 0 :(得分:2)

如果运行Azure CLI的PC没有与CosmosDB帐户的网络连接,则可能发生此错误。要验证是否是问题所在,请转到 Portal.Azure.com> CosmosDB帐户>防火墙和虚拟网络,如果启用了防火墙,请添加您当前的IP地址。

答案 1 :(得分:0)

我今天也遇到了同样的问题,我发现防火墙是问题所在,添加客户端公共IP可以解决此问题,但是还有一个棘手的部分,即使在Azure门户中更新了防火墙规则之后,也需要一些时间(对我来说我认为是5〜10分钟)。我猜这条规则需要部署到其他位置,并且需要更长的时间,具体取决于您击中的区域。

因此,在更新防火墙规则之后,您可能只需要多一点耐心即可。

还请注意,az允许三个不同的选项:     (1)资源组名称和帐号名称     (2)帐号名称和密钥     (3)网址连接和密钥

我发现只有1个和3个作品,(2)会给我一个错误: +不支持的操作数类型:“ NoneType”和“ str”

“ az cosmosdb数据库显示”和“ az cosmosdb数据库列表”都有相同的问题。我使用的版本是azure-cli(2.0.45)。