C# 在windows azure上启动存储仿真程序时出错

C# 在windows azure上启动存储仿真程序时出错,c#,windows,azure,emulation,storage,C#,Windows,Azure,Emulation,Storage,我在启动存储模拟器时遇到以下错误。我错误地删除了mdf和users/admin文件夹中的日志文件。它将引用保存在某个地方,不允许我再次创建DB。请帮帮我 Added reservation for 127.0.0.1:10000/ in user account RaviBorra-PC\Ravi Borra. Added reservation for 127.0.0.1:10001/ in user account RaviBorra-PC\Ravi Borra. Added reserva

我在启动存储模拟器时遇到以下错误。我错误地删除了
mdf
users/admin
文件夹中的日志文件。它将引用保存在某个地方,不允许我再次创建DB。请帮帮我

Added reservation for 127.0.0.1:10000/ in user account RaviBorra-PC\Ravi Borra.
Added reservation for 127.0.0.1:10001/ in user account RaviBorra-PC\Ravi Borra.
Added reservation for 127.0.0.1:10002/ in user account RaviBorra-PC\Ravi Borra.

Found SQL Instance (localdb)\v11.0.
Creating database DevelopmentStorageDb201206 on SQL instance '(localdb)\v11.0'.
Cannot create database 'DevelopmentStorageDb201206' : Database 'DevelopmentStorageDb201206' already exists. Choose a different database name..

One or more initialization actions have failed. Resolve these errors before attempting to run the storage emulator again. Please refer to http://go.microsoft.com/fwlink/?LinkID=248088 for more details.
谢谢,,
Ravi Krishna B.

这不是与Azure组件相关的问题,而是LocalDB实例向Azure报告DB仍然存在的请求。首先使用“sqllocaldb i”检查计算机中的LocalDB实例,然后使用“sqllocaldb d'instance_name'删除实例”。我无法在我的机器上测试它,但如果localdb实例阻止了您,这可能会取消阻止您

在Windows Azure SDK 1.7中,Windows Azure存储仿真程序在以下位置使用LocalDB实例特定配置:

%LocalAppData%\DevelopmentStorage\DevelopmentStorage.201206.config

基于此,您将看到v11.0实例是特定于Windows Azure Storage Emulator的,因此请验证该实例是否正在运行,删除它将使DSInit在LocalDB中再次创建数据库。

如果删除数据文件
C:\Users\\DevelopmentStorageDb201206.mdf
,但不删除相应的数据库,则可能会出现此问题在LocalDB服务器实例上。一种可能的解决办法是:

  • 从SQL Server Management Studio连接到
    (localdb)\v11.0
    实例
  • 删除
    DevelopmentStorageDb201206
    数据库。将出现数据库删除以错误结束的错误消息。忽略此消息并手动刷新数据库列表
  • 现在,您可以启动Azure存储模拟器了
  • 执行以下步骤:

  • 打开cmd.exe(命令提示符)
  • 写下:

    SqlLocalDb stop "v11.0"
    SqlLocalDb delete "v11.0" 
    
    然后按回车键

  • 请注意,“v11.0”是
    MyInstance


    有关详细信息,请访问。

    这也可能是由于localDB的文件夹不存在造成的。看起来Visual Studio/Azure不会自动创建包含文件夹的文件夹。我刚刚将错误代码中的路径复制到资源管理器中,并创建了.MDF文件的目录。

    如果您的本地机器上安装了Sql Express,那么(localdb)\v11.0很可能不是您的本地Sql实例。更可能是{MyComputerName}\SQLEXPRESS

    前往:

    C:\Users\<yourloginname>\AppData\Local\DevelopmentStorage\DevelopmentStorage.201206.config
    
    C:\Users\\AppData\Local\DevelopmentStorage\DevelopmentStorage.201206.config
    
    和改变:

     <SQLInstance>(localdb)\v11.0</SQLInstance>
    
    (localdb)\v11.0
    
    致:

    {MyComputerName}\SQLEXPRESS
    
    帮我解决了这个错误。

    我希望这有帮助

    如果已尝试但失败,请执行:

     SQLLocalDB stop v11.0
     SQLLocalDB delete v11.0
     Delete all the files in C:\Users\<accontname>\WAStorageEmulatorDb* (usually one mdf and one ldf)
     Create a new account (I called it Azure, with administrative rights)
     Run again the installation
     Installation completed!
    
    从控件中,您可以删除Azure登录,而无需删除文件夹


    希望有帮助

    在visual studio中,转到工具->选项->数据库工具->数据连接并将localdb实例名称从v11.0更改为其他名称。

    我只是删除了C:\Users\accountname\中从DevelopmentStorage开始的所有mdf和ldf。。。或者WAStorageEmulator


    重新运行安装程序,它成功了

    正如Brian Ogden在回答中建议的那样,我确实安装了SQL Express,但我想尝试将Azure Storage Emulator指向我的SQL Express实例,而不修改配置文件

    为此,我运行了Storage Emulator的初始化过程&使用可用的开关传递SQL Express的服务器\实例详细信息。下面是我执行的命令示例(从提升的命令提示符):

    这成功地创建了数据库(在我的sqlexpress实例中),并使我的存储模拟器正常工作


    我使用的是一个命名实例,但我认为通过省略
    -instance
    开关,同样的方法也可以用于默认实例。

    嗨,我尝试过删除,但我得到的错误是“指定的LocalDB实例不存在”。我想最好的办法是卸载local DB,然后重新安装它,除非您与Azure支持部门联系,查看您的本地数据库还能做些什么。在第一次运行Azure之后,应该为Azure存储创建一个新的DB。正如前面提到的,对于模拟器的某些版本,配置路径会有所不同。对我来说,这是
    C:\Users\%username%\AppData\Local\AzureStorageEmulator\AzureStorageEmulator.4.1.config
    如果它在使用中出错:SqlLocalDb stop“v11.0”在上面的删除之前是第一个。这对我来说非常有效。我只是执行了SqlLocalDb stop,然后执行了delete命令,它工作了谢谢,谢谢。。。我肯定已经通过了所有其他的建议,这是一个最终的工作。对我来说,这是最好的解决办法!我在这里找到了WAStorageEmulator设置:
    C:\Users\{user account}\AppData\Local\WAStorageEmulator
    ,并将这一行设置为首选版本。对我也适用。但我的路径又略有不同:
    C:\Users\\AppData\Local\AzureStorageEmulator\AzureStorageEmulator.4.1.config
    。我假设路径取决于您使用的版本;已保存,在VS和宾果中点击F5:)谢谢@BrianThan您至少应该使用
    SqlLocalDb delete“v11.0”
    删除原始数据库“v11.0”。否则它将永远留在那里。但是如果你删除它,你不必在VS中更改它。所以你唯一要做的就是删除“v11.0”数据库。由于某种原因,我无法删除数据库。SqlLocalDb delete“v11.0”显示没有错误,但不实际删除数据库根据您的SDK版本,文件和数据库也可以调用
    AzureStorageEmulator*
     SQLLocalDB stop v11.0
     SQLLocalDB delete v11.0
     Delete all the files in C:\Users\<accontname>\WAStorageEmulatorDb* (usually one mdf and one ldf)
     Create a new account (I called it Azure, with administrative rights)
     Run again the installation
     Installation completed!
    
     control userpasswords2
    
    AzureStorageEmulator.exe init -server MY-PC-NAME -instance MYSQLINST