- Перенос MySQL баз на отдельный жесткий диск
- Способ 1
- Способ 2
- Как переместить базу данных MySQL на другой диск?
- 4 ответа
- Перенос базы данных MySQL
- Как перенести базу данных MySQL
- Как сделать дамп базы данных
- Как создать дамп базы данных через phpMyAdmin
- Как перенести базы данных на хостинг
- Как перенести базу данных на виртуальный сервер (VPS)
- 27 мая 2012 г. Перенос MySQL баз на отдельный жесткий диск
- Способ 1
- Способ 2
- Перемещение системных баз данных Move System Databases
- Запланированное перемещение и процедура запланированного обслуживания диска Planned Relocation and Scheduled Disk Maintenance Procedure
- Процедура восстановления после сбоя Failure Recovery Procedure
- Перемещение базы данных master Moving the master Database
- Перемещение базы данных Resource Moving the Resource Database
- Дальнейшие действия. После перемещения всех системных баз данных Follow-up: After Moving All System Databases
- Измените путь к журналу агента SQL Server. Change the SQL Server Agent Log Path
- Измените расположение по умолчанию для базы данных Change the database default location
- Примеры Examples
- A. A. Перемещение базы данных tempdb Moving the tempdb database
Перенос MySQL баз на отдельный жесткий диск
Возникает ситуация когда нужно перенести базы mysql в другое место. Например, на отдельный жесткий диск или просто в другое место. Это может быть необходимо, если не хватает места на диске или для увеличения быстродействия, например ssd винт или raid массив.
Способ 1
Если вы хотите выделить под БД полностью весь жесткий диск, то нужно просто примонтировать устройство в mysql директорию по умолчанию. Обычно это /var/lib/mysql Останавливаем сервер
Копируем базы в какую-то временную директорию
удаляем базы со старой директории
Предполагается что у вас уже есть подготовленный жесткий диск. Если же нет, то его нужно предварительно разбить и создать файловую систему. Это можно сделать например при помощи cfdisk. И так примонтируем устройство:
нужно не забыть прописать в файле /etc/fstab примонтированный раздел, для того что бы при следующей загрузке системы он автоматически монтировался. Более подробнее смотрите мануалы по fstab и mount. В fstab должна быть запись вида:
далее переносим назад наши базы
и удаляем резервную копию (с этим лучше пока не спешить, удалить можно когда все успешно перенеслось)
далее нужно правильно выставить права доступа к /var/lib/mysql. Владелец папки должен быть mysql c правом на запись
а так же еще один важный момент, выставляем SELinux права доступа
проверить SELinux права можно командой ls -Z, должно быть что-то вроде этого:
теперь запускаем mysql демон
Способ 2
Если нужно использовать для хранилища не весь раздел, а только директорию на нем или переместить базы в другую директорию, то делаем следующее
копируем базы в новое место. Например, если мы хотим, что бы базы лежали в /media/sda3/mysql/
Как переместить базу данных MySQL на другой диск?
Я использую MySQL 5.5 на локальной машине для анализа большого количества правительственных данных. Я создал локальную базу данных, которая находится на моем диске по умолчанию (Win7 C: drive). Я хотел бы сохранить данные на моем диске E: большой внешний eSATA-диск.
Какие шаги я должен предпринять?
4 ответа
- Завершение работы mysql.
- Переместите все файлы в вашем текущем каталоге данных в новое место (проверьте местоположение в шаге 3 — datadir ).
- Найдите my.ini (он находится в каталоге установки mysql). Измените значение параметра datadir , чтобы указать на новое местоположение.
- Запустите mysql.
Хотя вы запрашиваете окна, здесь — это хорошие направления для тех, кто заканчивается здесь ищет направления linux /ubuntu:
- У вас есть данные mysql на внешнем /usb /альтернативном диске /mountpoint/var/lib/mysql , возможно, с компьютера, который умер или старой установки
- Вы хотите перенести его на свою новую установку Ubuntu локально /var/lib/mysql
- Остановить MySQL с помощью:
sudo /etc/init.d/mysql stop .- Сделайте резервную копию текущего (чистого) каталога данных MySQL с помощью:
sudo cp -Rp /var/lib/mysql /var/lib/mysql.backup .- Затем скопируйте старый каталог данных со старого диска с помощью:
sudo cp -Rp /mountpoint/var/lib/mysql /var/lib/mysql
где mountpoint — это путь к монтированию.- Теперь перезапустите MySQL с помощью:
sudo /etc/init.d/mysql start
При любой удаче MySQL должен перезагрузиться, и вы должны иметь свой старый базы данных назад.
Перенос базы данных MySQL
Перенос базы данных (БД) преследует собой цель создания её копии с последующим развертыванием на ином сервере.
Как перенести базу данных MySQL
- Посредством web-приложения phpMyAdmin.
- Через доступ по SSH протоколу.
- Используя программное обеспечение сторонних разработчиков.
В данной статье изложены первых два способа.
Чтобы перенести на другой хостинг базу, необходимо сначала выполнить её экспорт, т.е. создать дамп (от англ. dump — разгрузка, вывод). Затем — провести процедуру импорта полученного дампа на другом сервере.
Как сделать дамп базы данных
Дамп представляет собой файл, содержащий текстовую информацию в виде SQL-запросов. Как правило, он сохраняется с расширением «SQL» или вообще без расширения. Его можно сформировать как с помощью web-интерфейса phpMyAdmin, так и посредством команды SSH.
В ISPmanager можно скачать существующую базу данных. Для этого нужно зайти в панель управления, выбрать раздел «Базы данных», выбрать нужную БД и нажать «Скачать».
Как создать дамп базы данных через phpMyAdmin
1. Заходим в панель управления ISPmanager. Переходим в раздел «Базы данных». Выбираем нужную базу и нажимаем «Перейти». Запустится web-интерфейс управления БД — phpMyAdmin.
2. В левой панели выбрать базу данных, подлежащую экспорту, путём однократного нажатия на её названии левой кнопкой мыши.
3. Открыть вкладку «Экспорт».
4. Выбрать формат «SQL».
5. Нажать «Вперед» и сохранить файл на компьютер.
В зависимости от версии phpMyAdmin в перечне настроек закладки «Экспорт» может присутствовать опция «Сохранить как файл» (или «Сохранить вывод в файл»). Соответственно, перед нажатием «ОК» следует убедиться, что эта опция включена.
Как перенести базы данных на хостинг
Перенос на другой сервер осуществляется путем импорта из файла дампа. Чтобы провести импорт с помощью PhpMyAdmin следует выполнить следующее:
1. Запустить web-интерфейс управления БД — phpMyAdmin.
2. Убедиться, что в левой панели отсутствует база с наименованием вновь импортируемой.
3. Открыть вкладку «Импорт».
4. Выбрать импортируемый файл БД.
5. Убедиться, что установлена необходимая кодировка (по умолчанию — UTF-8);
6. Нажать «ОК».
Как перенести базу данных на виртуальный сервер (VPS)
Процесс переноса баз данных на VPS аналогичен импорту БД на хостинг. Выполнить загрузку дампа базы данных в ISPmanager или непосредственно через FTP.
Иногда размер дампа не позволяет использовать web-интерфейс MySQL. В таком случае, импорт осуществляется с помощью SSH-доступа. Используя подключение SSH, ввести команду как в примере, приведенном ниже.
В данном примере:
- «пользователь» — наименование пользователя в БД;
- «пароль» — пароль вышеуказанного пользователя;
- «имя_бд» — наименование импортируемой БД (например, «test_db»);
- «ourdbfile.sql» — наименование файла импортируемой БД (в данном примере файл расположен в корневой папке хостинга).
После флагов « -u » и « -p » пробела быть не должно.
В итоге, соблюдая указанную последовательность действий будет выполнен правильный перенос базы данных MySQL.
Начни экономить на хостинге сейчас — 14 дней бесплатно!
27 мая 2012 г. Перенос MySQL баз на отдельный жесткий диск
Иногда возникает ситуация когда нужно перенести базы mysql в другое место. Например, на отдельный жесткий диск или просто в другое место (какие-то причины безопасности). Это может быть необходимо, если не хватает места на диске или для увеличения быстродействия, например ssd винт или raid массив.
Способ 1
Если вы хотите выделить под БД полностью весь жеский диск, то нужно просто примонтировать устройство в mysql директорию по умолчанию. Обычно это /var/lib/mysql Останавливаем сервер
Копируем базы в какую-то временную директорию
удаляем базы со старой директории
Предполагается что у вас уже есть подготовленный жесткий диск. Если же нет, то его нужно предварительно разбить и создать файловую систему. Это можно сделать например при помощи cfdisk. И так примонтируем устройство:
нужно не забыть прописать в файле /etc/fstab примонтированный раздел, для того что бы при следующей загрузке системы он автоматически монтировался. Более подробнее смотрите мануалы по fstab и mount. В fstab должна быть запись вида:
далее переносим назад наши базы
и удаляем резервную копию (с этим лучше пока не спешить, удалить можно когда все успешно перенеслось)
далее нужно правильно выставить права доступа к /var/lib/mysql. Владелец папки должен быть mysql c правом на запись
а так же еще один важный момент, выставляем SELinux права доступа
проверить SELinux права можно командой ls -Z, должно быть что-то вроде этого:
теперь запускаем mysql демон
Способ 2
Если нужно использовать для хранилища не весь раздел, а только директорию на нем или переместить базы в другую директорию, то делаем следующее
копируем базы в новое место. Например, если мы хотим, что бы базы лежали в /media/sda3/mysql/
Перемещение системных баз данных Move System Databases
Применимо к: Applies to: SQL Server SQL Server (все поддерживаемые версии) SQL Server SQL Server (all supported versions) Применимо к: Applies to: SQL Server SQL Server (все поддерживаемые версии) SQL Server SQL Server (all supported versions)
В этом разделе описано, как в SQL Server SQL Server перемещают системные базы данных. This topic describes how to move system databases in SQL Server SQL Server . Эта операция может пригодиться в следующих ситуациях: Moving system databases may be useful in the following situations:
Восстановление после сбоя. Failure recovery. Например, база данных находится в подозрительном режиме, или ее работа была прекращена из-за сбоя оборудования; For example, the database is in suspect mode or has shut down because of a hardware failure.
Плановое перемещение. Planned relocation.
Перемещение для запланированного обслуживания дисков. Relocation for scheduled disk maintenance.
Следующие процедуры применяются для перемещения файлов баз данных в пределах одного экземпляра SQL Server SQL Server . The following procedures apply to moving database files within the same instance of SQL Server SQL Server . Перемещение базы данных на другой экземпляр SQL Server SQL Server или на другой сервер возможно через операцию резервного копирования и восстановления . To move a database to another instance of SQL Server SQL Server or to another server, use the backup and restore operation.
Для выполнения процедур, описанных в данном разделе, необходимо логическое имя файлов базы данных. The procedures in this topic require the logical name of the database files. Это имя можно получить из столбца name представления каталога sys.master_files . To obtain the name, query the name column in the sys.master_files catalog view.
При перемещении системной базы данных с последующим перестроением базы данных master необходимо заново переместить системную базу данных, поскольку операция перестроения устанавливает все системные базы данных в расположение по умолчанию. If you move a system database and later rebuild the master database, you must move the system database again because the rebuild operation installs all system databases to their default location.
После перемещения файлов учетная запись службы SQL Server SQL Server должна иметь разрешение на доступ к файлам в новом расположении папки с файлами. After moving files, the SQL Server SQL Server service account must have permission to access the files in the new file folder location. Дополнительные сведения см. в статье Настройка разрешений файловой системы для доступа к компоненту ядра СУБД. For more information, see Configure File System Permissions for Database Engine Access.
Запланированное перемещение и процедура запланированного обслуживания диска Planned Relocation and Scheduled Disk Maintenance Procedure
Чтобы переместить данные системной базы данных или файл журнала в рамках запланированного перемещения (операции запланированного обслуживания), следуйте следующим указаниям: To move a system database data or log file as part of a planned relocation or scheduled maintenance operation, follow these steps. Данная процедура применима ко всем системным базам данных, кроме master и Resource. This procedure applies to all system databases except the master and Resource databases.
Для каждого перемещаемого файла выполните следующую инструкцию. For each file to be moved, run the following statement.
Остановите работу экземпляра SQL Server SQL Server или выключите систему для проведения работ по обслуживанию дисков. Stop the instance of SQL Server SQL Server or shut down the system to perform maintenance. Дополнительные сведения см. в статье Iniciar, parar, pausar, retomar e reiniciar os serviços SQL Server. For more information, see Start, Stop, Pause, Resume, Restart the Database Engine, SQL Server Agent, or SQL Server Browser Service.
Переместите файл или файлы в новое расположение и убедитесь, что учетная запись службы SQL Server SQL Server все еще имеет разрешение на доступ к этому расположению. Move the file or files to the new location and verify the SQL Server SQL Server service account still has permission to access it.
Перезапустите экземпляр SQL Server SQL Server или сервер. Restart the instance of SQL Server SQL Server or the server. Дополнительные сведения см. в статье Iniciar, parar, pausar, retomar e reiniciar os serviços SQL Server. For more information, see Start, Stop, Pause, Resume, Restart the Database Engine, SQL Server Agent, or SQL Server Browser Service.
Проверьте изменения в файле с помощью следующего запроса. Verify the file change by running the following query.
Если база данных msdb перемещена, а экземпляр SQL Server SQL Server настроен для компонента Database Mail, выполните следующие дополнительные шаги. If the msdb database is moved and the instance of SQL Server SQL Server is configured for Database Mail, complete these additional steps.
С помощью следующего запроса убедитесь, что в базе данных msdb включен компонент Компонент Service Broker Service Broker . Verify that Компонент Service Broker Service Broker is enabled for the msdb database by running the following query.
Дополнительные сведения о включении Компонент Service Broker Service Broker см. в разделе ALTER DATABASE (Transact-SQL)перемещают системные базы данных. For more information about enabling Компонент Service Broker Service Broker , see ALTER DATABASE (Transact-SQL).
Отправкой тестового сообщения проверьте работоспособность компонента Database Mail. Verify that Database Mail is working by sending a test mail.
Процедура восстановления после сбоя Failure Recovery Procedure
Если нужно перенести файл из-за сбоя оборудования, необходимо выполнить приведенные ниже действия для его перемещения на новое место. If a file must be moved because of a hardware failure, follow these steps to relocate the file to a new location. Данная процедура применима ко всем системным базам данных, кроме master и Resource. This procedure applies to all system databases except the master and Resource databases.
Если базу данных запустить нельзя, она находится в подозрительном режиме или в невосстановленном состоянии, то файл может быть перемещен только членом предопределенной роли sysadmin. If the database cannot be started, that is it is in suspect mode or in an unrecovered state, only members of the sysadmin fixed role can move the file.
Остановите работу экземпляра SQL Server SQL Server , если он запущен. Stop the instance of SQL Server SQL Server if it is started.
Запустите экземпляр SQL Server SQL Server в режиме восстановления «только master», запустив из командной строки одну из следующих команд. Start the instance of SQL Server SQL Server in master-only recovery mode by entering one of the following commands at the command prompt. В задаваемых для них параметрах учитывается регистр символов. The parameters specified in these commands are case sensitive. Команды завершаются ошибкой, если параметры заданы не так, как показано. The commands fail when the parameters are not specified as shown.
В случае с экземпляром по умолчанию (MSSQLSERVER) запустите следующую команду: For the default (MSSQLSERVER) instance, run the following command:
В случае с именованным экземпляром запустите следующую команду: For a named instance, run the following command:
Для каждого перемещаемого файла используйте команды sqlcmd или SQL Server Management Studio SQL Server Management Studio для выполнения следующей инструкции. For each file to be moved, use sqlcmd commands or SQL Server Management Studio SQL Server Management Studio to run the following statement.
Дополнительные сведения об использовании программы sqlcmd см. в статье Использование программы sqlcmd. For more information about using the sqlcmd utility, see Use the sqlcmd Utility.
Завершите работу программы sqlcmd или SQL Server Management Studio SQL Server Management Studio . Exit the sqlcmd utility or SQL Server Management Studio SQL Server Management Studio .
Остановите экземпляр SQL Server SQL Server . Stop the instance of SQL Server SQL Server . Например, выполните команду NET STOP MSSQLSERVER . For example, run NET STOP MSSQLSERVER .
Переместите файл или файлы в новое расположение. Move the file or files to the new location.
Повторно запустите экземпляр SQL Server SQL Server . Restart the instance of SQL Server SQL Server . Например, выполните команду NET START MSSQLSERVER . For example, run NET START MSSQLSERVER .
Проверьте изменения в файле с помощью следующего запроса. Verify the file change by running the following query.
Перемещение базы данных master Moving the master Database
Чтобы переместить базу данных master, выполните следующие действия. To move the master database, follow these steps.
В меню Пуск выберите Все программы, укажите Microsoft SQL Server, затем Средства настройки и выберите пункт Диспетчер конфигурации SQL Server. From the Start menu, point to All Programs, point to Microsoft SQL Server, point to Configuration Tools, and then click SQL Server Configuration Manager.
Находясь в узле Службы SQL Server , щелкните правой кнопкой мыши экземпляр SQL Server SQL Server , например SQL Server (MSSQLSERVER) , и выберите пункт Свойства. In the SQL Server Services node, right-click the instance of SQL Server SQL Server (for example, SQL Server (MSSQLSERVER)) and choose Properties.
В диалоговом окне Свойства SQL Server ( имя_экземпляра ) перейдите на вкладку Параметры запуска . In the SQL Server (instance_name) Properties dialog box, click the Startup Parameters tab.
В поле Существующие параметры выберите параметр «-d». In the Existing parameters box, select the -d parameter. В поле Укажите параметр запуска измените значение параметра, указав новый путь к файлу данных базы данных master. In the Specify a startup parameter box, change the parameter to the new path of the master data file. Нажмите Обновить для сохранения изменений. Click Update to save the change.
В поле Существующие параметры выберите параметр «-l». In the Existing parameters box, select the -l parameter. В поле Укажите параметр запуска измените значение параметра, указав новый путь к файлу журнала базы данных master. In the Specify a startup parameter box, change the parameter to the new path of the master log file. Нажмите Обновить для сохранения изменений. Click Update to save the change.
Значение параметра для файла данных должно соответствовать параметру -d , а значение для файла журнала — параметру -l . The parameter value for the data file must follow the -d parameter and the value for the log file must follow the -l parameter. В следующем примере показаны значения параметров для указания местоположения файла базы данных master по умолчанию. The following example shows the parameter values for the default location of the master data file.
-dC:\Program Files\Microsoft SQL Server\MSSQL .MSSQLSERVER\MSSQL\DATA\master.mdf
-lC:\Program Files\Microsoft SQL Server\MSSQL .MSSQLSERVER\MSSQL\DATA\mastlog.ldf
Если планируется переместить файл данных базы данных master в расположение E:\SQLData , значения параметра будут изменены следующим образом. If the planned relocation for the master data file is E:\SQLData , the parameter values would be changed as follows:
Нажмите кнопку ОК, чтобы сохранить изменения и закрыть диалоговое окно Свойства SQL Server ( имя_экземпляра ) . Click OK to save the changes permanently and close the SQL Server (instance_name) Properties dialog box.
Остановите работу экземпляра SQL Server SQL Server , щелкнув правой кнопкой мыши имя экземпляра и выбрав команду Остановить. Stop the instance of SQL Server SQL Server by right-clicking the instance name and choosing Stop.
Переместите файлы master.mdf и mastlog.ldf на новое место. Move the master.mdf and mastlog.ldf files to the new location.
Повторно запустите экземпляр SQL Server SQL Server . Restart the instance of SQL Server SQL Server .
Проверьте правильность изменений для базы данных master, выполнив следующий запрос. Verify the file change for the master database by running the following query.
На этом этапе среда SQL Server должна выполняться как обычно. At this point SQL Server should run normally. Однако корпорация Майкрософт рекомендует также изменить запись реестра, указанную в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\instance_ID\Setup , где instance_ID имеет вид MSSQL13.MSSQLSERVER . However Microsoft recommends also adjusting the registry entry at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\instance_ID\Setup , where instance_ID is like MSSQL13.MSSQLSERVER . В этом кусте измените значение SQLDataRoot на новый путь. In that hive, change the SQLDataRoot value to the new path. Невозможность обновления реестра может привести сбою исправления и обновления. Failure to update the registry can cause patching and upgrading to fail.
Перемещение базы данных Resource Moving the Resource Database
База данных находится в каталоге :\Program Files\Microsoft SQL Server\MSSQL . \MSSQL\Binn\. The location of the Resource database is :\Program Files\Microsoft SQL Server\MSSQL . \MSSQL\Binn\. Эту базу данных нельзя переместить. The database cannot be moved.
Дальнейшие действия. После перемещения всех системных баз данных Follow-up: After Moving All System Databases
Если все системные базы данных перемещаются на новый диск или том либо на другой сервер с другой буквой диска, выполните следующие обновления. If you have moved all of the system databases to a new drive or volume or to another server with a different drive letter, make the following updates.
Измените путь к журналу агента SQL Server. Change the SQL Server Agent log path. Если этого не сделать, то агент SQL Server не сможет запуститься. If you do not update this path, SQL Server Agent will fail to start.
Измените расположение по умолчанию для базы данных. Change the database default location. Создание новой базы данных может завершиться ошибкой, если буква диска и путь, указанные в качестве места расположения по умолчанию, не существуют. Creating a new database may fail if the drive letter and path specified as the default location do not exist.
Измените путь к журналу агента SQL Server. Change the SQL Server Agent Log Path
В среде SQL Server Management Studio в обозревателе объектов разверните узел Агент SQL Server. From SQL Server Management Studio, in Object Explorer, expand SQL Server Agent.
Щелкните правой кнопкой мыши Журналы ошибок и выберите пункт Настроить. Right-click Error Logs and click Configure.
В диалоговом окне Настройка журналов ошибок агента SQL Server задайте новое расположение для файла SQLAGENT.OUT. In the Configure SQL Server Agent Error Logs dialog box, specify the new location of the SQLAGENT.OUT file. Расположение по умолчанию: C:\Program Files\Microsoft SQL Server\MSSQL . \MSSQL\Log\. The default location is C:\Program Files\Microsoft SQL Server\MSSQL . \MSSQL\Log\.
Измените расположение по умолчанию для базы данных Change the database default location
В среде SQL Server Management Studio в обозревателе объектов щелкните правой кнопкой мыши сервер SQL Server и выберите пункт Свойства. From SQL Server Management Studio, in Object Explorer, right-click the SQL Server server and click Properties.
В диалоговом окне Свойства сервера выберите пункт Настройки базы данных. In the Server Properties dialog box, select Database Settings.
На панели Места хранения, используемые базой данных по умолчанию можно просмотреть текущие места хранения, используемые по умолчанию для новых файлов данных и файлов журнала. Under Database Default Locations, browse to the new location for both the data and log files.
Остановите и запустите службу SQL Server, чтобы завершить изменение. Stop and start the SQL Server service to complete the change.
Примеры Examples
A. A. Перемещение базы данных tempdb Moving the tempdb database
В следующем примере показано перемещение файлов базы данных tempdb и журнала на новое место в рамках запланированного перемещения. The following example moves the tempdb data and log files to a new location as part of a planned relocation.
Поскольку база данных tempdb создается повторно при каждом запуске экземпляра SQL Server SQL Server , то нет необходимости физически переносить файлы данных и журнала. Because tempdb is re-created each time the instance of SQL Server SQL Server is started, you do not have to physically move the data and log files. Файлы создаются в новом месте во время перезагрузки службы на шаге 3. The files are created in the new location when the service is restarted in step 3. До перезагрузки службы база данных tempdb продолжает использовать файлы данных и файл журнала, расположенные в существующем месте. Until the service is restarted, tempdb continues to use the data and log files in existing location.
Определение логических имен файлов базы данных tempdb и их текущего местоположения на диске. Determine the logical file names of the tempdb database and their current location on the disk.
Измените местоположение каждого файла с помощью ALTER DATABASE . Change the location of each file by using ALTER DATABASE .
Остановите и перезапустите экземпляр SQL Server SQL Server . Stop and restart the instance of SQL Server SQL Server .
Проверьте изменение файла. Verify the file change.