【问题标题】:Azure storage emulator unable to initializeAzure 存储模拟器无法初始化
【发布时间】:2016-02-03 07:31:35
【问题描述】:

我已将 Azure 存储模拟器从 2.3 升级到 2.4。 WAStorageEmulator.exe 已重命名为 AzureStorageEmulator.exe,但这不是问题。

当我跑步时

AzureStorageEmulator init -forcecreate

我只是收到一个错误,Google 返回 个结果:

错误:未找到用户指定的实例。请更正此问题并重新运行初始 化。

编辑

我必须先启动和停止,然后才能启动。因为我安装了以前版本的模拟器,所以我的本地 SQL 服务器实例上已经有 WAStorageEmulatorDb34。在我运行 init 命令后,我可以看到 没有创建新数据库(如 WAStorageEmulatorDb42)。

所以我认为最新版本可能使用的是旧数据库。然后我在 MSSMS 中运行查询以检查现有的 blob 容器,我仍然可以看到我在旧模拟器上创建的包含我添加的 blob 的两个容器。

当我在 Visual Studio 中访问开发 Azure 存储时,它没有显示任何容器。所以新版本显然不使用旧数据库。 但是是哪一个?它在哪里

好的,所以我想我会再运行一次 init,但要使用其他参数将 DB 放在我的 SQL 服务器实例上:

AzureStorageEmulator init -server localhost -sqlinstance MSSQLSERVER -forcecreate

然后我得到上述错误。再次...

我以具有提升权限的管理员身份运行 CMD。

【问题讨论】:

  • 尝试“/forceCreate”而不是“-forceCreate” AzureStorageEmulator init /forceCreate
  • @FabrizioAccatino 我必须执行 startstop 然后才能运行 init...无论使用减号还是斜杠...但是。我先前存在的数据库 WAStorageEmulator34 仍然存在,但没有创建新数据库?这个现有的 DB 有两个容器,但是当我从 VS 中访问 Storage Emulator 时,我看不到任何东西,因为使用 -forcecreate 进行初始化会重新初始化 DB。所以我想知道这个最新的模拟器使用的是哪个数据库以及它在哪里
  • @FabrizioAccatino:查看我编辑的问题
  • AFAIK db 文件在不同版本的存储模拟器之间不兼容。我有模拟器 4.1,现在有 4.2。在 c:\users\fabry\ 我看到两个 localdb 文件:AzureStorageEmulatorDb41.mdf 和 A​​zureStorageEmulatorDb42.mdf 我知道每次更新存储模拟器时,我都会从一个 emtpy 存储库开始。

标签: azure azure-storage azure-storage-emulator


【解决方案1】:

最终奏效的解决方案

附加信息

Azure 存储模拟器通常在 LocalDB 存储中创建表。根据模拟器版本,这些可能位于不同的数据库实例中。您可以在

中检查每个存储模拟器版本的配置
%USERPROFILE%\AppData\Local\[AzureStorageEmulatorFolder]\*.config

不同版本有不同的文件夹名称,从 DevelopmentStorageWAStorageEmulator 到最新 (4.2) AzureStorageEmulator

在此子文件夹中,您将找到至少一个与您安装的 Azure 存储模拟器版本相对应的配置文件。如果您打开它,您将看到它是如何配置的以及它保存表格的位置。如果您在任何现有的完整 SQL Server 实例上创建初始化也是如此。

我尝试初始化 Azure 存储模拟器 (ASE) 时遇到的问题是,我还提供了默认的 SQL 服务器实例 (MSSQLSERVER)。我不应该首先提供这些信息,而只提供有关服务器的信息

所以正确的命令行调用是

AzureStorageEmulator init -server localhost -forcecreate

这在我的本地 SQL 服务器上创建了我的数据库。从现在开始,您将如何从现有的 ASE 数据库(如果您之前已经拥有一个)迁移到新的数据库,这取决于您。

【讨论】:

  • 这对我有用。我已经从我的机器上删除了一些旧版本的 SQL Server,并且模拟器似乎依赖于其中一个。在看到您的建议之前无法弄清楚如何对其进行初始化 - 我猜 forcecreate 标志是关键。谢谢
【解决方案2】:

我遇到的问题或多或少是用户错误。

Azure 存储模拟器 4.6

错误:未找到用户指定的实例。请更正这一点并 重新运行初始化。

解决方案:我的本地没有经过 Windows 身份验证的登录 sql 实例。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-09-09
    • 2014-10-18
    • 1970-01-01
    • 2016-04-03
    • 2021-11-03
    • 2023-03-23
    • 1970-01-01
    • 2016-05-02
    相关资源
    最近更新 更多