2010-06-05 72 views
3

我有一个来自Joomla MultiSite安装的MySQL数据库,它具有一组为每个Joomla站点使用不同前缀的表。当我通过phpMyAdmin导出数据库时,它会创建一个SQL文件,其中表格按字母顺序创建并填充。问题是,从站点的表依赖于主站点的表,但按字母顺序,它们的前缀位于主站点之前。所以导出工作正常,但是当我尝试导入时,出现错误后出现错误,必须手动移动SQL文件中的部分,以确保首先创建/填充依赖表。通过phpMyAdmin导出数据库表以非字母顺序排列

那么,是否有可能通过phpMyAdmin以特定顺序将表导出数据库?

编辑:这是我收到这应该澄清了事情的错误:

Error 

SQL query: Documentation 

-- 
-- Dumping data for table `j1_content_rating` 
-- 
-- -------------------------------------------------------- 
-- 
-- Table structure for table `j1_core_acl_aro` 
-- 
CREATE ALGORITHM = UNDEFINED DEFINER = `bookings_bpjms`@`localhost` SQL SECURITY DEFINER VIEW `bookings_bpjms`.`j1_core_acl_aro` AS SELECT `bookings_bpjms`.`js0_core_acl_aro`.`id` AS `id` , `bookings_bpjms`.`js0_core_acl_aro`.`section_value` AS `section_value` , `bookings_bpjms`.`js0_core_acl_aro`.`value` AS `value` , `bookings_bpjms`.`js0_core_acl_aro`.`order_value` AS `order_value` , `bookings_bpjms`.`js0_core_acl_aro`.`name` AS `name` , `bookings_bpjms`.`js0_core_acl_aro`.`hidden` AS `hidden` 
FROM `bookings_bpjms`.`js0_core_acl_aro` ; 

MySQL said: Documentation 
#1146 - Table 'bookings_bpjms.js0_core_acl_aro' doesn't exist 

导入脚本来的j1_部分后的js0_部分,因此会出现此错误。如果我在文本编辑器中编辑这个文件(30多个megs并且每天都在增长),我可以找到js0_部分并将它们移动到顶部,但这很乏味,耗时且容易出错。

回答

2

是否存在外键检查问题(在这种情况下文件开头的SET FOREIGN_KEY_CHECKS=0应该起作用),还是问题只是在实时环境中导入?

随着mysqldump它似乎表按照你给他们的顺序(如果你指定表而不是仅仅是一个数据库)倾倒,但这是没有记录的行为,据我所知,因此不应该依赖。