Я скопировал каталог веб-базы данных (/ var / lib / mysql / data / web /), когда mysql не запущен. Я перенес этот каталог на другую машину, на которой запущен mysql.
материалы web db основаны на myisam.
Думаю, как это восстановить на другом сервере. У меня на уме следующая стратегия.
Мой вопрос: как бороться с information_schema для этой новой базы данных?
Через шесть лет после того, как этот вопрос был задан, мне пришлось скопировать таблицу MYISAM с 80 миллионами строк в резервную базу данных (она использовала 80% дискового пространства всей нашей базы данных).
Я взял файлы .MYI, .MYD и .FRM из ночной резервной копии и скопировал их в папку новой работающей базы данных. Information_schema была обновлена почти сразу, и все операции с таблицами работали, как ожидалось (т.е. индексы и прочее были правильными).
Я запустил для них CHECK TABLE и OPTIMIZE TABLE, прежде чем отправлять их в тихую службу, но этот метод резервного копирования был безболезненным.
information_schema - это информационная база данных, в которой хранится информация обо всех остальных базах данных. Это встроенная виртуальная база данных с единственной целью - предоставить информацию о самой системе баз данных. Сервер MySQL автоматически заполняет таблицы в information_schema.
ссылка: http://kb.siteground.com/article/What_is_the_information_schema_database.html
Поэтому, если это только таблицы myisam, вы можете копировать / перемещать базу данных, пока версии mysql одинаковы.
на исходной машине:
mysqldump -q -u username -p database > database.sql
перенесите database.sql на конечный компьютер и выполните:
mysql -u username -p database < database.sql