3

Joomla MultiSite インストールの MySQL データベースがあり、Joomla サイトごとに異なるプレフィックスを持つ一連のテーブルがあります。phpMyAdmin を介してデータベースをエクスポートすると、テーブルが作成され、アルファベット順に入力される SQL ファイルが作成されます。問題は、スレーブ サイトのテーブルがマスター サイトのテーブルに依存しているにもかかわらず、アルファベット順でそれらのプレフィックスがマスター サイトより前になっていることです。したがって、エクスポートは正常に機能しますが、インポートしようとするとエラーが発生し、SQL ファイル内のセクションを手動で移動して、依存テーブルが最初に作成/設定されるようにする必要があります。

では、特定の順序でテーブルを使用して 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 

インポート スクリプトの js0_ 部分は j1_ 部分の後にあるため、このエラーが発生します。このファイルをテキスト エディターで編集すると (30 MB 以上、毎日増え続けます)、js0_ の部分を見つけて先頭に移動できますが、これは面倒で時間がかかり、エラーが発生しやすくなります。

4

1 に答える 1

3

問題は外部キー チェック (この場合SET FOREIGN_KEY_CHECKS=0、ファイルの先頭にある a が機能するはずです) ですか、それとも単にライブ環境でのインポートの問題ですか?

テーブルは指定した順序でmysqldumpダンプされるようですが (単なるデータベースではなくテーブルを指定した場合)、これは私が知る限り文書化されていない動作であり、依存するべきではありません。

于 2010-06-06T00:07:59.430 に答える