У меня есть два старых сервера mysql, и теперь я купил новый сервер, и я хочу перенести файлы на этот сервер, мой вопрос в том, скопирую ли я все эти файлы на новый сервер, распознает ли mysql эти файлы или мне нужно будет изменить некоторые варианты. Оба сервера - MyISAM, а также новый сервер.
ОБНОВЛЕНО: Пример:
server one:
table1
table2
table3
server two:
table4
table5
table6
new server:
table1
table2
table3
table4
table5
table6
Если все таблицы MyISAM, у меня хорошие новости !!!
Mysqldump, хотя он и будет работать, более безопасен и консервативен в побитовом отношении, совершенно не требуется.
Каждая таблица MyISAM состоит из трех файлов: .frm, .MYD, .MYI.
Вы должны иметь возможность просто переместить таблицы в новую папку базы данных.
База данных information_schema автоматически обнаружит наличие трех файлов и обновит себя (в частности, обновит information_schema.schemata). Вот доказательство того, что может случиться:
Пока MySQL все еще работает, сделайте следующее
cd /var/lib/mysql
mkdir thisisatest
mysql
Как только вы бежите ПОКАЗАТЬ БАЗЫ ДАННЫХ; вы должны увидеть, что thisisatest отображается как база данных. Это потому, что information_schema автоматически обновила себя и зарегистрировала / var / lib / mysql / thisisatest в качестве базы данных. Таблицы MyISAM будут регистрировать себя таким же образом (в частности, обновите information_schema.tables). ВНИМАНИЕ: С InnoDB ЭТО НЕВОЗМОЖНО !!!
Экспорт таблиц с mysqldump
. Обязательно отфильтруйте таблицы / базы данных, которые вам не нужно импортировать или перезаписывать. Импортировать с чем-то вроде mysql < import.sql
.