Эмулятор хранения Azure не удалось инициализировать для Azure SDK 2.4

Я учился использовать инструменты Microsoft Azure для Visual Studio для разработки облачной службы Azure по адресу: "Начало работы с инструментами Azure для Visual Studio".

Я успешно выполнил следующие шаги: 1. Установите инструменты Azure. 2. Создайте облачную службу Azure.

Третьим шагом была сборка и отладка облачной службы, на которой я застрял. Во время отладки я получил ошибку «Не удалось инициализировать эмулятор хранилища Microsoft Azure».

Я пробовал использовать различные методы, приведенные на разных веб-сайтах, для инициализации эмулятора хранилища, но ни один из них не помог мне.

Когда я пробовал команду WAStorageEmulator.exe init, я получил ошибку «не могу создать базу данных».

Любая помощь будет принята с благодарностью.


person sourabh pandey    schedule 25.08.2014    source источник
comment
У меня это сработало. Нет необходимости запускать машину в безопасном режиме, просто измените файл конфигурации и запустите эмулятор хранилища.   -  person Dev    schedule 07.08.2017


Ответы (6)


Шаг 1: запустите систему в безопасном режиме (сразу после включения или перезапуска компьютера нажмите клавишу F8, чтобы перейти в безопасный режим).

Шаг 2. В безопасном режиме перейдите по пути C: \ Program Files (x86) \ Microsoft SDKs \ Azure \ Storage Emulator.

Шаг 3. Найдите WAStorageEmulator.exe - файл конфигурации.

введите описание изображения здесь

Шаг 4: отредактируйте файл WAStorageEmulator.exe с помощью Notepad ++ (любого редактора).

введите описание изображения здесь

Шаг 5: измените номера портов, как показано на снимке выше. (По умолчанию номера портов будут 10000, 10001, 10002).

<services>
  <service name="Blob" url="http://127.0.0.1:30000/"/>
  <service name="Queue" url="http://127.0.0.1:30001/"/>
  <service name="Table" url="http://127.0.0.1:30002/"/>
</services>

Шаг 6: сохраните файл, перезапустите систему в обычном режиме и запустите программу.

Надеюсь, это поможет.

person sourabh pandey    schedule 11.11.2014
comment
Вам не нужно запускать свою систему в безопасном режиме, просто скопируйте и вставьте исходный файл .config на рабочий стол, измените его там и скопируйте и вставьте обратно в папку Storage Emulator. Для этого вам потребуются права администратора. Я сделал это в Windows 7. - person pizycki; 20.03.2015
comment
Daystate прав. Я просто скопировал файл, отредактировал и скопировал обратно. Затем перезапустите VS 2013 (без перезагрузки системы), и он снова начнет работать. Странно, у меня несколько раз возникала проблема за последнюю неделю или около того, но я мог перезапустить ее снова после перезагрузки компьютера. Однако на этот раз это больше не работает. Вот почему если бы я приземлился здесь в конце. - person newman; 08.05.2015
comment
Это меня разобрало. Спасибо - person garryp; 03.02.2016
comment
Я столкнулся с той же проблемой, и я использую эмулятор хранилища v5.2. В этой версии нет файла конфигурации WAStorageEmulator.exe, вам необходимо отредактировать файл AzureStorageEmulator.exe.config. Не нужно запускать в безопасном режиме, нужны только права администратора (вы можете редактировать его в Notepad ++). Затем снова запустите его из VS, он работает :) - person rebornx; 13.03.2018

У меня была аналогичная проблема, и это похоже на один из ответов, размещенных здесь: Этот пост говорит об удалении старых файлов mdf, чтобы вы могли установить их снова

Кажется, это ближе к тому, что вы переживаете.

надеюсь, это поможет

person Andres    schedule 27.08.2014
comment
Я пытался удалить файлы mdf, но это не помогло мне решить проблему @Andres. - person sourabh pandey; 22.04.2015

Откройте командную строку MS Azure. Тип (в зависимости от вашего локального имени БД):

SqlLocalDb остановить проект v12

SqlLocalDb удалить проект v12

Затем перейдите в

C: \ Users (admin) \ AppData \ Local \ Microsoft \ Локальная база данных Microsoft SQL Server \ Instances

