Поскольку LocalDB предназначена для разработки, то какую БД использовать для производства?


Здесь я немного путаюсь между LocalDB и SQL Server Express. Я читал с веб-сайтов, что LocalDB является улучшенной версией SQL Server Express (source ). Я бы предположил, что это означает, что LocalDB заменяет SQL Server Express.

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

В этом случае я займусь разработкой и тестированием мое веб-приложение с LocalDB на моем компьютере. Поскольку LocalDB является заменой SQL Server Express, а также не для производственного использования, то какую базу данных (кроме полного SQL Server, если у меня нет денег) я должен использовать, когда я готов опубликовать свое приложение?

5 9

5 ответов:

Я бы предположил, что это означает, что LocalDB заменяет SQL Server Express.

Ваше предположение неверно. Продолжайте читать статью, которую вы связали...

Localdb является не замена для SQL Server, Экспресс-выпуск-это дополнение к линейке в SQL Server, Экспресс-выпуск. В то время как LocalDB предназначена для разработчиков, обычный SQL Server Express будет продолжать существовать как бесплатная версия SQL Server, полностью совместимая и легко обновляемая до более высокого уровня SQL Server издания.

Вы все равно будете использовать SQL Server Express или более высокую версию SQL Server для производственного использования. Или еще лучше, абстрагируйте ваше приложение от базы данных таким образом, чтобы вы могли использовать любой сервер (MySQL, Oracle и т. д.)

LocalDB - это просто специальная версия SqlExpress, адаптированная для использования в разработке.

Если вы пытаетесь правильно настроить таблицы, представления и хранимые процедуры, вам не нужно, чтобы экземпляр SqlExpress запускался каждый раз при запуске компьютера. Вам не нужен сервер БД, чтобы принимать входящие соединения по порту 1433 и проверять имя пользователя и пароль. И т.д. и т.д.

В прошлом SqlExpress устанавливался отдельно. Он не интегрирован в Visual Studio и ASP.NET это как IIS. и IIS Express, никто не использует IIS Express для размещения торгового сайта, но это удобно, чтобы получить коды идут в localhost. LocalDB - это та же концепция, вы используете облегченную версию SqlServer, которая не оптимизирована для производительности, но запускается, когда вам нужно, чтобы ваши коды работали.

Это зависит от хостинга и количества администрирования, которое вы хотите сделать. Как вы уже упоминали, полный SQL Server - это вариант, но стоимость лицензирования может быть высокой.

PostgreSQL является еще одним популярным выбором, работает очень хорошо и является бесплатным.

Мой любимый вариант - Azure SQL. Цены минимальны, особенно для небольших баз данных, это устраняет необходимость в большом количестве администрирования, и вы все еще получаете отличную поддержку инструментов с Visual Studio.

Я использовал SqlExpress в производстве без проблем, и многие другие сделали то же самое. Пока вы не достигаете пределов, это очень хорошо, и только небольшой процент приложений действительно нуждается в большем. Я бы предложил вам разрабатывать непосредственно против sql express (localdb даже не существовал до недавнего времени, я все еще разрабатываю против sql express) и использовать его в производстве, пока ваше приложение не станет очень популярным или ограничения пространства не укусят вас, что вам нужно обновление.

Конечно, вы можете использовать другие СУБД или даже базы данных nosql (как ravendb или mongodb), это зависит от того, где вы хотите разместить приложение или каков ваш опыт работы с СУБД и т. д.

Ни LocalDB, ни SQL Server Express не должны использоваться в рабочих средах, поскольку:

  • SQL Server Express ограничен в некоторых отношениях, например, процессор, память, размер базы данных и т. д. Если вы пишете запрос,вы хотите убедиться, что он будет выполняться в рабочей среде на 10 миллионах строк, которые вы не можете поддерживать локально

  • Сервер SQL Express имеет ограничение в отношении виртуализации, вы не можете жить миграцию и т. д.

  • LocalDB помещает вас в "Бога песочница".

Полное сравнение SQL Server Express и standard здесь

Я бы рекомендовал использовать SQL Server Standard или PostgreSQL.