LOAD DATA FROM MASTER
ã“ã®æ©Ÿèƒ½ã¯çµ‚了ã—ã¾ã—ãŸã€‚今後ã¯ä½¿ã‚ãªã„ã“ã¨ã‚’å‹§ã‚ã¾ã™ã€‚MySQLã®å°†æ¥ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ã¯å–り除ã‹ã‚Œã‚‹ã“ã¨ã‚‚ã‚りã¾ã™ã€‚
LOAD DATA FROM MASTER 㨠LOAD
TABLE FROM MASTER
ã®ç¾åœ¨ã®ã‚¤ãƒ³ãƒ—リメンテーションãŒã¨ã¦ã‚‚制é™ã•れã¦ã„ã‚‹ã®ã§ã€ã“れらã®ã‚¹ãƒ†ãƒ¼ãƒˆãƒ¡ãƒ³ãƒˆã¯
MySQL ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ 4.1
以é™ã§ã¯å»ƒæ¢äºˆå®šã§ã™ã€‚今後ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ã¯ã€ã•らã«é€²æ©ã—ãŸæŠ€è¡“(「online
backup〠ã¨å‘¼ã°ã‚Œã‚‹ç‰©)
を紹介ã™ã‚‹äºˆå®šã§ã™ã€‚ãã®æŠ€è¡“ã¯ã€ã•らã«å¤šãã®ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸
ã‚¨ãƒ³ã‚¸ãƒ³ã¨æ©Ÿèƒ½ã™ã‚‹æ›´ãªã‚‹åˆ©ç‚¹ã‚’æŒã¡ã¾ã™ã€‚
MySQL 5.1 以å‰ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ LOAD DATA FROM
MASTER ã‹ LOAD TABLE FROM MASTER
を利用ã™ã‚‹ç‚ºã«æŽ¨å¥¨ã™ã‚‹ä»£æ›¿æ–¹æ³•ã¯ã€mysqldump
ã‹ mysqlhotcopy
を利用ã™ã‚‹äº‹ã§ã™ã€‚後者㯠Perl ã¨2ã¤ã® Perl
モジュール(DBI ã¨
DBD:mysql)ã‚’å¿…è¦ã¨ã—ã€MyISAM
㨠ARCHIVE
テーブルã«ã ã‘æ©Ÿèƒ½ã—ã¾ã™ã€‚mysqldump
を利用ã™ã‚‹ã¨ã€ãƒžã‚¹ã‚¿ä¸Šã« SQL
ダンプを作æˆã§ãã€ãれらをスレーブ上ã®
mysql
クライアントã«ãƒ‘イプ(ã¾ãŸã¯ã‚³ãƒ”ー)ã§ãã¾ã™ã€‚ã“れã¯å…¨ã¦ã®ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸
ã‚¨ãƒ³ã‚¸ãƒ³ã«æ©Ÿèƒ½ã™ã‚‹ã¨ã„ã†åˆ©ç‚¹ã‚’æŒã¡ã¾ã™ãŒã€SELECT
を利用ã—ã¦æ©Ÿèƒ½ã™ã‚‹ç‚ºã‚¹ãƒ”ードãŒå¤§å¤‰é…ã„ã§ã™ã€‚
ã“ã®ã‚¹ãƒ†ãƒ¼ãƒˆãƒ¡ãƒ³ãƒˆã¯ã€ãƒžã‚¹ã‚¿ã®ã‚¹ãƒŠãƒƒãƒ—ショットを撮りã€ãれをスレーブã«ã‚³ãƒ”ーã—ã¾ã™ã€‚ãれã¯ã€ã‚¹ãƒ¬ãƒ¼ãƒ–ãŒæ£ã—ã„ä½ç½®ã‹ã‚‰è¤‡è£½ã‚’å§‹ã‚るよã†ã«
MASTER_LOG_FILE ã¨
MASTER_LOG_POS
ã®å€¤ã‚’æ›´æ–°ã—ã¾ã™ã€‚--replicate-*-do-*
㨠--replicate-*-ignore-*
オプションを利用ã—ã¦æŒ‡å®šã•れãŸãƒ†ãƒ¼ãƒ–ルã¨ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®é™¤å¤–ãƒ«ãƒ¼ãƒ«ã¯æ”¯æŒã•れã¦ã„ã¾ã™ã€‚マスタã‹ã‚‰ãƒ†ãƒ¼ãƒ–ルをãƒãƒ¼ãƒ‰ã™ã‚‹æ™‚ã«ã‚¹ãƒ¬ãƒ¼ãƒ–ã‚’æ··ä¹±ã•ã›ã‚‹
--replicate-rewrite-db="db1->db3"
ã¨
--replicate-rewrite-db="db2->db3"
ã®ã‚ˆã†ãªéžå›ºæœ‰ãƒžãƒƒãƒ”ングをè¨å®šã™ã‚‹ç‚ºã«ã€ãƒ¦ãƒ¼ã‚¶ã¯ã“ã®ã‚ªãƒ—ションを利用ã§ãã‚‹ã®ã§ã€--replicate-rewrite-db
ã¯è€ƒæ…®ã«å…¥ã‚Œã‚‰ã‚Œã¦
ã„ã¾ã›ã‚“。
ã“ã®ã‚¹ãƒ†ãƒ¼ãƒˆãƒ¡ãƒ³ãƒˆã¯æ¬¡ã®æ¡ä»¶ã«å¾“ã„利用ã§ãã¾ã™ï¼š
ã“れ㯠MyISAM
テーブルã«ã—ã‹æ©Ÿèƒ½ã—ã¾ã›ã‚“。éž
MyISAM
テーブルをãƒãƒ¼ãƒ‰ã—よã†ã¨ã™ã‚‹ã¨ã€æ¬¡ã®ã‚¨ãƒ©ãƒ¼ãŒèµ·ã“りã¾ã™ã€‚
ERROR 1189 (08S01): Net error reading from master
ãれã¯ã‚¹ãƒŠãƒƒãƒ—ショットを撮ã£ã¦ã„ã‚‹é–“ã«ã‚°ãƒãƒ¼ãƒãƒ« リード ãƒãƒƒã‚¯ã‚’å–å¾—ã—ã€ãれã¯ãƒãƒ¼ãƒ‰ä½œæ¥ä¸ã®ãƒžã‚¹ã‚¿ä¸Šã§ã®æ›´æ–°ã‚’妨ã’ã¾ã™ã€‚
ã‚‚ã—大ãã„テーブルをãƒãƒ¼ãƒ‰ã—ã¦ã„ãŸã‚‰ã€ãƒžã‚¹ã‚¿ã¨ã‚¹ãƒ¬ãƒ¼ãƒ–ã®ä¸¡æ–¹ã§
net_read_timeout ã¨
net_write_timeout
ã®å€¤ã‚’増やã™å¿…è¦ãŒã‚ã‚‹ã§ã—ょã†ã€‚詳ã—ãã¯
é …4.2.3. 「システム変数ã€
ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
LOAD DATA FROM MASTER ã¯
mysql
データベースã‹ã‚‰ä½•もコピー
ã—ãªã„
äº‹ã«æ³¨æ„ã—ã¦ãã ã•ã„。ã“れã¯ã€ãƒžã‚¹ã‚¿ã¨ã‚¹ãƒ¬ãƒ¼ãƒ–上ã§ç•°ãªã‚‹ãƒ¦ãƒ¼ã‚¶ã¨æ¨©é™ã‚’æŒã¤äº‹ã‚’ç°¡å˜ã«ã—ã¾ã™ã€‚
LOAD DATA FROM MASTER
を利用ã™ã‚‹ç‚ºã«ã¯ã€
ãƒžã‚¹ã‚¿ã«æŽ¥ç¶šã™ã‚‹ç‚ºã«åˆ©ç”¨ã•れる複製アカウントã¯ãƒžã‚¹ã‚¿ä¸Šã«
RELOAD 㨠SUPER
権é™ã‚’æŒã¡ã€ãƒãƒ¼ãƒ‰ã—ãŸã„å…¨ã¦ã®ãƒžã‚¹ã‚¿
テーブル㫠SELECT
権é™ã‚’æŒã¤å¿…è¦ãŒã‚りã¾ã™ã€‚ユーザãŒ
SELECT
権é™ã‚’æŒãŸãªã„å…¨ã¦ã®ãƒžã‚¹ã‚¿ テーブルã¯
LOAD DATA FROM MASTER
ã«ç„¡è¦–ã•れã¾ã™ã€‚ã“れã¯ã€ãƒžã‚¹ã‚¿ãŒãƒ¦ãƒ¼ã‚¶ã‹ã‚‰ãã‚Œã‚‰ã‚’éš ã™ç‚ºã«èµ·ã“りã¾ã™ã€‚LOAD
DATA FROM MASTER
ã¯ã€ãƒãƒ¼ãƒ‰ã™ã‚‹ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’知る為ã«
SHOW DATABASES
をコールã—ã¾ã™ãŒã€SHOW DATABASES
ã¯ãƒ¦ãƒ¼ã‚¶ãŒä½•ã‹ã—ã‚‰ã®æ¨©é™ã‚’æŒã¤ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã ã‘ã‚’è¿”ã—ã¾ã™ã€‚詳ã—ãã¯
é …12.5.4.11. 「SHOW DATABASES æ§‹æ–‡ã€
ã‚’å‚ç…§ã—ã¦ãã ã•ã„。スレーブ
サイドã§ã¯ã€LOAD DATA FROM MASTER
を発行ã™ã‚‹ãƒ¦ãƒ¼ã‚¶ã¯ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’ドãƒãƒƒãƒ—ã—作æˆã™ã‚‹æ¨©é™ã¨ã€ã‚³ãƒ”ーã•れるテーブルをæŒã¤å¿…è¦ãŒã‚りã¾ã™ã€‚