Изменение каталога данных на сервере MySQL DB


10

Я установил MySQL сервер 5.6.24 на Windows Server 2012 R2.

Я импортировал файлы дампа, и файлы данных хранятся в C:\ProgramData\MySQL\MySQL Server 5.6\data

Я хочу изменить каталог, как D:\ProgramData\Data.

Можете ли вы помочь мне, кто-нибудь?

Ответы:


10
  1. Откройте Windows CLI как администратор и завершите работу MySQL

    net stop mysql
  2. Скопируйте данные в D:\ProgramData\Data

    xcopy /s C:\ProgramData\MySQL\MySQL Server 5.6\data D:\ProgramData\Data
  3. Создать или редактировать C:\ProgramData\MySQL\MySQL Server 5.6\my.ini

    Добавьте это к my.ini

    [mysqld]
    datadir = D:/ProgramData/Data
    
  4. Запуск MySQL

    net start mysql

    Если вы не можете выполнить net start mysql, попробуйте панель управления Windows.

  5. Войдите в MySQL и убедитесь, что все хорошо

Когда вы входите в MySQL, запустите этот

mysql> SHOW GLOBAL VARIABLES LIKE 'datadir';

Не забудьте дать вашему новому каталогу данных те же полные права доступа для пользователей Network Service и Administrator, которые использовались по умолчанию для каталога данных, в противном случае это вызовет страшную ошибку «запущен, а затем остановлен». Не удаляйте этот каталог, пока не убедитесь, что ваш новый работает.

Если это не работает, вот план отката:

net stop mysql
del "C:\ProgramData\MySQL\MySQL Server 5.6\my.ini"
net start mysql

0

Добавление текущего ответа для MySQL server 8.0 в Windows 10 о том, как изменить каталог базы данных после установки (я искал его в Интернете и не нашел решения и почти сошел с ума, поэтому надеюсь, что это кому-нибудь поможет).

Первые шаги такие же, как в других обычных инструкциях для MySQL Server 5.6. Единственная разница в основном 3-й шаг:

  1. Перейдите в службы (например, нажмите WIN + R, введите services.msc, нажмите Enter) и остановите MySQL80службу, щелкнув правой кнопкой мыши и нажав «Стоп» (имя службы указывается во время установки, поэтому имя может отличаться для вас).

  2. Переместите папку базы данных туда, куда вы хотите. Начальное местоположение обычно C:\ProgramData\MySQL\MySQL Server 8.0\data. Внутри C:\ProgramData\MySQL\MySQL Server 8.0\папки должен быть my.iniфайл. Откройте его, чтобы отредактировать его с помощью Notepad ++ (или какого-либо другого блокнота) и найдите строки, которые упоминают старое местоположение в той или иной форме. Там должно быть два вхождения (один для datadir, один для secure-file-priv). Переименуйте оба в соответствующее новое местоположение (возможно, достаточно просто переименовать datadirдеталь, но лучше быть в безопасности, чем потом сожалеть). Первоначально они обычно выглядят так:

    datadir=C:/ProgramData/MySQL/MySQL Server 8.0/Data

    и

    secure-file-priv="C:/ProgramData/MySQL/MySQL Server 8.0/Uploads"

    Поэтому, если новое местоположение должно быть E:/MySQL/MySQL Server 8.0/..., переименуйте обе записи следующим образом:

    datadir=E:/MySQL/MySQL Server 8.0/Data

    и

    secure-file-priv="E:/MySQL/MySQL Server 8.0/Uploads"
  3. Теперь, после перемещения базы данных и переименования записей в my.iniфайле, прежде чем вы снова перезапустить службу, откройте редактор реестра (например , нажмите WIN + R, введите «Regedit», нажмите клавишу ВВОД), перейдите к Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL80(еще раз, MySQL80является имя службы службы MySQL, которую вы выбрали во время установки и которая может отличаться от MySQL80), щелкните правой кнопкой мыши ImagePathзапись и выберите «изменить». Там должна быть строка, похожая на эту:

    "C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe" --defaults-file="C:\ProgramData\MySQL\MySQL Server 8.0\my.ini" MySQL80

    По сути, это ссылка на фактический exe-файл, выполняемый службой с дополнительным параметром config-file, а именно на тот my.iniфайл, который мы изменили ранее. Поэтому здесь, конечно, путь к файлу конфигурации также необходимо обновить, поскольку он был перемещен, поэтому для этого примера он будет изменен на:

    "C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe" --defaults-file="E:\MySQL\MySQL Server 8.0\my.ini" MySQL80

    Обратите внимание, что, конечно, необходимо изменить только путь к файлу конфигурации.

  4. Теперь услуга может быть запущена снова! Снова перейдите к сервисам и щелкните правой кнопкой мыши MySQL80сервис, чтобы снова выбрать опцию «Пуск», и он должен перезагрузиться без проблем. Если шаг 3 пропущен, перезапуск обычно не будет работать!

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.