我已经将操作系统从Windows迁移到Centos 7,而没有通过mysqldump备份mysql。现在我有mysql数据文件.frm和.ibd。我想迁移他们
如何迁移数据库。
发布于 2015-05-25 00:35:32
这是非常有可能的。我将解释的这个过程对于基于Ubuntu的系统是有效的,但是我希望CentOS不会有太大的不同。
基本上,您需要将mysql数据文件复制到/var/lib/mysql/文件夹中。Mysql数据文件在此文件夹中分发如下:
.
|-- debian-5.5.flag
|-- ibdata1
|-- ib_logfile0
|-- ib_logfile1
|-- drupal
| |-- actions.frm
| |-- actions.MYD
| |-- actions.MYI
| |-- wysiwyg.frm
| |-- wysiwyg.MYD
| |-- wysiwyg.MYI
| |-- wysiwyg_user.frm
| |-- wysiwyg_user.MYD
| |-- wysiwyg_user.MYI
| |-- xmlsitemap.frm
| |-- xmlsitemap.MYD
| |-- xmlsitemap.MYI
| |-- xmlsitemap_sitemap.frm
| |-- xmlsitemap_sitemap.MYD
| `-- xmlsitemap_sitemap.MYI
|-- mysql
| |-- columns_priv.frm
| |-- columns_priv.MYD
| |-- columns_priv.MYI
| |-- db.frm
| |-- db.MYD
| |-- db.MYI
| |-- event.frm
| |-- event.MYD
| |-- event.MYI
| |-- func.frm
| |-- func.MYD
| |-- func.MYI
| |-- general_log.CSM
| |-- general_log.CSV
| |-- general_log.frm
| |-- help_category.frm
| |-- help_category.MYD
| |-- help_category.MYI
| |-- help_keyword.frm
| |-- help_keyword.MYD
| |-- help_keyword.MYI
| |-- procs_priv.MYI
| |-- proxies_priv.frm
| |-- proxies_priv.MYD
| |-- proxies_priv.MYI
| |-- servers.frm
| |-- servers.MYD
| |-- servers.MYI
| |-- slow_log.CSM
| |-- slow_log.CSV
| |-- slow_log.frm
| |-- tables_priv.frm
| |-- tables_priv.MYD
| |-- tables_priv.MYI
| |-- time_zone.frm
| |-- time_zone_leap_second.frm
| |-- time_zone_leap_second.MYD
| |-- time_zone_leap_second.MYI
| |-- time_zone.MYD
| |-- time_zone.MYI
| |-- time_zone_name.frm
| |-- time_zone_name.MYD
| |-- time_zone_name.MYI
| |-- time_zone_transition.frm
| |-- time_zone_transition.MYD
| |-- time_zone_transition.MYI
| |-- time_zone_transition_type.frm
| |-- time_zone_transition_type.MYD
| |-- time_zone_transition_type.MYI
| |-- user.frm
| |-- user.MYD
| `-- user.MYI
|-- mysql_upgrade_info
|-- performance_schema
| |-- cond_instances.frm
| |-- db.opt
| |-- events_waits_current.frm
| |-- events_waits_history.frm
| |-- events_waits_history_long.frm
| |-- events_waits_summary_by_instance.frm
| |-- events_waits_summary_by_thread_by_event_name.frm
| |-- events_waits_summary_global_by_event_name.frm
| |-- file_instances.frm
| |-- file_summary_by_event_name.frm
| |-- file_summary_by_instance.frm
| |-- mutex_instances.frm
| |-- performance_timers.frm
| |-- rwlock_instances.frm
| |-- setup_consumers.frm
| |-- setup_instruments.frm
| |-- setup_timers.frm
| `-- threads.frm
|-- phpmyadmin
| |-- db.opt
| |-- pma_bookmark.frm
| |-- pma_bookmark.MYD
| |-- pma_bookmark.MYI
| |-- pma_column_info.frm
| |-- pma_column_info.MYD
| |-- pma_column_info.MYI
| |-- pma_designer_coords.frm
| |-- pma_designer_coords.MYD
| |-- pma_designer_coords.MYI
| |-- pma_history.frm
| |-- pma_history.MYD
| |-- pma_history.MYI
| |-- pma_pdf_pages.frm
| |-- pma_pdf_pages.MYD
| |-- pma_pdf_pages.MYI
| |-- pma_recent.frm
| |-- pma_recent.MYD
| |-- pma_recent.MYI
| |-- pma_relation.frm
| |-- pma_relation.MYD
| |-- pma_relation.MYI
| |-- pma_table_coords.frm
| |-- pma_table_coords.MYD
| |-- pma_table_coords.MYI
| |-- pma_table_info.frm
| |-- pma_table_info.MYD
| |-- pma_table_info.MYI
| |-- pma_table_uiprefs.frm
| |-- pma_table_uiprefs.MYD
| |-- pma_table_uiprefs.MYI
| |-- pma_tracking.frm
| |-- pma_tracking.MYD
| |-- pma_tracking.MYI
| |-- pma_userconfig.frm
| |-- pma_userconfig.MYD
| `-- pma_userconfig.MYI因此,从tree命令的上述经过修剪的输出中可以看到,数据文件分布在属于每个数据库的子文件夹中。最有可能的是,windows-7中的mysql数据库也以这种形式分发数据,因此您只需要复制这个文件夹中的所有内容。
在这样做之后,还有另一个关键步骤。您需要将所有这些文件和文件夹的所有者和组更改为mysql。这是一个重要的关键步骤,我有一次在迁徙过程中错过了这一步,直到我意识到这一点,我才意识到这一点。为此,在复制文件后,在/var/lib/mysql文件夹中发出命令:
chown -R mysql:mysql *https://unix.stackexchange.com/questions/205405
复制相似问题