2014-10-03 36 views
1

我正嘗試配置Azure存儲模擬器2.4與本地SQL Server 2012一起使用。
當我執行此命令時,我無法創建數據庫。如何將Azure存儲模擬器配置爲使用本地SQLServer

C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator>WAStorageEmulator.exe init -server ThisPC -sqlinstance SQLEXPRESS -forcecreate 

Windows Azure Storage Emulator 3.3.0.0 command line tool 
Error: Cannot create database. 

我的Sql Sever Manager使用服務器名稱ThisPC \ SQLEXPRESS登錄。
請幫我瞭解我錯過了哪些信息。

-----------------更新-----------------

C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator>WAStorageEmulator.exe init -server (local)\SQLExpress -forcecreate

Windows Azure Storage Emulator 3.3.0.0 command line tool Error: Cannot create database.

如果你看一下應用程序數據\本地\ WAStorageEmulator \ WAStorageEmulator.3.3.config,你會發現:

<SQLInstance>(local)\SQLExpress</SQLInstance> 

感謝拉夫在提醒我的日誌,我檢查了我的事件查看器:

Cannot create file 'C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA\WAStorageEmulatorDb33.mdf' because it already exists

它說SQL數據庫文件存在,所以刪除它,並重試命令,工作正常,存儲模擬器也開始。 (命令工作第二次嘗試一段時間後,可能會有一些SQL緩存問題)

+0

當您登錄通過SSMS到您的SQLExpress實例,可以在您登錄使用Windows身份驗證或你使用SQL Server身份驗證? – 2014-10-03 11:44:18

+0

Windows身份驗證 – harshal 2014-10-03 17:49:27

+0

嗯......這很奇怪。我執行了上面的命令和一堆其他選項,它對我來說工作得很好。你可以試試:'WAStorageEmulator。exe init -server(local)\ SQLExpress -forcecreate',看看它是否適合你? – 2014-10-03 17:54:15

回答

5

我想提出一種基於從OP的崗位信息的應答/從未來的讀者經過一番尋找誰到這裏來的意見。

這是很容易的,真正的相關信息的主要部分是,你必須先刪除位於現有數據庫文件:

C:\Users\\WAStorageEmulatorDb33.mdf

然後你就可以重新初始化模擬器。所以運行Azure存儲模擬器並使用所需的SQL實例初始化:

WAStorageEmulator.exe init -server (local)\SQLExpress

事情可能出錯:

  1. 你可能不運行具有提升權限的命令提示符。通常情況下,如果您希望允許更改,Windows會提示您,但如果不是並且您收到失敗消息,請使用管理員權限運行該工具。
  2. 您的服務器位置/實例名稱可能有所不同。 OP是(本地)\ SQLExpress,我的是(localdb)\ CompanyName。確保你的是正確的。
相關問題