Развертывание MySQL/MariaDB по требованию в приложении C#
Я создаю легкий трекер ошибок, и у меня действительно возникают трудности с людьми, которые не знают, как самостоятельно развертывать и подключаться к базе данных MySQL.
Им нужно создать свою базу данных и запустить мой источник SQL для создания необходимых таблиц. Им нужно знать порт, имя пользователя, пароль и имя своей базы данных.
Во время этого процесса они также должны предоставить свой собственный сервер MySQL... и совместимый MySQL Connector..., который также должен быть совместим с моей средой Mono .Net 2.0 (это средство отслеживания ошибок для Unity).
В начале, пока мои пользователи пробовали приложение, я просто хотел, чтобы все это прошло. Я не хочу никаких портов, имен пользователей, паролей для начала.
Позже, когда они решили использовать мой багтрекер, я признаю, что им нужно знать порт сервера и, возможно, проложить свой путь через "процесс создания сервера", чтобы создать сервер, отдельный от демонстрационной версии. приложение.
Я играю с мыслью о переходе на SQLite, но, согласно рекомендациям людей, это лучше всего подходит для однопользовательских приложений. Это не походит на надлежащую ситуацию отслеживания ошибок для меня. С SQLite никто не сможет увеличить их громкость.
Есть ли способ включить целый сервер MySQL / MariaDB в мое приложение и развернуть его одним нажатием кнопки?
1 ответ
Если бы мое приложение было совместимо с GPL, я мог бы использовать libmysqld. В качестве альтернативы я мог бы также заплатить Oracle за коммерческую лицензию.
Есть также множество других систем баз данных.
Поскольку мое приложение не слишком сложное, кажется, что использование смеси SQLite и MySQL Connector (для которого не требуется GPL) может быть лучшей альтернативой. Мне также нужно беспокоиться о том, что мои пользователи будут администраторами БД, поэтому переход от MySQL и RDBMS может быть довольно непопулярным.