2012-04-02 10 views
1

私は2つのデータベースを持っています.1つは読み取り専用で、もう1つは読み書きアクセスです。それぞれAとBとしましょう。既存のテーブルデータを読み取り専用データベースから読み書き可能なデータベースにコピーするMySQL

Bにデータと構造体をコピーする必要があるテーブルがあります。 構造体をコピーするには、 'LIKE'キーワードを使用しましたが、うまくいかなかった。だから、私もデータをコピーすることができませんでした。

皆さんにはさらなる提案がありますか? ありがとうございます。

+1

'LIKE'キーワードを使用してコピーするSQLの例がありますか?あるデータベースから別のデータベースにテーブルをコピーするには、次のようにします。 'DROP TABLE IF EXISTS backup_db.tableA; CREATE TABLE backup_db.tableA SELECT * FROM live_db.tableA; 'または単にmysqldumpを使用してください – Flukey

答えて

2

それを復元するためにバックアップするテーブルデータ/構造をできるようになります、あなたがしたい:

DROP TABLE IF EXISTS backup_db.table1; 
CREATE TABLE backup_db.table1 SELECT * FROM live_db.table1; 

それとも、mysqldump

mysqldump -u root -p --opt dbname table1 > ~/export.sql 

使用でき、他のデータベースにそれを置くために、あなたは何だろう:

mysql -u root -p dbname2 < ~/export.sql 

編集:マスターとスレーブの設定があった場合、これは自動的に行われます。スレーブは、マスタが読取り/書込み中に読取り専用です。マスターからのデータは自動的にスレーブにコピーされますが、2台のサーバーが必要です。ご参考まで。

+0

このようにテーブルを作成できるかどうかはわかりませんでした。ヒントありがとうございます:) – haltabush

+0

ようこそ。良い一日を過ごしてください。 – Flukey

2

mysqldumpをご覧ください。これは、サーバーAからファイルを別のデータベースからテーブルをコピーするには、サーバーBに

mysqldump [options] db_name [tbl_name ...] 
関連する問題