´ë±Ô¸ð·Î ¿î¿µÁßÀÎ MySQL µ¥ÀÌÅͺ£À̽ºÀÇ ¹®Á¦´Â ¼¹ö¸¦ ÁߴܽÃŰÁö ¾Ê°í Àüü ¹é¾÷(clean backup)À» ÇÏ´Â °ÍÀÌ´Ù. ¹é¾÷Àº ½Ã½ºÅÛÀ» ´À¸®°Ô ¸¸µé¸ç, ¹é¾÷À» ¼öÇàÁßÀÎ Å×À̺í°ú °ü·ÃµÈ µ¥ÀÌÅͰ¡ º¯°æµÉ ¼ö Àֱ⠶§¹®¿¡ µ¥ÀÌÅÍ Àϰü¼ºÀ» ÇØÄ¥ ¼öµµ ÀÖ´Ù. ¼¹ö¸¦ ´Ù¿î½Ã۸é ÀϰüµÈ µ¥ÀÌÅ͸¦ ¾òÀ» ¼ö ÀÖÁö¸¸ ÀÌ´Â »ç¿ëÀÚ¿¡°Ô ¼ºñ½º Áß´ÜÀ» ÀǹÌÇÑ´Ù. ¹Ýµå½Ã ÇÊ¿äÇÏ°í ¾î¿ ¼ö ¾ø´Â °æ¿ì¶ó¸é ¼¹ö¸¦ ´Ù¿î½Ãų ¼ö ÀÖÁö¸¸, µ¥ÀÌÅ͸¦ ¹é¾÷Çϱâ À§ÇØ ¸ÅÀÏ ¼¹ö¸¦ Áß´ÜÇÏ´Â °ÍÀº ¹Þ¾ÆµéÀ̱⠾î·Á¿î ÀÏÀÌ´Ù. ³¯¸¶´Ù ¼¹ö¸¦ Áß´ÜÇÏÁö ¾Ê°í ¾ÈÁ¤ÀûÀÎ ¹é¾÷À» ¹Þ´Â ¹æ¹ýÀº MySQL¿¡ º¹Á¦(replication)¸¦ ¼³Á¤ÇÏ´Â °ÍÀÌ´Ù.¿ªÁÖ1: ¾÷¹«»ó DB Àüü ¹é¾÷¿¡ ÇØ´çÇÏ´Â °ÍÀÌ ¿ø¾î¿¡¼´Â clean backupÀÌ´Ù. µû¶ó¼ Ŭ¸° ¹é¾÷ ´ë½Å Àüü ¹é¾÷À¸·Î ¿Å°å´Ù.¿ªÁÖ2: MySQL º¹Á¦ ¼ºñ½º´Â MySQL 3.2 ºÎÅÍ Áö¿øÇÑ´Ù.º¹Á¦´Â MySQL ¼¹öÀÇ ½Ã½ºÅÛ ±¸¼ºÀ¸·Î ¼³Á¤ÇÒ ¼ö ÀÖÀ¸¸ç, ¸¶½ºÅÍ ¼¹ö´Â µ¥ÀÌÅ͸¦ ÀúÀåÇϰí, Ŭ¶óÀÌ¾ðÆ® ¿äûÀ» ó¸®Çϸç, ½½·¹ÀÌºê ¼¹ö´Â ¸¶½ºÅÍ ¼¹ö µ¥ÀÌÅÍÀÇ ¿ÏÀüÇÑ º¹»çº»À» °®°í ÀÖÀ¸¸ç, ¸¶½ºÅÍ ¼¹ö¿¡ º¯°æÀÌ ÀϾÀÚ¸¶ÀÚ ±×¿¡ ÇØ´çÇÏ´Â ¸ðµç SQL ¹®ÀåÀ» º¹Á¦ÇÑ´Ù. ·Îµå ¹ë·±½ÌÀ» À§ÇØ º¹Á¦¸¦ »ç¿ëÇÏ´Â °æ¿ìµµ ÀÖÁö¸¸, ¿©±â¼´Â µ¥ÀÌÅÍ ¹é¾÷À» À§ÇØ º¹Á¦¸¦ »ç¿ëÇÏ´Â °Í¿¡¸¸ °ü½ÉÀ» µÑ °ÍÀÌ´Ù. ½½·¹À̺ê·Î »ç¿ëÇÒ º°µµÀÇ ¼¹ö¸¦ ¼³Á¤Çϰí, ¸ÅÀÏ Àüü ¹é¾÷À» ¹Þ±â À§ÇØ º¹Á¦¸¦ Áß´ÜÇÒ ¼ö ÀÖ´Ù. Àüü ¹é¾÷ÀÌ ³¡³ ´ÙÀ½¿¡ º¹Á¦¸¦ Àç½ÃÀÛÇÏ¸é ½½·¹À̺꿡¼´Â ¸¶½ºÅÍ¿Í ¿¬°áµÇ¾î ÀÖÁö ¾ÊÀº ½Ã°£ µ¿¾È º¯°æµÈ ³»¿ëµéÀ» ¸¶½ºÅÍ¿¡ ÀÚµ¿À¸·Î ¿äûÇÑ´Ù. º¹Á¦´Â ¸Å¿ì ÈǸ¢ÇÑ ±â´ÉÀ̸ç MySQL¿¡ ÀÖ´Â ±â´ÉÀÌ´Ù. ¿©·¯ºÐÀÌ ÇÒ ÀÏÀº º¹Á¦¸¦ ¼³Á¤ÇÏ´Â °Í »ÓÀÌ´Ù.º¹Á¦ ¼öÇà °úÁ¤º¹Á¦¸¦ ¼³Á¤ÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇϱâ Àü¿¡ MySQLÀÌ º¹Á¦ ¼¹ö¸¦ ¾î¶»°Ô °ü¸®ÇÏ´ÂÁöºÎÅÍ °£´ÜÇÏ°Ô »ìÆìºÁ¾ß ÇÑ´Ù. MySQL º¹Á¦ ¼¹ö °ü¸®´Â MySQL ¹öÀü¿¡ µû¶ó ´Ù¸£Áö¸¸, ´ëºÎºÐÀÇ ½Ã½ºÅÛ¿¡¼´Â ÃֽйöÀüÀ» »ç¿ëÇϰí Àֱ⠶§¹®¿¡ ¿©±â¼´Â MySQL 4.0 ÀÌ»óÀÇ ¹öÀü¿¡ ´ëÇØ¼¸¸ ¼³¸íÇÒ °ÍÀÌ´Ù.º¹Á¦¸¦ »ç¿ëÁßÀÏ ¶§ ¸¶½ºÅÍ ¼¹ö¿¡¼ SQL ¹®ÀåÀÌ ½ÇÇàµÇ¸é MySQLÀº ¹ÙÀ̳ʸ® ·Î±×(bin.log)¿¡ À̸¦ ·Î±× ½Äº° ¹øÈ£¿Í °°ÀÌ ±â·ÏÇÑ´Ù. ±×·¯¸é ½½·¹ÀÌºê ¼¹ö´Â IO ½º·¹µå¸¦ »ç¿ëÇØ¼ Á¤±âÀûÀ¸·Î º¯°æ»çÇ×À» ÃßÀûÇϱâ À§ÇØ ¸¶½ºÅÍ ¼¹öÀÇ ¹ÙÀ̳ʸ® ·Î±× ÆÄÀÏÀ» ÀоîµéÀδÙ.º¯°æ»çÇ×ÀÌ ÀÖÀ¸¸é ¸±·¹ÀÌ ·Î±×(relay.log)¿¡ ¹®ÀåÀ» º¹»çÇϰí, ½½·¹ÀÌºê ¼¹ö¿¡ ¸¶½ºÅÍ ÆÄÀÏ(master.info)¿¡ »õ ½Äº° ¹øÈ£¸¦ ±â·ÏÇÑ´Ù. ½½·¹ÀÌºê ¼¹ö´Â °°Àº IO ½º·¹µå¸¦ »ç¿ëÇØ¼ ¸¶½ºÅÍ ¼¹öÀÇ ¹ÙÀ̳ʸ® ·Î±×¸¦ È®ÀÎÇÑ´Ù. ¸±·¹ÀÌ ·Î±×¿¡ º¯°æµÈ ³»¿ëÀÌ ÀÖÀ¸¸é ½½·¹ÀÌºê ¼¹ö´Â SQL ½º·¹µå¸¦ »ç¿ëÇØ¼ ¸±·¹ÀÌ ·Î±×¿¡ »õ SQL ¹®ÀåÀ» ±â·ÏÇÑ´Ù. ½½·¹ÀÌºê ¼¹ö´Â ¾ÈÀü ÀåÄ¡·Î SQL ½º·¹µå¸¦ »ç¿ëÇØ¼ ½½·¹ÀÌºê ¼¹öÀÇ µ¥ÀÌÅÍ¿Í ¸¶½ºÅÍ ¼¹öÀÇ µ¥ÀÌÅͰ¡ ÀÏÄ¡ÇÏ´ÂÁö È®ÀÎÇϱâ À§ÇØ ¸¶½ºÅÍ ¼¹ö¿¡ ÁúÀÇÇÑ´Ù. ºñ±³ °á°ú°¡ ÀÏÄ¡ÇÏÁö ¾Ê´Â´Ù¸é º¹Á¦´Â Áß´ÜµÇ°í ½½·¹ÀÌºê ¼¹öÀÇ ¿¡·¯ ·Î±×(error.log)¿¡ ¿¡·¯ ¸Þ½ÃÁö¸¦ ±â·ÏÇÑ´Ù. ºñ±³ ÁúÀÇ ¼öÇà °á°ú°¡ ÀÏÄ¡ÇÑ´Ù¸é ½½·¹ÀÌºê ¼¹öÀÇ ¸±·¹¸® ·Î±× ÆÄÀÏ(relay-log.info) ÆÄÀÏ¿¡ »õ ·Î±× ½Äº° ¹øÈ£¸¦ ±â·ÏÇϰí, ¸¶½ºÅÍ ¼¹öÀÇ ¸±·¹ÀÌ ·Î±× ÆÄÀÏÀÇ º¯°æÀ» ¸ð´ÏÅ͸µÇÑ´Ù.º¹Á¦ °úÁ¤Àº º¹ÀâÇØ º¸ÀÌÁö¸¸, ¸ðµç °úÁ¤Àº ºü¸£°Ô ¼öÇàµÇ¸ç ¸¶½ºÅÍ ¼¹ö ÀÚ¿øÀ» ¸¹ÀÌ ¼ÒºñÇÏÁö ¾ÊÀ¸¸é¼ ¾ÈÁ¤ÀûÀÎ º¹Á¦¸¦ º¸ÀåÇÑ´Ù. ¶ÇÇÑ, º¹Á¦ ¼ºñ½º´Â ¸¶½ºÅÍ ¼¹ö¿Í ½½·¹ÀÌºê ¼¹öÀÇ my.cnf ¼³Á¤ ÆÄÀÏ¿¡ ¿É¼ÇÀ» ¸î ÁÙ Ãß°¡ÇÏ´Â °ÍÀ¸·Î ¼³Á¤ÇÒ ¼ö ÀÖÀ¸¸ç, ¼³Á¤°úÁ¤µµ ½±´Ù. »õ·Î¿î ¼¹ö¸¦ ¼³Ä¡ÇÏ´Â °æ¿ì¿¡µµ ´Ü¼øÈ÷ ¸¶½ºÅÍ ¼¹öÀÇ µ¥ÀÌÅͺ£À̽º¸¦ ½½·¹ÀÌºê ¼¹ö¿¡ º¹»çÇϰí, ½½·¹ÀÌºê ¼¹ö¿¡¼ º¹Á¦¸¦ ½ÃÀÛÇÏ¸é µÈ´Ù.º¹Á¦ »ç¿ëÀÚº¹Á¦¸¦ ¼³Á¤Çϱâ À§Çؼ´Â ¸î °¡Áö °£´ÜÇÑ ÀýÂ÷¸¦ ¼öÇàÇÏ¸é µÈ´Ù. ù¹øÂ°´Â º¹Á¦ ¿ëµµ·Î¸¸ »ç¿ëÇÒ »ç¿ëÀÚ °èÁ¤À» ¼³Á¤ÇÏ´Â °ÍÀÌ´Ù. º¸¾È»ó ±âÁ¸ °èÁ¤Àº »ç¿ëÇÏÁö ¾Ê´Â °ÍÀÌ °¡Àå ÁÁ´Ù. »ç¿ëÀÚ °èÁ¤À» ¼³Á¤Çϱâ À§ÇØ ¸¶½ºÅÍ ¼¹ö¿¡ ´ÙÀ½ ¸í·ÉÀ» ¼öÇàÇÑ´Ù. ´ÙÀ½ ¸í·ÉÀº root³ª GRANT OPTION ±ÇÇÑÀ» °¡Áø »ç¿ëÀÚ °èÁ¤À¸·Î ·Î±×ÀÎÇØ¼ ¼öÇàÇØ¾ßÇÑ´Ù.GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'replicant'@'slave_host' IDENTIFIED BY 'my_pwd';SQL ¹®Àå¿¡¼ »ç¿ëÀÚ °èÁ¤ replicant´Â º¹Á¦¿¡ ÇÊ¿äÇÑ ±ÇÇѸ¸ ¼³Á¤µÇ¾ú´Ù. »ç¿ëÀÚ À̸§Àº ¾î¶² °ÍÀÌµç »ç¿ëÇÒ ¼ö ÀÖ´Ù. 'replicant' ´ë½Å¿¡ È£½ºÆ® À̸§À̳ª IP ÁÖ¼Ò¸¦ »ç¿ëÇÒ ¼öµµ ÀÖ´Ù. ½½·¹ÀÌºê ¼¹ö¿¡¼µµ À§¿Í °°Àº ÁúÀǸ¦ ¼öÇà½ÃŰ¸é µÈ´Ù. 'slave_host'´Â ¸¶½ºÅÍ ¼¹öÀÇ È£½ºÆ® À̸§À̳ª IP ÁÖ¼Ò·Î º¯°æÇÏ¸é µÈ´Ù. ÀÌ¿Í °°ÀÌ ¼³Á¤Çϸé, ¸¶½ºÅÍ ¼¹ö¿¡ Àå¾Ö°¡ ¹ß»ýÇØ¼ Àá½Ã »ç¿ëÇÒ ¼ö ¾ø´Â °æ¿ì »ç¿ëÀÚ¸¦ DNS ¼³Á¤À̳ª ´Ù¸¥ ¹æ¹ýÀ» »ç¿ëÇØ¼ ½½·¹ÀÌºê ¼¹ö¸¦ ÀÌ¿ëÇÏ°Ô ÇÒ ¼ö ÀÖ´Ù. ¸¶½ºÅÍ ¼¹ö°¡ º¹¿øµÈ ÀÌÈÄ¿¡´Â ½½·¹ÀÌºê ¼¹ö¿¡ º¯°æµÈ µ¥ÀÌÅ͸¦ ¸¶½ºÅÍ ¼¹ö¿¡ ¹Ý¿µÇϱâ À§ÇØ º¹Á¦¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. °ø±³·Ó°Ôµµ ÀÌÀü ¹öÀüÀÇ MySQL¿¡¼ 4.0 ¹öÀüÀ¸·Î ¾÷±×·¹À̵åÇÑ °æ¿ì¿¡ mysql µ¥ÀÌÅͺ£À̽º´Â ¾÷±×·¹À̵åµÇÁö ¾Ê±â ¶§¹®¿¡ À§ÀÇ GRANT ¹®ÀåÀÌ ½ÇÇàµÇÁö ¾Ê´Â´Ù. ÀÌÀü ¹öÀü¿¡´Â º¹Á¦¿Í °ü·ÃµÈ ±ÇÇÑÀÌ ¾ø±â ¶§¹®ÀÌ´Ù. ÀÌ ¹®Á¦¸¦ ÇØ°áÇϱâ À§Çؼ´Â MySQL ¹®¼¿¡¼ Grants Å×ÀÌºí ¾÷±×·¹À̵åÇϱ⸦ Âü°íÇϱ⠹ٶõ´Ù.¼¹ö ¼³Á¤Çϱ⸶½ºÅÍ¿Í ½½·¹À̺꿡 º¹Á¦ »ç¿ëÀÚ¸¦ ¸ðµÎ ¼³Á¤ÇßÀ¸¸é, À̹ø¿¡´Â µÎ ¼¹öÀÇ MySQL ¼³Á¤ ÆÄÀÏÀ» ¼öÁ¤ÇØ¾ß ÇÑ´Ù. ¿î¿µÁßÀÎ ¿î¿µÃ¼Á¦ÀÇ Á¾·ù¿¡ µû¶ó ¼³Á¤ ÆÄÀÏÀº my.cnf ¶Ç´Â my.iniÀÏ °ÍÀÌ´Ù. Unix °è¿ ¿î¿µÃ¼Á¦¿¡¼ ¼³Á¤ ÆÄÀÏÀº /etc µð·ºÅ͸®¿¡ ÀÖÀ¸¸ç, À©µµ¿ì ½Ã½ºÅÛ¿¡¼´Â c:\ ¶Ç´Â c:\windows¿¡ ÀÖ´Ù. ÅØ½ºÆ® ÆíÁý±â¸¦ »ç¿ëÇØ¼ ¼³Á¤ ÆÄÀÏ¿¡ [mysqld] ±×·ì ¾Æ·¡¿¡ ´ÙÀ½À» Ãß°¡ÇÑ´Ù.server-id = 1log-bin = /var/log/mysql/bin.log¼¹ö ½Äº° ¹øÈ£´Â ¸¶½ºÅÍ ¼¹ö¸¦ ½Äº°Çϱâ À§ÇÑ ÀÓÀÇÀÇ ¼ýÀÚ´Ù. ´ëºÎºÐÀÇ °æ¿ì¿¡ ¾î¶² ¼ýÀÚµç »ç¿ëÇÒ ¼ö ÀÖ´Ù. ½½·¹ÀÌºê ¼¹ö¿¡ ´Ù¸¥ ½Äº° ¹øÈ£¸¸ ºÎ¿©ÇÏ¸é µÈ´Ù. µÎ¹øÂ° ÁÙÀº MySQL¿¡¼ ¹ÙÀ̳ʸ® ·Î±×¸¦ ¼öÇàÇÒ °æ·Î¿Í ÆÄÀϸíÀ» ÁöÁ¤ÇÏ´Â °ÍÀÌ´Ù. ½ÇÁ¦·Î »ç¿ëÇÒ °æ·Î¿Í ÆÄÀÏ À̸§Àº ¿øÇÏ´Â ´ë·Î ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ¼³Á¤ ÆÄÀÏÀÇ µð·ºÅ͸®°í ½ÇÁ¦·Î ÀÖ´ÂÁö È®ÀÎÇϰí mysql »ç¿ëÀÚ°¡ ¼ÒÀ¯ÀÚÀ̰ųª ¶Ç´Â µð·ºÅ͸®¿¡ ¾²±â ±ÇÇÑÀÌ Àֱ⸸ ÇÏ¸é µÈ´Ù. ¶ÇÇÑ, ¿©±â¼´Â ÆÄÀÏ À̸§ÀÇ Á¢¹Ì¾î·Î ".log"¸¦ »ç¿ëÇßÁö¸¸ ¼¹ö°¡ Àç½ÃÀÛÇϰųª ·Î±× Á¤º¸¸¦ ´Ù½Ã ½ÃÀÛÇÒ ¶§ ".000001"°ú °°Àº ÀϷùøÈ£·Î ´ëüµÈ´Ù.½½·¹ÀÌºê ¼¹öÀÇ ¼³Á¤ ÆÄÀÏ¿¡µµ ´ÙÀ½À» Ãß°¡ÇØ¾ß ÇÑ´Ù. ¸¶½ºÅÍ ¼¹ö ¿¬°áÀ» À§ÇÑ Á¤º¸¿Í ·Î±× ÆÄÀÏ ¿É¼ÇÀ» Ãß°¡ÇÑ´Ù.server-id = 2master-host = mastersite.commaster-port = 3306master-user = replicantmaster-password = my_pwdlog-bin = /var/log/mysql/bin.loglog-bin-index = /var/log/mysql/log-bin.indexlog-error = /var/log/mysql/error.logrelay-log = /var/log/mysql/relay.logrelay-log-info-file = /var/log/mysql/relay-log.inforelay-log-index = /var/log/mysql/relay-log.index²Ï ¸¹Àº ³»¿ëÀ» Ãß°¡ÇÏ´Â °Í °°Áö¸¸ ½ÇÁ¦·Î µé¿©´Ùº¸¸é ¾î·ÆÁö ¾Ê°Ô ÀÌÇØÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ù¹øÂ° ÁÙÀº ½½·¹ÀÌºê ¼¹öÀÇ ½Äº° ¹øÈ£À̸ç, ½½·¹ÀÌºê ¼¹ö¸¦ ¿©·¯ ´ë ¼³Á¤ÇÒ °æ¿ì¿¡´Â ´Ù¸¥ ¹øÈ£¸¦ ºÎ¿©ÇÏ¸é µÈ´Ù. ±×·¯³ª ´Ü¼øÈ÷ µ¥ÀÌÅ͸¦ ¹é¾÷ÇÏ´Â °ÍÀ» ¿øÇÏ´Â °æ¿ì¿¡´Â ½½·¹ÀÌºê ¼¹ö¸¦ ÇÑ ´ëÀÌ»ó ¼³Á¤ÇÒ ÇÊ¿ä´Â ¾øÀ» °ÍÀÌ´Ù. ±× ´ÙÀ½ ¼½¼ÇÀº ¸¶½ºÅÍ ¼¹öÀÇ È£½ºÆ® À̸§, IP ÁÖ¼Ò¿Í °°Àº ¸¶½ºÅÍ ¼¹ö Á¤º¸¿¡ ´ëÇÑ °ÍÀÌ´Ù. ¸¶½ºÅÍ Æ÷Æ®´Â MySQL ±âº» ¼³Á¤ÀÎ 3306 Æ÷Æ®¸¦ »ç¿ëÇÏÁö¸¸ ¼öÇ༺´ÉÀ̳ª º¸¾È»óÀÇ ÀÌÀ¯·Î ´Ù¸¥ Æ÷Æ® ¹øÈ£¸¦ »ç¿ëÇÒ ¼öµµ ÀÖ´Ù. ±× ´ÙÀ½Àº ¸¶½ºÅÍ ¼¹ö¿¡ ·Î±×ÀÎÇϱâ À§ÇÑ »ç¿ëÀÚ À̸§°ú ºñ¹Ð¹øÈ£´Ù.´ÙÀ½ µÎ ¼½¼ÇÀº ·Î±×¸¦ ¼³Á¤Çϱâ À§ÇÑ °ÍÀÌ´Ù. óÀ½ ¼½¼ÇÀº ¸¶½ºÅÍ ¼¹ö¿¡¼ Çß´ø °Íó·³ ½½·¹ÀÌºê ¼¹ö¿¡¼ ¹ÙÀ̳ʸ® ·Î±×¸¦ ±â·ÏÇϱâ À§ÇÑ °ÍÀÌ´Ù. ÀÌ ¼³Á¤Àº ¾Õ¿¡¼ ¾ê±âÇÑ °Íó·³ ÇÊ¿ä½Ã ¸¶½ºÅÍ ¼¹ö¿Í ½½·¹ÀÌºê ¼¹ö°£¿¡ ¿ªÇÒÀ» ¼·Î ¹Ù²Ü ¼ö ÀÖ°Ô Çϱâ À§ÇÑ °ÍÀÌ´Ù. ¹ÙÀ̳ʸ® ·Î±× À妽º ÆÄÀÏ(log-bin.index)´Â ÇöÀç »ç¿ëÇÏ´Â ¹ÙÀ̳ʸ® ·Î±× ÆÄÀÏ À̸§À» ±â·ÏÇϱâ À§ÇÑ °ÍÀÌ´Ù. ¼¹ö°¡ Àç½ÃÀ۵ǰųª ·Î±×µéÀ» Á¤¸®ÇÑ °æ¿ì¿¡ ÇöÀç ·Î±× ÆÄÀÏÀÌ º¯°æµÇ¸ç, º¯°æµÈ ·Î±× ÆÄÀÏ À̸§ÀÌ log-bin.index ÆÄÀÏ¿¡ ±â·ÏµÈ´Ù. log-error ¿É¼ÇÀº ¿¡·¯ ·Î±×¸¦ ±â·ÏÇÑ´Ù. º¹Á¦¿Í °ü·ÃµÈ ¹®Á¦°¡ ¸ðµÎ ±â·ÏµÇ±â ¶§¹®¿¡ ¹Ýµå½Ã ÀÌ ¼³Á¤À» ÇØ¾ßÇÑ´Ù. ¸¶Áö¸· ¼½¼ÇÀº ¸±·¹ÀÌ ·Î±×¿Í °ü·ÃµÈ ÆÄÀϵéÀ» ¼³Á¤ÇÑ´Ù. ¸±·¹ÀÌ ·Î±×´Â ¼º´ÉÀ» À§ÇØ ¸¶½ºÅÍ ¼¹ö ¹ÙÀ̳ʸ® ·Î±×ÀÇ °¢ Ç׸ñÀ» º¹»çÇÑ´Ù. relay-log-info-file ¿É¼ÇÀº ¸¶½ºÅÍ ¼¹öÀÇ ¹ÙÀ̳ʸ® ·Î±×¿¡ ´ëÇÑ ½½·¹ÀÌºê ¼¹öÀÇ ·Î±× ÆÄÀÏ À§Ä¡¸¦ ¼³Á¤ÇÑ´Ù. ¸±·¹ÀÌ ·Î±× À妽º ÆÄÀÏÀº º¹Á¦¸¦ À§ÇØ ÇöÀç »ç¿ëÁßÀÎ ¸±·¹ÀÌ ·Î±× ÆÄÀÏ À̸§À» °ü¸®ÇÑ´Ù.µ¥ÀÌÅͺ£À̽º º¹»ç¿Í º¹Á¦ ½ÃÀÛÇϱâ»õ ¸¶½ºÅÍ ¼¹ö¿¡ µ¥ÀÌÅͰ¡ ¾ø´Ù¸é ½½·¹ÀÌºê ¼¹ö¸¦ Àç½ÃÀÛÇÏ¸é µÈ´Ù. ±×·¯³ª, µ¥ÀÌÅͰ¡ ÀÖ´Â ¿î¿µÁßÀÎ ¼¹ö¿¡ º¹Á¦¸¦ ¼³Á¤Çß´Ù¸é º¹Á¦¸¦ À§ÇÑ µ¥ÀÌÅͺ£À̽º Ãʱ⠹é¾÷À» ¼öÇàÇÏ´Â °Í°ú ÀÌ ¹é¾÷À» ½½·¹ÀÌºê ¼¹ö¿¡ º¹»çÇØ¾ß ÇÑ´Ù. µ¥ÀÌÅͺ£À̽º¸¦ ¹é¾÷ÇÏ´Â ¹æ¹ýÀº ´Ù¾çÇÏ´Ù. ¿¹¸¦µé¾î, mysqldump¸¦ »ç¿ëÇØ¼ ¿î¿µÁßÀÎ ¼¹ö¸¦ ¹é¾÷ÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª, ¿©±â¿¡´Â ¿î¿µÁßÀÎ ¼¹öÀÇ µ¥ÀÌÅÍ Àϰü¼º ¹®Á¦°¡ ³²´Â´Ù. º¹Á¦¸¦ ¼³Á¤ÇÑ ÈÄ¿¡´Â ¹é¾÷À» ¹Þ±â À§ÇØ ¼¹ö¸¦ ÁߴܽÃŰÁö ¾Ê¾Æµµ µÈ´Ù´Â »ç½ÇÀ» »ý°¢Çغ¸ÀÚ. Áï, Àϰü¼ºÀ» À¯ÁöÇÏ¸é¼ Àüü ¹é¾÷À» ¹Þ±â À§ÇØ »ç¿ëÀÚ°¡ ¿¬°áÇÏÁö ¸øÇÏ°Ô ÇÏ´Â °Íµµ »ý°¢ÇØ º¼ ¼ö ÀÖ´Ù. root¸¸ Á¢±ÙÇÒ ¼ö ÀÖ´Â ¸¶½ºÅÍ ¼¹ö¸¦ ¸¸µé±â À§ÇØ max_connections º¯¼ö¸¦ ´ÙÀ½°ú °°ÀÌ ÃʱâÈÇÒ ¼ö ÀÖ´Ù.SHOW VARIABLES LIKE 'max_connections';+-----------------+-------+| Variable_name | Value |+-----------------+-------+| max_connections | 100 |+-----------------+-------+SET GLOBAL max_connections = 0;ù¹øÂ° SQL ¹®ÀåÀº ÇÊ¿ä¾øÁö¸¸, ¹é¾÷ÀÌ ¿Ï·áµÈ ÈÄ¿¡ max_connections º¯¼ö °ªÀ» ¿ø·¡´ë·Î º¹¿øÇϱâ À§ÇØ Ãʱ⠰ªÀ» ¾Ë ÇÊ¿ä´Â ÀÖÀ» °ÍÀÌ´Ù. max_connections °ªÀ» 0À¸·Î ÇÏ´Â °ÍÀº ¾î¶² ¿¬°áµµ Çã¿ëÇÏÁö ¾ÊÁö¸¸, ½ÇÁ¦·Î 1°³ÀÇ ¿¬°áÀº root »ç¿ëÀÚ¸¦ À§ÇØ ³²°ÜÁ® ÀÖ´Ù. ¹°·Ð, À̰ÍÀº »õ·Î¿î ¿¬°á¸¸À» ¹Þ¾ÆµéÀÌÁö ¾Ê´Â´Ù. µû¶ó¼ ÇöÀç ½ÇÇàÁßÀÎ ¿¬°áÀ» º¸±â À§Çؼ´Â SHOW PROCESSLIST;¸¦ ÀÔ·ÂÇÑ´Ù. ¼öÇàÁßÀÎ ÇÁ·Î¼¼½º¸¦ Á¾·áÇϱâ À§ÇØ KILL ¹®ÀåÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù.¼¹ö¿¡ µ¶Á¡ÀûÀ¸·Î ¾×¼¼½ºÇÒ ¼ö ÀÖÀ¸¸é mysqldump´Â ¸Å¿ì ºü¸£°Ô ¼öÇàµÈ´Ù. ¸¶½ºÅÍ ¼¹öÀÇ ¸í·ÉÁÙ¿¡¼ ´ÙÀ½ ¸í·ÉÀ» ÀÔ·ÂÇÑ´Ù.mysqldump --user=root --password=my_pwd \ --extended-insert --all-databases \ --master-data > /tmp/backup.sql À§ ¹®ÀåÀº ¸ðµç µ¥ÀÌÅͺ£À̽º¿Í Å×À̺íÀ» »ý¼ºÇϰí, µ¥ÀÌÅ͸¦ »ý¼ºÇÏ´Â SQL ¹®ÀåÀ¸·Î ±¸¼ºµÈ ÅØ½ºÆ® ÆÄÀÏÀ» »ý¼ºÇÑ´Ù. --extended-insert ¿É¼ÇÀº Çѹø¿¡ ¿©·¯ ÁÙÀ» ³ÖÀ» ¼ö ÀÖ´Â INSERT ¹®ÀåÀ» ¸¸µé¾î Áֱ⠶§¹®¿¡ °á°úÀûÀ¸·Î º¸´Ù ºü¸£°Ô ¹é¾÷À» ¼öÇàÇÒ ¼ö ÀÖÀ¸¸ç, ÃÖ¼ÒÇÑÀÇ ´Ù¿î ŸÀÓÀ» °®´Âµ¥ µµ¿òÀÌ µÈ´Ù. --master-data ¿É¼ÇÀº ´ýÇÁÇÏ´Â µ¿¾È µ¥ÀÌÅͰ¡ º¯°æµÇÁö ¸øÇÏ°Ô ¸ðµç Å×À̺íÀ» Àá±×Áö¸¸, »ç¿ëÀÚ°¡ Å×À̺íÀ» ÀоîµéÀÌ´Â °ÍÀº Çã¿ëÇÑ´Ù. µ¶Á¡ÀûÀÎ ¾×¼¼½º ȯ°æÀÎ °æ¿ì ÀÌ ±â´ÉÀº ÇÊ¿äÇÏÁö ¾Ê´Ù. ±×·¯³ª, ÀÌ ¿É¼ÇÀº ´ýÇÁ ÆÄÀÏÀÇ ¸¶Áö¸·¿¡ ´ÙÀ½°ú °°Àº ³»¿ëÀ» Ãß°¡ÇØÁØ´Ù.---- Position to start replication from--CHANGE MASTER TO MASTER_LOG_FILE='bin.000846' ;CHANGE MASTER TO MASTER_LOG_POS=427 ;½½·¹ÀÌºê ¼¹ö¿¡¼ ´ýÇÁ ÆÄÀÏÀÌ ½ÇÇàµÉ ¶§, À§ ³»¿ëÀº Å×À̺íÀÌ Àá°Ü ÀÖ´Â µ¿¾È ¸¶½ºÅÍ ¼¹öÀÇ ¹ÙÀ̳ʸ® ·Î±× ÆÄÀÏ À̸§°ú ¹é¾÷ ½ÃÁ¡¿¡¼ÀÇ ·Î±× À§Ä¡¸¦ ±â·ÏÇÑ´Ù. º¹Á¦°¡ ½ÃÀÛµÉ ¶§ ÀÌ ·Î±× ÆÄÀÏ¿¡ ¾×¼¼½ºÇÏ°Ô µÇ°í, ÇØ´ç À§Ä¡ºÎÅÍ ½ÃÀÛÇØ¼ ±â·ÏµÈ SQL ¹®ÀåÀ» ¼öÇàÇÑ´Ù. Áï, ½½·¹ÀÌºê ¼¹ö°¡ ¼³Á¤µÇ´Â µ¿¾È º¯°æµÈ µ¥ÀÌÅͰ¡ ´©¶ôµÇÁö ¾Ê°Ô ÇØÁØ´Ù. ½½·¹ÀÌºê ¼¹ö¿¡¼ µ¥ÀÌÅͺ£½ÃÀ¸¿Í µ¥ÀÌÅ͸¦ ¼³Á¤Çϱâ À§ÇØ ´ýÇÁ ÆÄÀÏÀ» ½ÇÇàÇϱâ À§ÇØ ´ýÇÁ ÆÄÀÏÀ» ½½·¹ÀÌºê ¼¹ö¿¡ º¹»çÇÑ´Ù. MySQLÀÌ ½ÇÇàÁßÀÎÁö È®ÀÎÇÏ°í ½½·¹ÀÌºê ¼¹ö¿¡¼ ´ÙÀ½°ú °°ÀÌ ÀÔ·ÂÇÑ´Ù.mysql --user=root --password=my_pwd < /tmp/backup.sqlÀ§ ¸í·ÉÀº ´ýÇÁ ÆÄÀÏ¿¡ ÀÖ´Â CREATE, INSERT ¹®À» Æ÷ÇÔÇÑ ¸ðµç SQL ¹®ÀåÀ» ½ÇÇàÇÑ´Ù. ¹é¾÷µÈ µ¥ÀÌÅͺ£À̽º°¡ ½½·¹ÀÌºê ¼¹ö¿¡ ¸ðµÎ ¿Ã¶ó¿Â ´ÙÀ½¿¡´Â ½½·¹À̺꿡 root·Î ·Î±×ÀÎÇØ¼ ´ÙÀ½ SQL ¹®ÀåÀ» ½ÇÇàÇÑ´Ù.START SLAVE;ÀÌ ¹®ÀåÀ» ½ÇÇàÇϸé, ½½·¹À̺ê´Â ¸¶½ºÅÍ¿¡ ¿¬°áÇϰí, ¹é¾÷ ÀÌÈÄ·Î ´©¶ôµÈ º¯°æ»çÇ×À» °¡Á®¿Â´Ù. ÀÌ ½ÃÁ¡ºÎÅÍ ¸¶½ºÅÍ ¼¹öÀÇ ¹ÙÀ̳ʸ® ·Î±× ÆÄÀÏÀ» Áö¼ÓÀûÀ¸·Î °Ë»çÇÏ¸é¼ Ç×»ó ÃÖ½ÅÀÇ »óŸ¦ À¯ÁöÇÑ´Ù.º¹Á¦¸¦ ÀÌ¿ëÇÑ ¹é¾÷º¹Á¦°¡ ½ÇÇàÁßÀÏ ¶§, µ¥ÀÌÅÍ ¹é¾÷À» ÇÏ´Â °ÍÀº ½¬¿î ÀÛ¾÷ÀÌ´Ù. ¸ÕÀú, ½½·¹ÀÌºê ¼¹ö¿¡ root ¶Ç´Â SUPER ±ÇÇÑÀÌ ÀÖ´Â »ç¿ëÀÚ·Î ·Î±×ÀÎÇÏ¿© ´ÙÀ½ SQL ¹®À» ÀÔ·ÂÇØ¼ ½½·¹À̹ö ¼¹öÀÇ º¹Á¦¸¦ Àá½Ã ÁߴܽÃŲ´Ù.STOP SLAVE;½½·¹ÀÌºê ¼¹ö´Â ¸¶½ºÅÍ ¼¹öÀÇ ¹ÙÀ̳ʸ® ·Î±×¿¡ ³²°ÜÁø À§Ä¡¸¦ ¾Ë°í ÀÖ´Ù. µû¶ó¼, ½½·¹ÀÌºê ¼¹ö¿¡¼ º¹Á¦µÈ µ¥ÀÌÅͺ£À̽º¸¦ ¹é¾÷ÇÏ¸é µÈ´Ù. ¹é¾÷ À¯Æ¿¸®Æ¼ µîÀ» »ç¿ëÇÏ¿© ¹é¾÷À» Çϰí, ¹é¾÷ÀÌ ¸ðµÎ ¿Ï·áµÇ¸é ´ÙÀ½ ¸í·ÉÀ» ½ÇÇàÇØ¼ º¹Á¦¸¦ Àç½ÃÀÛÇÏ¸é µÈ´Ù.START SLAVE;À§ ¹®ÀåÀ» ÀÔ·ÂÇϸé, ½½·¹ÀÌºê ¼¹ö´Â Áß´ÜµÈ ½ÃÁ¡ºÎÅÍÀÇ SQL ¹®ÀåÀ» ½ÇÇàÇϰí, ´Ù½Ã ÃÖ½ÅÀÇ »óŸ¦ À¯ÁöÇÏ°Ô µÈ´Ù.¹é¾÷ ÀÚµ¿ÈÇϱ⺹Á¦¿Í ¹é¾÷ÀÌ ¿Ã¹Ù¸£°Ô µ¿ÀÛÇÑ´Ù¸é ½½·¹ÀÌºê ¼¹ö¿¡¼ º¹Á¦¸¦ Áß´ÜÇϰí, µ¥ÀÌÅ͸¦ ¹é¾÷¹Þ°í, ´Ù½Ã ½½·¹À̺긦 ½ÃÀÛÇÏ´Â °£´ÜÇÑ ½© ½ºÅ©¸³Æ®¸¦ ÀÛ¼ºÇÒ ¼ö ÀÖ´Ù. #!/bin/shdate = `date +%Y%m%d`mysqladmin --user=root --password=my_pwd stop-slavemysqldump --user=root --password=my_pwd --lock-all-tables \ --all-databases > /backups/mysql/backup-${date}.sqlmysqladmin --user=root --password=my_pwd start-slaveÀÌ ¿¹Á¦¿¡¼´Â ½½·¹À̺꿡¼ º¹Á¦¸¦ Áß´ÜÇÏ°í ½ÃÀÛÇϱâ À§ÇØ mysqladminÀ» »ç¿ëÇß´Ù. ù¹øÂ° ÁÙ¿¡¼ ½Ã½ºÅÛ ÇÔ¼ö date¿Í ÀûÀýÇÑ Çü½Ä(¿¹, 20050615)À» »ç¿ëÇÑ µ¥ÀÌÅ͸¦ »ç¿ëÇØ¼ ½ºÅ©¸³Æ®¿¡¼ mysqladmin¿¡¼ ³¯¸¶´Ù ´ýÇÁ ÆÄÀÏÀÇ À̸§À» º¯°æÇÒ ¼ö ÀÖ°Ô Çß´Ù. ¹°·Ð, ´ýÆÄ ÆÄÀÏÀÇ °æ·Î¿Í À̸§À» ¿øÇÏ´Â ´ë·Î ¼³Á¤ÇÒ ¼ö ÀÖ´Ù. date ÇÔ¼ö¿Í ¼½ÄÁöÁ¤ ÄÚµå´Â (')¾Æ ¾Æ´Ï¶ó (`)À» »ç¿ëÇÑ °Í¿¡ ÁÖÀÇÇØ¾ßÇÑ´Ù.À̰ÍÀº °£´ÜÇÑ ½ºÅ©¸³Æ®À̰í, ¿©·¯ºÐÀº º¸´Ù Á¤±³ÇÑ °ÍÀ» ÀÛ¼ºÇϰųª ¿À·ù Á¡°ËÀ» ÇÒ ¼ö ÀÖ´Â °ÍÀ» ÀÛ¼ºÇÒ ¼öµµ ÀÖ´Ù. °ø°£À» Àý¾àÇϱâ À§ÇØ ´ýÇÁ ÆÄÀÏÀ» ¾ÐÃàÇϰí, ¾ÐÃàÇÑ ÆÄÀÏÀ» Å×ÀÌÇÁ³ª CD¿Í °°Àº ¸Åü¿¡ ÀúÀåÇÒ ¼öµµ ÀÖ´Ù. ½ºÅ©¸³Æ®¸¦ ¼³Á¤ÇßÀ¸¸é Àß µ¿ÀÛÇÏ´ÂÁö Å×½ºÆ®Çϱ⠹ٶõ´Ù. ½ºÅ©¸³Æ®°¡ Àß µ¿ÀÛÇÑ´Ù¸é crontabÀ̳ª ¼¹ö¿¡¼ »ç¿ëÇÏ´Â ½ºÄÉÁÙ¸µ À¯Æ¿¸®Æ¼¸¦ »ç¿ëÇØ¼ ½ºÅ©¸³Æ®¸¦ Ãß°¡ÇÏ¸é µÈ´Ù.°á·Ðº¹Á¦´Â MySQL¿¡¼ À¯¿ëÇÑ °ü¸® ±â´ÉÀÌ´Ù. º¹Á¦´Â µ¥ÀÌÅͺ£À̽ºÀÇ ÁÖ±âÀûÀÎ ¹é¾÷À» º¸ÀåÇÏ´Â ÈǸ¢ÇÑ ¹æ¹ýÀÌ´Ù. º¹Á¦¿¡ ´ëÇØ ¿©±â¼ ¼³¸íÇÑ °Íº¸´Ù ´õ ¸¹Àº ¿É¼Ç°ú SQL ¹®ÀåÀÌ ÀÖÀ¸¸ç, ÀÌ¿¡ ´ëÇØ¼´Â ³»°¡ ¾´ MySQL in a Nutshell¿¡¼ ´Ù·ç¾ú´Ù. ¿î¿µÁßÀÎ ´ë±Ô¸ð ½Ã½ºÅÛ¿¡¼´Â º¸´Ù °·ÂÇÑ µ¥ÀÌÅÍ º¸È£¸¦ À§ÇØ ½½·¹ÀÌºê ¼¹ö¸¦ ÇÑ ´ë ÀÌ»ó ¼³Á¤ÇÒ ¼öµµ ÀÖ´Ù. ´ÙÁß ½½·¹ÀÌºê ¼¹ö ±¸¼ºÀº ´ÜÀÏ ½½·¹ÀÌºê ¼¹ö ±¸¼º°ú ¸¶Âù°¡Áö·Î ¼³Á¤°ú °³³äÀº µ¿ÀÏÇÏ´Ù. ±Ø´ÜÀûÀ¸·Î ¸¹Àº Æ®·£Àè¼ÇÀÌ ¹ß»ýÇÏ´Â µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇØ¼´Â Emic°ú °°Àº ¼ÒÇÁÆ®¿þ¾î¸¦ °í·ÁÇØº¼ ¼ö ÀÖ´Ù. EmicÀÇ ¼ÒÇÁÆ®¿þ¾î´Â ºñ½ÎÁö¸¸, ¹é¾÷°ú ·Îµå ¹ë·±½ÌÀ» À§ÇÑ ½½·¹ÀÌºê ¼¹ö °ü¸®¸¦ À§ÇÑ ÀÛ¾÷À» ÈǸ¢ÇÏ°Ô ¼öÇàÇÑ´Ù.
GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'replicant'@'slave_host' IDENTIFIED BY 'my_pwd';
server-id = 1log-bin = /var/log/mysql/bin.log
server-id = 2master-host = mastersite.commaster-port = 3306master-user = replicantmaster-password = my_pwdlog-bin = /var/log/mysql/bin.loglog-bin-index = /var/log/mysql/log-bin.indexlog-error = /var/log/mysql/error.logrelay-log = /var/log/mysql/relay.logrelay-log-info-file = /var/log/mysql/relay-log.inforelay-log-index = /var/log/mysql/relay-log.index
SHOW VARIABLES LIKE 'max_connections';+-----------------+-------+| Variable_name | Value |+-----------------+-------+| max_connections | 100 |+-----------------+-------+SET GLOBAL max_connections = 0;
mysqldump --user=root --password=my_pwd \ --extended-insert --all-databases \ --master-data > /tmp/backup.sql
---- Position to start replication from--CHANGE MASTER TO MASTER_LOG_FILE='bin.000846' ;CHANGE MASTER TO MASTER_LOG_POS=427 ;
mysql --user=root --password=my_pwd < /tmp/backup.sql
START SLAVE;
STOP SLAVE;
#!/bin/shdate = `date +%Y%m%d`mysqladmin --user=root --password=my_pwd stop-slavemysqldump --user=root --password=my_pwd --lock-all-tables \ --all-databases > /backups/mysql/backup-${date}.sqlmysqladmin --user=root --password=my_pwd start-slave
I D PW
PHPLEAD¸¦½ÃÀÛÆäÀÌÁö·Î
PHPLEADERÀº °³ÀÎÀÌ ¿î¿µÇÏ°í ¿©·¯ºÐÀÌ ¸¸µé¾î °¡´Â »çÀÌÆ® ÀÔ´Ï´Ù.
Phone: 010 2584 8213 Email: phpleader2020@gmail.com