Шаг 1: Вы делаете это неправильно
Вы пытаетесь установить сервер mysql . Это должно быть вашей первой подсказкой, что что-то не так. Большинство серверных приложений предназначены для установки на серверах, а не на клиентах. Примечательным моментом здесь является то, что серверные приложения любят предполагать, что они «владеют» сервером. Это гигантское нет-нет для клиентских приложений.
Шаг 2: Примите решение, теперь, когда мы проинформированы должным образом
Теперь, когда мы установили, что делаем это неправильно, нам нужно выбрать, что делать. У нас есть 2 варианта:
- Переключение с MySQL на «клиентскую» базу данных, такую как SQLite или SQL Server Compact Edition.
- Обойти проблемы с установкой серверного приложения.
Я лично рекомендовал бы перейти на SQLite (или аналогичный) как можно скорее. Это «правильная вещь», и вам не придется поддерживать хаки в течение многих лет.
Шаг 3: Вы все равно захотите взломать MySQL, потому что это, вероятно, кажется проще.
Вы были предупреждены. Вот некоторые вещи, о которых вам нужно знать, и смягчить их:
- MySQL хочет установить в программные файлы \ mysql. Если пользователь уже установил MySQL самостоятельно. Ты все сломаешь
- Вам нужно будет указать свою версию MySQL для установки в пользовательскую папку. Я бы порекомендовал это как подпапку вашего приложения
- MySQL хочет работать как сервис (и сервис, скорее всего, будет называться «mysql»). Опять же, если у пользователя уже есть MySQL, вы все сломаете.
- Вам нужно будет запустить службу под другим именем
- Сервер MySQL, вероятно, захочет записать файлы в Program Files \ etc.
- Вам нужно изменить его конфигурацию, чтобы он записывал в% APPDATA% и так далее
- MySQL предполагает, что он всегда запускается одним и тем же пользователем. Если у вас на компьютере есть 2 пользователя, которые хотят использовать вашу программу, вам нужно будет соответственно взломать ее, либо запустив MySQL как локальную учетную запись службы (недостатки безопасности), либо установив отдельный mysql для каждого пользователя.
Итак, учитывая все это, я бы сказал, что вам лучше всего установить xcopyable mysql