Я пытаюсь переместить базу данных от одного провайдера к другому, проблема в том, что у меня нет доступа к системе с обоих концов (т.е. нет ssh), поэтому я не могу использовать mysqldump.
Я уже пробовал использовать MySQL Administrator, резервное копирование заняло около 45 минут, но когда дело дошло до восстановления, оно двигалось со скоростью улитки и составляло более 12 часов. Это живое приложение, поэтому мне нужно свести время простоя к минимуму.
База данных состоит из 35 таблиц, смеси MyISAM и InnoDB, всего около 4,4 ГБ. И исходная, и целевая базы данных работают на очень мощных серверах.
Любые предложения по быстрому выполнению этой задачи будут с благодарностью приняты.
Спасибо
Некоторые старые приемы массовой загрузки данных (которые работают практически для любой базы данных на основе SQL с расширенными функциями, такими как транзакции, UDF и триггеры):
Новые версии MySQL допускают репликацию; вы всегда можете реплицировать данные на другой компьютер, а затем, когда репликация будет завершена, переключите приложение так, чтобы оно указывало на новый компьютер, и выключите репликацию.
Можете ли вы выполнить запрос к исходной базе данных из новой? Если это так, создайте сценарий (можно даже запустить PHP как веб-страницу без вывода), чтобы забрать данные с исходного сервера и передать их на новый, исключив промежуточную систему.
Если можете, поместите содержимое таблицы в CSV или разделите табуляцией и используйте 'ЗАГРУЗИТЬ ДАННЫЕ'команда - обычно много быстрее для массовой загрузки данных, чем для отдельных вставок.