如何从命令行清除Azure存储模拟器数据?

Jes*_*ing 22 powershell azure visual-studio azure-storage-emulator

我的解决方案是使用Azure模拟器.我想清除Azure存储模拟器Blob,队列表,而无需执行手动操作.我需要能够从命令行执行此操作,最好是PowerShell.

Visual Studio 2015中的服务器资源管理器,Azure节点:

在此输入图像描述

AzureStorageEmulator.exe帮助返回以下命令:

  • AzureStorageEmulator.exe init:初始化模拟器数据库和配置.
  • AzureStorageEmulator.exe启动:启动模拟器.
  • AzureStorageEmulator.exe停止:停止模拟器.
  • AzureStorageEmulator.exe状态:获取当前模拟器状态.
  • AzureStorageEmulator.exe清除:删除模拟器中的所有数据.
  • AzureStorageEmulator.exe help [command]:显示常规或特定于命令的帮助.

但是,当尝试"清除"时,将返回以下内容:

已成功清除以下服务的用户数据:无

Jes*_*ing 38

行动!我的错误,正确的命令是:

C:\ Program Files(x86)\ Microsoft SDKs\Azure\Storage Emulator

.\AzureStorageEmulator.exe clear all
Run Code Online (Sandbox Code Playgroud)

  • 这对我来说很重要!有人知道如何手动执行此操作吗? (3认同)

Ima*_*idi 16

Visual Studio 2022 和蓝铜矿

  • 它不会像旧版存储模拟器那样使用 SQL Server,并且所有相关数据都作为大型 JSON 文件存储在以下文件夹中。

%userprofile%\AppData\Local\Temp\Azurite

或者可能

%userprofile%\AppData\Local\.vstools\Azurite

Azurite 模拟器默认位置

  • 当您打开 VS 以及任何需要此服务的项目时,您将看到 Azurite 服务在 Visual Studio 服务依赖项窗口中启动 在此输入图像描述
  • Azure 存储资源管理器将通过 REST-API 自动连接到此新模拟器,如果您同时使用旧模拟器和新模拟器,则您正在处理不同的数据集
  • 看来 Azurite 目前没有明确的停止和清除命令 (3.14.3),如果您无法删除这些文件夹,只需关闭 Visual Studio 和存储资源管理器,然后重试。
  • 另请参阅 azurite github 中官方说明的相关说明(链接

笔记。删除上述文件和文件夹并重新启动 Azurite 以清理 Azurite。它将删除存储在 Azurite 中的所有数据!


始终检查输出->服务依赖关系以找到正确的位置。最近位置已更改为以下文件夹

%USERPROFILE%\AppData\Local\.vstools\azurite
Run Code Online (Sandbox Code Playgroud)

Visual Studio 2019 和已弃用的 Azure 存储模拟器

运行“AzureStorageEmulator.exe 清除所有”和“init”命令通常会挂起(或可能需要太多时间)

解决方案:您可以转到通常位于以下地址的用户文件夹(%userprofile%)并删除现有的AzureStorageEmulatorDb510.mdf和ldf文件。(最后一个后缀510代表模拟器版本5.10)

C:\Users\[YOUR_USER] or %userprofile%
Run Code Online (Sandbox Code Playgroud)

如果由于它们被锁定而无法删除它们,请通过运行AzureStorageEmulator.exe stop并重试来停止 Azure 存储模拟器,或者只需从系统托盘中的图标将其关闭