azure - Windows Azure Blob 存储模拟器文件存储位置

标签 azure azure-storage

Windows Azure Blob 存储模拟器(是的,模拟器)在哪里存储上传到它的文件?例如,它在我的本地计算机上存储 blob 的实际文件夹(路径)是什么?我已设置并运行它,并且可以成功上传 blob 和检索 blob,但我想知道模拟器实际存储文件的位置。上传blob后,我得到的地址是:

http://127.0.0.1:10000/devstoreaccount1/mycontainer/picture.png 

我正在使用 xampp,这些文件似乎不在我的 htdocs 文件夹中。我只是好奇,仅此而已。

最佳答案

存储模拟器会在您看到的地址处进行监听,但是当请求传入时,它会使用 SQL 存储作为后端存储。

存储模拟器默认使用 SQL Server LocalDB,或者您可以使用 DSInit.exe 命令行实用程序将其指向完整的 SQL Server 实例。然后,所有表、队列和 BLOB 数据都保存在该数据库中。对于 BLOB,元数据存储在数据库中,但文件存储在 appdata 目录中。例如,我的一个位于 c:\users\michael\appdata\local\developmentstorage\sql\blockblobroot\1\c1ba3640-ad8e-4cbb-8818-95c7d866cb71 中。

如果您将模拟器指向 SQL Express 或 SQL Server 实例,则可以使用 SQL Management Studio 连接到该实例并深入研究表。有一个名为 Blob 的表,其中有一列 DirectoryPath,它会告诉您文件的位置。我不会对这个数据库的结构或者使用 API 或存储工具之外的文件结构进行过多的修改,否则可能会导致本地模拟器的稳定性出现问题。

另请注意,这不是数据在 Windows Azure 中的存储方式,而只是本地模拟器模拟数据的方式。

关于azure - Windows Azure Blob 存储模拟器文件存储位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21210043/

相关文章:

azure - 在 Azure 中设置自定义域时,我选择了 9 美元的 D1(共享)选项。现在我要付那9美元吗?

azure - 如何公开访问 Microsoft Azure 存储服务中的对象?

c# - 嵌套 Linq 查询 Microsoft Azure

azure - 诊断日志(存储)未显示在 Azure 存储帐户中

asp.net - Azure 与 owin 和 web.config 中的授权

c# - 获取configurationRefresher为null

azure - 如何使用 Terraform 设置 Azure 警报

azure - 使用 Terraform random_id 创建多个资源未按预期工作

Azure OPDG 系统将日志聚合到 KQL 中的 TimeChart

asp.net - 如何在 Azure 移动应用中的 SignalR.Hub 中获取 MobileAppSettingsDictionary