[MYSQL] replication »ç¿ëÇϱâ
[ Replication ¶õ ? ]
¿©·¯´ëÀÇ µðºñ¼¹ö°¡ µ¿ÀÏÇÑ µ¥ÀÌŸ¸¦ Áö¼ÓÀûÀ¸·Î °¡Áö°íÀÖÀ»¼öÀÖ´Â ±â´ÉÀÌ¶ó ¸»ÇÒ¼öÀÖ´Ù.ÀÌ ±â´ÉÀ» »ç¿ëÇÏ¸é ½Ç½Ã°£ ¹é¾÷ÀÌ °¡´ÉÇÒ°ÍÀ̸ç, DB ¼¹öÀÇ ºÎÇÏ ºÐ»êµµ °¡´ÉÇÒ°ÍÀ̶ó°í »ý°¢ÇÑ´Ù.
ReplicationÀ» ÀÌ¿ëÇϸé MasterÀÇ µ¥ÀÌŸ¿Í µ¿ÀÏÇÑ µ¥ÀÌŸ¸¦ °¡Áø ¿©·¯°³ÀÇ Slave¸¦ ¸¸µé¼öÀÖ´Ù.
ÀÌ ±â´ÉÀº Mysql-3.23.15 ºÎÅÍ Replication ±â´ÉÀÌ Áö¿øµÈ´Ù°í ÇÑ´Ù.
Mysql¿¡¼´Â ¸ðµç µ¥ÀÌŸº¯µ¿½Ã¿¡ ·Î±×¸¦ ³²±â´Â ±â´ÉÀÌÀÖ´Ù.
ÀÌ ±â´ÉÀ» ÀÌ¿ëÇѰÍÀÌ Replication ±â´ÉÀÌ´Ù.
Slave ¼¹ö´Â ÀÌ ·Î±×ÀÇ ³»¿ëÀ» °¡Áö°í ÀÚ±âÀڽſ¡ UPDATE ¼öÇàÇÑ´Ù.
±×·¯¹Ç·Î ¸ðµç UPDATE QUERY´Â MASTER ¿¡¼¸¸ ¼öÇàµÇ¾î¾ßÇϸç,SELECT¿Í °°Àº ´Ü¼øÇÑ QUERY´Â Slave¿¡¼ »ç¿ëÇÏ´ÉÇÏ´Ù. ¾Æ·¡ÀÇ ³»¿ëÀº ¹öÀüÀº mysql-3.23.44 ¿Í mysql-3.23.39 ¿¡¼ÀÇ ±¸ÇöÇÏ¿´´Ù.
[ Replication ±¸ÇöÇϱâ ]
* ¿¹Á¦·Î »ç¿ëÇÒ µ¥ÀÌŸº£À̽º¸í : soma , Å×À̺í¸í : soma 1. master ¼¹ö¿¡ replication¿¡ »ç¿ëµÉ »ç¿ëÀÚ Ãß°¡Çϱâ
ex) 'soma' ¶ó´Â »ç¿ëÀÚÃß°¡ mysql>grant file on *.* to soma@"%" identified by "ÆÐ½º¿öµå" ; Query OK, 0 rows affected (0.00 sec)
* mysql-4.x ¹öÀü¿¡¼´Â ¾Æ·¡¿Í °°ÀÌ Ãß°¡ÇÑ´Ù.
GRANT REPLICATION SLAVE ON *.* TO 'soma'@'%' IDENTIFIED BY 'ÆÐ½º¿öµå';
mysql>select * from user; Ãß°¡µÈ »ç¿ëÀÚ¸¦ È®ÀÎÇÒ¼öÀÖ´Ù.
2. ReplicationÀ» ±¸ÇöÇÒ Slave ¼¹ö¿¡ Master µ¥ÀÌŸ ¿Å±â±â Master ¿¡ÀÖ´Â µ¥ÀÌŸ ÆÄÀϸ¸ Slave ·Î ¿Å±â¸éµÈ´Ù. /usr/local/mysql/var/soma ¶ó´Â ÆÄÀÏ ¹Ø¿¡ÀÖ´Â ¸ðµç ÆÄÀÏÀ» ¾ÐÃàÀ»Çؼ Slave ¼¹öÀÇ ÇØ´ç µð·ºÅ丮·Î ¿Å°ÜÁÖ¸é ÀÚµ¿À¸·Î database & table ÀÌ »ý¼ºµÈ´Ù. ±×·¸°ÔÇϸé Slave ¼¹ö¿¡µµ soma ¶ó´Â µ¥ÀÌŸº£À̽º¿Í soma ¶ó´Â Å×À̺íÀÌ »ý¼º µÈ´Ù. À̰ÍÀ¸·Î µÎ Å×ÀÌºí°£ÀÇ µ¥ÀÌŸÀÇ µ¿±âÈ´Â ÀÌ·é°ÍÀÌ´Ù.
3. Master ¼¹ö¿¡ ¼³Á¤Çϱâ [root@angelsoma]vi /etc/my.cnf ÆÄÀÏÀ» ¸¸µç´Ù [mysqld] log-bin server-id=1 -> master ¼¹ö¿Í ¸ðµç salve ¼¹ö¸¦ ÅëÅоî À¯ÀÏÇÑ ID ¹øÈ£ À§ÀÇ ³»¿ëÀ» ¼³Á¤Çϰí ÀúÀåÇÏ°í ³ª¿Â´Ù.
4. Slave ¼¹ö¿¡ ¼³Á¤Çϱâ [root@slave]vi /etc/my.cnf ÆÄÀÏÀ» ¸¸µç´Ù. [mysqld] master-host=192.168.0.2 -> master ¼¹öÀÇ IP or Host ¸í master-user=soma -> À§¿¡¼ Ãß°¡ÇÑ »ç¿ëÀÚ master-password=abcdefg -> À§¿¡¼ ÁöÁ¤ÇÑ ÆÐ½º¿öµå master-port=3306 -> mysql ÀÌ »ç¿ëÇÏ´Â TCP/IP Æ÷Æ® server-id=2 -> slave ¼¹öµé°£ÀÇ °íÀ¯ÇÑ ID ¹øÈ£
log-slave-updates -> slave¿¡¼ master¸¦ µ¿±âÈÇÏ´Â ¿É¼Ç
5. Mysql µ¥¸ó Àç ½ÃÀÛÇϱâ - master & slave ¼¹ö master ¼¹öÀÇ µ¥¸óÀ» ±¸µ¿ÇÑ´Ù. mysql-3.23.44 ¹öÀü¿¡¼´Â mysql µ¥¸óÀ» mysql»ç¿ëÀÚ·Î ±¸µ¿ÇؾßÇÑ´Ù. ÀÌÀü ¹öÀü¿¡¼´Â root »ç¿ëÀÚ·Î µ¥¸óÀÌ ±¸µ¿µÇ¾ú´Ù. [root@angelsoma]/usr/local/mysql/bin/safe_mysqld --user=mysql & slave ¼¹öÀÇ µ¥¸ó ±¸µ¿Çϱâ [root@angelsoma]/usr/local/mysql/bin/safe_mysqld &
6. È®ÀÎÇϱâ SLAVE È®ÀÎÇϱâ mysql> show slave status; Master_Host : 192.168.0.2 Master_User : soma Master_port : 3306 Connect_retry : 60 Log_File : angelsoma-bin.001 Pos : 444 Slave_Running : Yes mysql> show processlist ; Id : 1 User : system user Host : none db : null Command : connect Time : 4637 State : Reading master update Info : null
MASTER È®ÀÎÇϱâ mysql> show master status; File : angelsoma-bin.001 Position : 444 Binlog_do_db : Binlog_ignore_db : File¿¡ Ãâ·ÂµÈ °ª°ú Postion ¿¡ Ãâ·ÂµÈ °ªÀº SLAVE ¿¡¼ Ãâ·ÂµÈ Á¤º¸¿Í µ¿ÀÏÇØ¾ßÇÑ´Ù. mysql> show processlist ; Id : 1 User : soma Host : 192.168.0.2 db : null Command : Binlog Dump Time : 5248 State : Slave connection : waiting for binlog update Info : null À§ÀÇ ³»¿ëµéÀÌ ÀÌ»ó¾øÀÌ Ãâ·ÂÀÌ µÈ´Ù¸é Á¤»óÀûÀ¸·Î ¼³Á¤À̵Ǿú´Ù´Â ¸»ÀÌ´Ù.
7. Å×½ºÆ®Çϱâ master DB ¿¡¼ °ª insert Çϱâ mysql>insert into soma (name,etc) values('soma','¿¬½ÀÁß');
slave DB ¿¡¼ È®ÀÎÇϱâ mysql>select * from soma; +-----+------+--------+ | num | name | etc | +-----+------+--------+ | 1 | soma | ¿¬½ÀÁß | +-----+------+--------+ 1 row in set (0.00 sec) master DB °ª update Çϱâ mysql>update soma set name='jeje' where num='1'; Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> select * from soma; +-----+------+--------+ | num | name | etc | +-----+------+--------+ | 1 | jeje | ¿¬½ÀÁß | +-----+------+--------+ 1 row in set (0.00 sec) slave DB ¿¡¼ È®ÀÎÇϱâ mysql> select * from soma; +-----+------+--------+ | num | name | etc | +-----+------+--------+ | 1 | jeje | ¿¬½ÀÁß | +-----+------+--------+ 1 row in set (0.00 sec)
8. SLAVE ¼¹ö¿¡ Replication ±â´É ÁßÁöÇϱâ & ½ÃÀÛÇϱâ mysql> slave stop; Query OK, 0 rows affected (0.00 sec) SLAVE ¿¡¼ Replication ¼ºñ½º¸¦ ÁßÁöÇÑÈÄ Master ¿¡¼´Â °è¼ÓÀûÀÎ update °¡ ¹ß»ýÇϰԵȴÙ. ÇÏÁö¸¸ °ÆÁ¤ÇÒ ÇÊ¿ä´Â¾ø´Ù. SLAVE ¿¡¼ ´Ù½Ã ¼ºñ½º¸¦ ½ÃÀÛÇØÁÖ¸é ·Î±×ÆÄÀÏ¿¡¼ ÇÊ¿äÇÑ Á¤º¸¸¦°¡Á®¿Í ´Ù½Ã ¾÷µ¥ÀÌÆ®¸¦ ½ÃÄÑÁֱ⶧¹®¿¡ Ç×»ó µ¿ÀÏÇÑ µ¥ÀÌŸ¸¦ À¯ÁöÇÒ¼öÀÖ´Ù. mysql>slave start; Query OK, 0 rows affected (0.00 sec)
9. ±âŸ
* MASTER º¯°æ Äõ¸®
CHANGE MASTER TO MASTER_HOST='hostname', MASTER_USER='soma', MASTER_PASSWORD='ÆÐ½º¿öµå', MASTER_PORT=Æ÷Æ®, MASTER_LOG_FILE='·Î±×ÆÄÀÏ', MASTER_LOG_POS=278, MASTER-CONNECT_RETRY=30;
* reset master;
* reset slave;
: reset slave´Â master.info¿Í relay-log.info¸¦ »èÁ¦ÇÏ´Â ¸í·É¾îÀÌ´Ù.
* Slave ¼¹ö¿¡ master.info ÆÄÀÏÀÌ Á¸ÀçÇϸé my.cnf³ª ¸í·É ¶óÀο¡¼ ¿É¼ÇÀ¸·Î
ÁöÁ¤ÇÏ´Â °Íº¸´Ù master.infoÀÇ ³»¿ëÀ» ¿ì¼±ÇÑ´Ù.
I D PW
PHPLEAD¸¦½ÃÀÛÆäÀÌÁö·Î
PHPLEADERÀº °³ÀÎÀÌ ¿î¿µÇÏ°í ¿©·¯ºÐÀÌ ¸¸µé¾î °¡´Â »çÀÌÆ® ÀÔ´Ï´Ù.
Phone: 010 2584 8213 Email: phpleader2020@gmail.com