ÅúÁ¿Ìø¹ýmysql slave´íÎóС½Å±¾
[perl] ÅúÁ¿Ìø¹ýmysql slave´íÎóС½Å±¾
2009Äê02ÔÂ20ÈÕ 16:24
·¢ÏÖmysql slave·þÎñÆ÷¾³£ÒòÎªÒ»Ð©ÌØÊâ×Ö·û»òÕß·ûºÅ²úÉúµÄ¸üÐÂÓï¾ä±¨´í£¬Õû¸öͬ²½Ò²»áÒò´Ë¶ø¿¨ÔÚÄÇ£¬×î³õµÄ°ì·¨Ö»ÊÇÊÖ¶¯È¥³ö´íµÄ»úÆ÷£¬Ö´ÐÐÏÂÃæÈýÌõsqlÓï¾ä£¬Ìø¹ý´íÎó¼´¿É¡£
slave stop;
set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
slave start;
һ̨slave»úÆ÷ÓÃÕâÑù·½·¨»¹ÐУ¬¶ą̀¾ÍÂé·³ÁË£¬¾Í˳ÊÖдÁ˸ö¼òµ¥µÄperl½Å±¾£¬·½±ãÍ³Ò»Ìø¹ý´íÎ󣬴úÂëÈçÏ£º
#!/usr/bin/env perl
use strict;
use warnings;
my @hosts = qw/
192.168.1.123:root:tt1234
192.168.1.124:root:tt1234
/;
foreach (@hosts) {
my ($ip, $usr, $pass) = split ':';
print "// ----- $ip\n";
slaveskip($ip, $usr, $pass);
print "\n";
}
# mysql slave skip
sub slaveskip {
my ($ip, $usr, $pass) = @_;
my $info = `mysql -u$usr -p$pass -h$ip -e 'show slave status\\G;'`;
# Slave_SQL_Running is No
if (($info =~ /Slave_IO_Running: Yes/) && ($info =~ /Slave_SQL_Running: No/)) {
my $errno = $1 if $info =~ /Last_Errno: (\d*)/;
my $error = $1 if $info =~ /Last_Error: (.*)/;
if ($errno > 0 && length($error) > 0) {
print "slave error**\n";
print "errno : $errno\nerror : $error\n";
system("mysql -u$usr -p$pass -h$ip -e 'slave stop;'");
system("mysql -u$usr -p$pass -h$ip -e 'set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;'");
system("mysql -u$usr -p$pass -h$ip -e 'slave start;'");
}
} else {
&n
Ïà¹ØÎĵµ£º
×÷ÕߣºÀÏÍõ Èý¹úÑÝÒ忪ƪһÓïµÀÆÆ£ººÏ¾Ã±Ø·Ö£¡MySQLµÄʹÓÃÒàÊÇÈç´Ë£¬Ãæ¶ÔÓ¦ÓÃÖÐÔ½À´Ô½ÅÓ´óµÄÊý¾ÝÁ¿£¬×îʱ÷ֵĽâ¾ö·½°¸ÊÇShard£¬²»¹ýËüµÄ¸´ÔÓÐÔ²¢²»ÊÇÿ¸ö³ÌÐòÔ±¶¼ÄܼÝÔ¦µÄ£¬Èç¹û°Ñ¼Ü¹¹µÄÑݱä±È×÷ÉúÃüµÄ½ø»¯£¬ÄÇôShard¿ÉÒÔ¿´×öÊDz¸È鶯ÎºÜ¶à¼Ü¹¹×îºóÖ®ËùÒÔʧ°Ü£¬¾ÍÊÇÒòΪËüÃDz½×ÓÂõµÃÌ«´ó£¬Ïë´ÓÔʼÉúÃüÖ±½Ó½ø»¯³É²¸Èé¶ ......
ÔÚÃüÁîÐÐÉÏʹÓÃÑ¡Ïî
ÔÚÃüÁîÐÐÖÐÖ¸¶¨µÄ³ÌÐòÑ¡Ïî×ñ´ÓÏÂÊö¹æÔò£º
· ÔÚÃüÁîÃûºóÃæ½ô¸úÑ¡Ïî¡£
· Ñ¡Ïî²ÎÁ¿ÒÔÒ»¸öºÍÁ½¸öÆÆÕۺſªÊ¼£¬È¡¾öÓÚËü¾ßÓжÌÃû»¹Êdz¤Ãû¡£Ðí¶àÑ¡ÏîÓÐÁ½ÖÖÐÎʽ¡£ÀýÈ磬-?ºÍ--helpÊÇ ......
from_unixtime()ÊÇMySQLÀïµÄʱ¼äº¯Êý
dateΪÐèÒª´¦ÀíµÄ²ÎÊý(¸Ã²ÎÊýÊÇUnix ʱ¼ä´Á),¿ÉÒÔÊÇ×Ö¶ÎÃû,Ò²¿ÉÒÔÖ±½ÓÊÇUnix ʱ¼ä´Á×Ö·û´®
ºóÃæµÄ '%Y%m%d' Ö÷ÒªÊǽ«·µ»ØÖµ¸ñʽ»¯
ÀýÈç:
mysql>SELECT from_UNIXTIME( 1249488000, '%Y%m%d' )
->20071120
mysql>SELECT from_UNIXTIME( 1249488000, '%YÄê%mÔ ......
ÔÚwindowsϰ²×°ampÍøÉϵĽéÉܺܶàÁË¡£
ÎÒÕâÀïֻ˵Щ¹Ø¼üµÄ²¿·Ö£¬Ò»·½Ãæ×÷Ϊ±Ê¼Ç£¬ÁíÒ»·½ÃæºÍ´ó¼Ò¹²Ïí¡£
1.°²×°apache
a.ÕâÀïҪעÒ⣬ÔÚ¸Õ¿ªÊ¼ÌîдÖ÷»úÓòÃûʱ£¬Èç¹ûÄãûÓÐÓòÃû£¬¾ÍÔÚ±¾µØ°²×°£¬ÄǾÍÌîд±¾»úipÐÐÁË¡££¨ÎÒ¾õµÃÌîд127.0.0.1¸üºÃ£¬¾ßÌåÎÒûÊÔ¹ý£©
b.apache µÄĬÈ϶˿ÚÊÇ80£¬ÎÒµÄ ......
Äãд¹ýÒ»ÌõsqlÓï¾äÀ´ÐÞ¸ÄÁ½¸ö±íµÄÊý¾ÝÂð£¿
UPDATE test.table1 t1,test.table2 t2 SET t1.aa='a',t1.bb='b',t2.cc='c',WHERE t1.u_id=t2.u_id AND t1.u_id='1' £»
table1µÄu_idºÍtable2µÄu_idÊÇÖ÷Íâ¼ü¹ØÏµ ......