| Mail :: Toaster :: MySQL. MAIL :: TOASTER :: MySQLÀº MySQLÀ» ¼³Ä¡ÇÏ´Â °Í ÀÌ»óÀÔ´Ï´Ù. |
Áö±Ý ´Ù¿î·Îµå |
Mail :: Toaster :: MySQL. ¼øÀ§ ¹× ¿ä¾à
- ƯÇã:
- Perl Artistic License
- °Ô½ÃÀÚ À̸§:
- Matt Simerson
- °Ô½ÃÀÚ À¥»çÀÌÆ®:
- http://search.cpan.org/~msimerson/
Mail :: Toaster :: MySQL. ű×
Mail :: Toaster :: MySQL. ¼³¸í
Mail :: Toaster :: MySQLÀº MySQLÀ» ¼³Ä¡ÇÏ´Â °Í ÀÌ»óÀÔ´Ï´Ù. ¸ÞÀÏ :: Å佺ÅÍ : MySQLÀº ÈξÀ ´õ ¸¹Àº ´ÜÁö MySQL.I ÀÚ½ÅÀÌ ¸¹Àº °ÍÀ» À§ÇØ MySQLÀ» »ç¿ë ãÀ» ¼³Ä¡ÇÏ´Â °Íº¸´ÙÀÔ´Ï´Ù. Áö¸®ÀûÀ¸·Î ºÐ»ê µÈ DNS ½Ã½ºÅÛ (MySQLÀÇ º¹Á¦), ¸ÞÀÏ ¼¹ö ¹× ´Ù¸¥ ¸ðµç Àç¹ÌÀÖ´Â ¹°°Ç ´ç½ÅÀ»À§ÇÑ RDBMS¸¦ »ç¿ëÇϽʽÿÀ. µû¶ó¼, ³ª´Â ±×µé¿¡ Áߺ¹ Äڵ带 ¸¹ÀÌ °¡Áö°í ½ºÅ©¸³Æ®ÀÇ ¼ºÀå ´õ¹Ì¸¦ °¡Áö°íÀÖ´Ù. µû¶ó¼,ÀÌ ÆÞ ¸ðµâ¿¡ ´ëÇÑ Çʿ伺ÀÌ Áõ°¡Çß´Ù. ÇöÀç¿¡ »ç¿ë :. mysql_replicate_manager V1.5 + uron.net »ç¿ëÀÚ _ * PL polls.pl nt_export_djb_update.pl toaster_setup.pl SUBROUTINESnew »ç¿ëÇÏ´Â ¸ÞÀÏ :: Å佺ÅÍ :: mysqlÀ»; ³» $ MySQLÀº = ¸ÞÀÏ :: Å佺ÅÍ :: Mysql-> »õ (); ÀÚµ¿ Ä¿¹Ô backupBack±îÁö ´ç½ÅÀÇ MySQLÀÇ µ¥ÀÌÅͺ£À̽º $ mysql-> ¹é¾÷ ($ÀÌ Á¡) ¹é¾÷ÀÇ ±âº» À§Ä¡´Â / var / ¹é¾÷ / mysqlÀ»ÇÕ´Ï´Ù. ´ç½ÅÀÌ ±× (°Í)µéÀ», ´Ù¸¥ °÷¿¡ ÀúÀåÇÏ·Á¸é ¼³Á¤ BACKUPDIR = / °æ·Î / (ÀÚÁÖ ¹¯´Â Áú¹®°ú °°ÀÌ) ¶Ç´Â line.You°¡ cronolog, GZIP°¡ ÇÊ¿äÇÕ´Ï´Ù ¸í·É¿¡ -d ÅëÇØ Àü´ÞÇÏ¿© .my.cnf¿¡ / ¹é¾÷ ¹× "Á¤»óÀûÀÎ"À§Ä¡¿¡ ¼³Ä¡ mysqldump¸¦. ¹é¾÷Àº °°Àº /var/backups/mysql/2003/09/11/mysql_full_dump.gz °°ÀÌ ³¯Â¥¸¦ ±âÁØÀ¸·Î µð·ºÅ丮¿¡ ÀúÀåµË´Ï´Ù. °æ·Î°¡ ¹é¾÷ ¼ÒÇÁÆ®¿þ¾î°¡ ¹é¾÷µÇµµ·Ï ±¸¼ºµÇ¾î ÀÖ´ÂÁö È®ÀÎÇÕ´Ï´Ù. Àμö°¡ ÇÊ¿äÇÑ : Á¡ -ÀÇ °ªÀÇ hashref .my.cnf FileConnect¿¡ ³» ($ DBH, $ DSN, $ DRH) = $ mysql-> ¿¬°á ($, $´Â $ µð¹ö±× °æ°í Á¡); $ µµÆ®ÀÇ hashrefÀÔ´Ï´Ù Å° / °ª ½ÖÀº µ¿ÀÏÇÑ Çü½ÄÀ¸·Î ´ç½ÅÀº¿¡¼ ãÀ» ~ / .my.cnf °ÍÀÔ´Ï´Ù. ´ç½ÅÀÌ ±×µéÀ» ¹Þ°íÀÖÀ»°Å¾ß ±â´ë ¾îµðÇÏÁö ¿ì¿¬È÷, ±×°Ç. $ Á×À» ½ÇÆÐ ¶Ç´Â ¿À·ù¿¡ ´ëÇÑ °æ°í ¿©ºÎ¸¦ °áÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù °æ°íÇÑ´Ù. , °æ°í¿¡ ¿¬°á> $ µð¹ö±×°¡ µµ¿òÀÌ µð¹ö±ë ¸Þ½ÃÁö´Â problems.db_varsThis¿¡°Ô ¼ºê¸¦ °¡Áö°íÇؾßÇÑ´Ù $ mysql-¿¡ ÀÇÇØ ³»ºÎÀûÀ¸·Î È£Ãâ ÀμâÇÕ´Ï´Ù. 0ÀÌ ¾Æ´Ñ °ªÀ¸·Î °æ°í $¸¦ ¼³Á¤ÇÏ°í ¸î °¡Áö ÇÕ¸®ÀûÀÎ ±âº»°ªÀ» ¼³Á¤ÇÏ´Â µ¥ Áַθ¦ ¾È »ç¿ë $ dot.flush_logs $ mysql-> flush_logs¿¡ ÃæºÐÇÑ ¿¬°á ¸Å°³ º¯¼ö¸¦ Àü´ÞÇÒ ($ DBH, $ µð¹ö±×)´Â ¼¹öÀÇ MySQLÀº "Ç÷¯½Ã LOGS"Äõ¸®¸¦ ½ÇÇàÇÕ´Ï´Ù. µ¥ÀÌÅͺ£À̽º ÇÚµé $ÀÇ SQLÀÔ´Ï´Ù DBH $°¡ queryinstallInstallsÀ̸ç, ÀÌ°ÍÀº ³ªÀÇ @r = $ mysql-> get_hashes ($ DBH, $ SQL) ÇؽÃÀÇ ¹è¿·Î MySQLÀÇ Äõ¸®¿¡¼ disk.get_hashesGets °á°ú¿¡ º¸·ùÁßÀÎ (¸Þ¸ð¸® ij½Ã ¾²±â)¸¦ ¹ü MySQLis_newer ³» $ ¹öÀü = $ mysql-> ¹öÀü ($ DBH); ³» $ »õ = $ mysql-> is_newer ( "4.1.0", $ ¹öÀü) ($ ÀÌ»ó) {Àμâ! "´ç½ÅÀº ¿ë°¨"°æ¿ì ³» $ Á¡ =;} ´ç½ÅÀÌ º¼ ¼ö ÀÖµíÀÌ, is_newer ¿¹´Â (½ÃÀÛ $ ÆÄÀÏ $ $ µð¹ö±×) Mysql.parse_dot_file $ mysql-> parse_dot_file ¹öÀü »çÀÌÀÇ ±¸¹® Â÷ÀÌ Äõ¸®¸¦ ½ÇÇàÇØ¾ß ÇÒ ¶§ ƯÈ÷ ¸Å¿ì À¯¿ë ÇÒ ¼ö ÀÖ½À´Ï´Ù $ mysql-> parse_dot_file ( "ÀÇ my.cnf.", "", 0); $ ÆÄÀÏÀ» ±¸¹® ºÐ¼® ÇÒ ¼öÀÖ´Â ÆÄÀÏÀÔ´Ï´Ù. $ ½ÃÀÛÀº ¿ì¸®°¡ ¼³Á¤À» ã°í ¾îµð¼ºÎÅÍ ½ÃÀÛÀÔ´Ï´Ù. ÀÌ .my.cnf MySQLÀ» ±¸¼º files.AÀÇ hashref¿¡ »ç¿ëµÇ´Â Çü½ÄÀº FreeBSD Æ÷Æ®¿¡¼ Å° °ª pairsphpmyadmin_installInstall phpMyAdminÀ» WIH ¹ÝȯµË´Ï´Ù ±â´ëÇÏ°íÀÖ´Ù. $ mysql-> phpmyadmin_install ($ÀÇ conf) $ confÀÇ ±¸¼º °ªÀÇ ÇؽÃÀÌ´Ù. $ DBH ÀÌ¹Ì $ mysql-¸¦ ÅëÇØ È¹µæ ÇÑ µ¥ÀÌÅͺ£À̽º ÇÚµé along.query ³» $ STH = $ mysql-> Äõ¸® ($ DBH, $ Äõ¸®, $ °æ°í)¸¦ Àü´ÞÇÏ´Â ¿É¼Ç °ªÀ» ±¸¼ºÇÏ´Â Å佺ÅÍ - watcher.confº¸±â Äõ¸®°¡ ½ÇÆÐ ÇÒ °æ¿ì> ¿¬°á. $ Äõ¸® execute.If $¿¡ SQL ¹®ÀÌ ¼³Á¤µÇ¾î °æ°í¸¦Çؼ, ¿ì¸®´Â Á×Áö ¾Ê½À´Ï´Ù. ´ç½ÅÀÌ Á×À» ¶Ç´Â ½ÇÆÐ $ÀÇ STH (°¡´É¼º ¿À·ù ¸Þ½ÃÁö)À» ¹ÝȯÇÒÁö ¿©ºÎ¸¦ ´ç½ÅÀÌ ÇÏÀ§¸¦ È£Ãâ ÇÒ ¶§ ´ç½ÅÀÌ °áÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù ÀÌÂÊÀ¸·Î. Ç×»ó °ü°è¾øÀÌ ¿µÇâÀ»¹Þ´Â ÇàÀÇ #ÀÇ true¸¦ µ¹·Á ¹®À» ½ÇÇàÇϱâ À§ÇØ ¼öÇà ¹«½¼ Çʿ並 ½ÇÇàÇÕ´Ï´Ù. ºñ ¼±ÅÃÀÇ °æ¿ì, ÇàÀÇ ¹Ýȯ #Àº ¿µÇâ : ¾øÀ½ Çà = 0E0¿¡ ´ëÇÑ ¼±ÅÃÀº ´Ü¼øÈ÷ Äõ¸®¸¦ ½ÃÀÛÇÕ´Ï´Ù. * query_confirm $ mysql-> query_confirm ($ DBH, $ Äõ¸®, $ µð¹ö±×) fetch_¿¡ µû¶ó, »ç¿ëÀÌ ´ëÈ ÇüÀ¸·Î È®ÀÎ ±×µéÀÌ reasonableCurrently ÀÖ½À´Ï´Ù ÀÖµµ·Ï °ªÀ» °ËÁõ Å×½ºÆ®¸¦ ÇÒ ¼öÀÖ´Â query.sanityA Àå¼Ò¸¦ ½ÇÇàÇϱâ Àü¿¡ »ç¿ëÀÚ È®ÀÎÀ» ¾òÀ¸·Á¸é ¿ì¸®´Â ¾ÏÈ£ ¸¸ ¹Ì¸¸ 32 ÀÚÀ̸ç, »ç¿ëÀÚ À̸§ ¹Ì¸¸ 16 ´õ ¸¹Àº Å×½ºÆ®°¡ $ÀÇ DRH ÇÚµéÀ» mysqlÀ» ¾Æ·¡·Î come.shutdown_mysqldShuts »ç¿ëÇÏ´Â °ÍÀÔ´Ï´Ù º¸ÀåÇϱâ À§ÇØ È®ÀÎ. ³» $ RC = $ mysql-> shutdown_mysqld ($ dbvs, $ DRH)ÀÇ $ dbvsÀ» ÇÔÀ¯ÇÏ´Â hashrefÀÖ´Ù : È£½ºÆ®, »ç¿ëÀÚ, passreturns ¿À·ù¿¡ ¼º°øÇϸé 200, 500 ERROR_CODE. ÂüÁ¶ error_desc¿¡ ´ëÇÑ details.tables_lock ³» $ STH = $ mysql-> tables_lock ($ DBH, $ µð¹ö±×); # ÀϺΠMySQLÀÇ ¹°°Ç $À» mysql-> tables_unlock ($ DBH, $ s ¹ø°´Â) ¸í·É¹® ÇÚµéÀ» ¹Þ¾Æ¼ ¸ðµç Å×ÀÌºí¿¡ ±Û·Î¹ú Àá±ÝÀ» ¼öÇàÇÕ´Ï´Ù. ¸í·É¹® ÇÚµéÀ» Ãëµæ ÇØ ±Û·Î¹ú ¶ôÀ» ÇØÁ¦ÇÕ´Ï´Ù, ´ç½ÅÀº ÇÒ ¶§ ¾ÆÁÖ ¼¹ö¸¦ ¹é¾÷ etc.tables_unlock $ mysql-> tables_unlock ($ DBH, $ s ¹ø°, $ µð¹ö±×)´Â, ¸ÞÀÌÅ©¾÷ó·³ µ¥ÀÌÅͺ£À̽º µð·ºÅ丮ÀÇ Å¸¸£º¼À» ÀÏÀ»ÇؾßÇմϱî À¯¿ë ¸ðµç Å×ÀÌºí¿¡. ´ç½ÅÀÌ »ç¿ë ÇÑ ÈÄ¿¡ ¾ÆÁÖ À¯¿ë $ mysql-> tables_lock, ³» $ ¹öÀü = $ mysql-> ¹öÀü ($ DBH) ´ç½ÅÀÇ lock.status ¹öÀüÀ» ¸±¸®½º·Î ÇàÀ§¿Í ¼Ò¿øÀ» ÀÌ·ç¾î, ¹Ýȯ MySQLÀÇ running.RequirementsÀÇ ¹öÀüÀ» ³ªÅ¸³»´Â ¹®ÀÚ¿À» ¡¤ ÆÞ ¡¤ DBI.pm ¡¤ DBD :: mysqlÀ» ¿ä±¸ »çÇ× : ¡¤ Perl. ¡¤ dbi.pm. ¡¤ DBD :: MySQL.
Mail :: Toaster :: MySQL. °ü·Ã ¼ÒÇÁÆ®¿þ¾î