и я удалил там все экземпляры. Затем попробуйте переустановить эмулятор хранения Azure. Это сработало для меня.

person full_prog_full    schedule 19.03.2015
comment
Большое спасибо. У меня это работает. Я рекомендую это решение. - person Daniel Petrovaliev; 11.10.2015

Согласно принятому ответу, перезагрузка не требуется.

  1. Откройте окно Powershell в режиме администратора.
  2. Введите следующую команду: netstat -p tcp -ano | findstr :10000

Это скажет вам, какой идентификатор процесса использует назначенный порт эмулятора. Используйте вкладку «Подробности» в подробностях диспетчера задач, чтобы найти связанное приложение для идентификатора процесса. Часто это что-то вроде bittorrent / utorrent.

  1. Убейте этот процесс, и все готово.

..

Но если вам абсолютно необходимо запустить конфликтующее приложение во время разработки, вы можете изменить порты, используемые эмулятором.

Чтобы изменить порты, используемые эмулятором, в PowerShell:

chdir "C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator"
.\WAStorageEmulator stop

Затем отредактируйте файл конфигурации в соответствии с принятым ответом и просто сохраните его.

C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator\WAStorageEmulator.exe.config

Вам не нужно никуда его копировать. Затем вернитесь в Powershell и:

.\WAStorageEmulator status
.\WAStorageEmulator start
person rism    schedule 02.05.2015

Убедитесь, что у вас установлен SQL Server Express или SQL LocalDb. После этого вы сможете ввести

.\AzureStorageEmulator.exe init

Или, в этом более старом случае:

.\WAStorageEmulator.exe init

... и он должен установить базу данных по умолчанию. Обратите внимание, я использую синтаксис PowerShell. Если вы используете командную строку, это минус часть. \.

Это не всегда конфликт портов, вопреки тому, что могут предполагать другие сообщения.

Вы можете скачать выпуски SQL Server Express здесь:

https://www.microsoft.com/en-us/sql-server/sql-server-editions-express

Вы должны увидеть что-то подобное, когда запустите команду:

PS C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator> .\AzureStorageEmulator.exe init
Windows Azure Storage Emulator 5.10.0.0 command line tool
Empty SQL Instance. Autodetecting SQL Instance to use.
Looking for a LocalDB Installation.
Probing SQL Instance: '(localdb)\MSSQLLocalDB'.
Caught exception while probing for SQL endpoint. Login failed for user 'somedomain\someguy'.
Number of SqlErrors Reported: 1
SqlError: System.Data.SqlClient.SqlError: Login failed for user 'somedomain\someguy'.
Could not find a LocalDB Installation.
Probing SQL Instance: 'localhost\SQLExpress'.
Found SQL Instance localhost\SQLExpress.
Creating database AzureStorageEmulatorDb510 on SQL instance 'localhost\SQLExpress'.

Granting database access to user somedomain\someguy.
Database access for user somedomain\someguy was granted.

Initialization successful. The storage emulator is now ready for use.
The storage emulator was successfully initialized and is ready to use.
PS C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator>
person Auri Rahimzadeh    schedule 12.11.2019

Проблема связана с службой SQL «(localdb) \ MSSQLLocalDB» с разрешениями. Лучше всего использовать следующие команды: Шаг 1. Перейдите по пути «C: \ Program Files (x86) \ Microsoft SDKs \ Azure \ Storage Emulator» Путь к эмулятору хранилища

Шаг 2. Откройте PowerShell как администратор, Откройте PowerShell от имени администратора

Шаг 3: Выполните приведенную ниже команду в PowerShell, «AzureStorageEmulator.exe init -server. -sqlinstance SQLEXPRESS -forcecreate ». Ниже приведены выходные данные:  Выходные данные PowerShell 01

Шаг 4: Запустите указанную ниже команду в PowerShell, чтобы запустить эмулятор, «AzureStorageEmulator.exe start». Ниже вывод, Вывод PowerShell 02

Шаг 5: После этого отметьте SQLEXPRESS Базы данных, новая база данных создана. Базы данных

Теперь вы можете использовать Эмулятор хранилища. Эмулятор хранилища

person Venuja    schedule 22.07.2020