启动存储模拟器时,我收到以下错误消息。我错误地删除了mdf
文件夹中的users/admin
和日志文件。它在某个地方持有参考,不允许我再次创建数据库。请帮帮我。
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。
答案 0 :(得分:30)
执行以下步骤:
写下这个:
SqlLocalDb stop "v11.0"
SqlLocalDb delete "v11.0"
并按 Enter
请注意,“v11.0”为MyInstance
。
有关详细信息,请访问this link。
答案 1 :(得分:29)
如果删除数据文件C:\Users\<Username>\DevelopmentStorageDb201206.mdf
但不删除LocalDB服务器实例上的相应数据库,则可能会出现此问题。一种可能的解决方案是:
(localdb)\v11.0
实例。DevelopmentStorageDb201206
数据库。将出现错误消息,表明数据库删除以错误结束。忽略此消息并手动刷新数据库列表。答案 2 :(得分:13)
这不是与Azure组件相关的问题,而是LocalDB实例向Azure请求报告该DB仍然存在。首先使用“sqllocaldb i”检查计算机中的LocalDB实例,然后使用“sqllocaldb d'instal_name'”删除实例。我无法在我的机器上测试它,但如果localdb实例阻止你,这可能会阻止你。
在Windows Azure SDK 1.7中,Windows Azure存储模拟器在以下位置使用LocalDB实例特定配置:
%LocalAppData%\DevelopmentStorage\DevelopmentStorage.201206.config
基于此,您将看到v11.0实例是特定于Windows Azure存储模拟器的,因此请验证它是否正在运行并删除它将让DSInit在LocalDB中再次创建数据库。
答案 3 :(得分:10)
如果你的本地盒子上安装了Sql Express,那么(localdb)\ v11.0很可能不是你的本地Sql实例。它更可能是{MyComputerName} \ SQLEXPRESS。
转到:
C:\Users\<yourloginname>\AppData\Local\DevelopmentStorage\DevelopmentStorage.201206.config
改变:
<SQLInstance>(localdb)\v11.0</SQLInstance>
要:
<SQLInstance>{MyComputerName}\SQLEXPRESS</SQLInstance>
为我解决了这个错误。
答案 4 :(得分:2)
我希望这有帮助..
如果您已经尝试过但执行失败:
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!
对我而言,这是有效的...我曾尝试在使用这种方式之前格式化PC。我支持我的问题与我的用户名有关,其中包含“无效”字符,如姓名'NickName'姓氏,而“Azure”帐户似乎对他来说没问题。
我弄清楚'因为在日志中的某处我将属性目标路径设置为“C:\ Users \ Name $ _”,这对于我的用户帐户文件夹的路径来说很远。
之后,您可以继续使用CMD.exe并提示:
control userpasswords2
从控件中删除Azure登录名而不删除文件夹!
希望它有所帮助!
答案 5 :(得分:1)
我只是删除了以DevelopmentStorage ...或WAStorageEmulator开头的C:\ Users \ accountname \中的所有mdf和ldf。
重新安装并运行。
答案 6 :(得分:0)
这也可能是由于localDB不存在的文件夹引起的。看起来Visual Studio / Azure不会自动创建包含文件夹。我只是将错误代码中的路径复制到资源管理器中,并将目录创建到.MDF文件。
答案 7 :(得分:0)
在visual studio中,转到工具 - &gt;选项 - &gt;数据库工具 - &gt;数据连接并将localdb实例名称从v11.0更改为其他名称。
答案 8 :(得分:0)
我确实安装了SQL Express,如Brian Ogden在回答中所建议的那样,但是我想尝试将Azure Storage Emulator指向我的SQL Express实例,而无需修改配置文件。
我通过运行Storage Emulator的初始化过程并使用可用的开关传递SQL Express的服务器\实例详细信息来完成此操作。下面是我执行的命令的示例(从提升的命令提示符下):
AzureStorageEmulator.exe init -server MY-PC-NAME -instance MYSQLINST
这成功创建了数据库(在我的SQL Express实例中)并使我的存储模拟器正常工作。
我使用的是命名实例,但是我想通过省略-instance
开关,可以将这种方法用于默认实例。