私はスレーブデータベースにプロダクションとは異なる名前を付けています。 (私たちはprod database
とスレーブdatabase_slave
と呼ぶ)MySQLのスレーブは新しいデータベースのビューに本番データベースの名前を付けます
スレーブから(私がdevのコピーを作るために)行うmysqldumpを実行すると、2つのデータベースビューにデータベース名が付けられている。手動で編集することなくダンプファイルを使用して別のコピーを作成することはできません。
私が本番コピーから同じmysqldumpを実行すると、すべてがきれいになります。だから何らかの理由でスレーブがこれらの2つのビューを間違って作成しました。 (。レプリケーションが確立される前に、他の4つのビューが、私は違いを説明すると信じている、作成された私は、複製が同期しているを確認しました。)スレーブからのmysqldumpの
スニペット:の
/*!50001 VIEW `database_slave`.`view_company` AS select `database`.`company`.`id` AS `id`,
`database`.`company`.`name` AS `name`,`database`.`company`.`state` AS `state`,
同じスニペットmysqldumpは生産中です(niceとclean):
/*!50001 VIEW `view_company` AS select `company`.`id` AS `id`,
`company`.`name` AS `name`,`company`.`state` AS `state`,
私はこれをprodからスレーブにダンプすることなく修正できますか?
replicate-rewrite-db
オプションを使用しています。
デフォルトではtrueですが、[replicate-rewrite-db](http://dev.mysql.com/doc/refman/5.0/en/replication-options-slave.html#option_mysqld_replicate-rewrite -db)。 23のテーブルと4つのビューが正常に動作するとします。ビューは2つしかありません。 –
そのオプションについて知りませんでした。 – Mchl
また、あなたはこの質問をhttp://serverfault.com/ – Mchl