Развертывание сервера MySQL + базы данных с помощью .Сетевое приложение

StackOverflow https://stackoverflow.com/questions/49378

Вопрос

ПРИВЕТ Всем,

У нас есть приложение .Net 2.0, которое имеет серверную часть MySQL.Мы хотим иметь возможность развертывать MySQL и базу данных при установке приложения, и я пытаюсь найти лучшее решение.Текущая настройка заключается в копировании необходимых файлов в папку на локальном компьютере, а затем выполнении команды "NET START" для установки и запуска службы mysql.Затем мы восстанавливаем резервную копию базы данных в этот вновь созданный экземпляр mysql, используя bat-файлы.Это совсем не идеальное решение, и я пытаюсь придумать что-то более надежное.

Проблемы связаны с правами пользователя в Vista и всевозможными мелочами, связанными с установкой и запуском службы.Он слишком хрупок, чтобы быть надежным, или, по крайней мере, так кажется, когда я его тестирую.Это настройка типа клиент / сервер, поэтому нам нужно установить только один сервер для каждого офиса, но я хочу убедиться, что это как можно более беспроблемно и с как можно меньшим количеством экранов.

Как бы вы это сделали?

Это было полезно?

Решение

Не уверен, на какой стадии проекта вы находитесь, но если это простая и небольшая база данных, вы могли бы рассмотреть возможность преобразования ее в SQLite - файл.Это не идеально для клиент-серверных операций, но при небольшом объеме транзакций это может сработать.

Другие советы

Используйте установщик с разработанным скриптом.Вероятно, подойдет любой установщик, такой как Wise, InstallShield, InnoSetup и т.д.

Мы применили к этому другой подход.Мы делаем MySQL доступным для xcopy, записывая оболочку для генерации файла конфигурации (my.ini) перед вызовом MySQL (для правильной настройки базового пути и так далее).Затем мы написали другую службу, установленную с использованием стандартной настройки.Этот сервис позаботится о запуске MySQL и другой необходимой фоновой программы (в нашем случае Apache) для нас.Поскольку MySQL развертывается нами, мы хотели иметь полный контроль над ним.

При настройке Клиент / Сервер вы можете потребовать, чтобы тот, кто устанавливает сервер, установил его как администратор.Это должно решить большинство ваших проблем.

Опять же - это сервер.Клиенты - это, возможно, совсем другая история.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top