首頁 培訓網(wǎng) 最新資訊 熱門問答

Linux認證

13923776320 免費試聽 在線客服

您的位置: 杭州培訓網(wǎng) > Linux認證培訓資訊 > 杭州linux認證運維實戰(zhàn)培訓?

杭州linux認證運維實戰(zhàn)培訓?

來源:教育聯(lián)展網(wǎng) | 發(fā)布時間: | 編輯:佚名

1、監(jiān)控MySQL主從同步 企業(yè)面試題1:監(jiān)控MySQL主從同步是否異常,如果異常,則發(fā)送短信或者郵件給管理員。提示:如果沒主從同步環(huán)境,可以用下面文本放到文件里讀取來模擬: 階段1:開發(fā)一個守護進程腳本每30秒實現(xiàn)檢測一次。 階段2:如果同步出現(xiàn)如下錯誤號(1158,1159,1008,1007,1062),則跳過錯誤。 階段3:請使用數(shù)組技術實現(xiàn)上述腳本(獲取主從判斷及錯誤號部分) 如果沒有生產(chǎn)環(huán)境可以使用以下的模擬文本,**修改文本模擬故障。 [root@oldboy~]# mysql

杭州linux認證運維實戰(zhàn)培訓



1、監(jiān)控MySQL主從同步

企業(yè)面試題1:監(jiān)控MySQL主從同步是否異常,如果異常,則發(fā)送短信或者郵件給管理員。提示:如果沒主從同步環(huán)境,可以用下面文本放到文件里讀取來模擬:

階段1:開發(fā)一個守護進程腳本每30秒實現(xiàn)檢測一次。

階段2:如果同步出現(xiàn)如下錯誤號(1158,1159,1008,1007,1062),則跳過錯誤。

階段3:請使用數(shù)組技術實現(xiàn)上述腳本(獲取主從判斷及錯誤號部分)

如果沒有生產(chǎn)環(huán)境可以使用以下的模擬文本,**修改文本模擬故障。

[root@oldboy~]# mysql -uroot -p'oldboy' -S /data/3307/mysql.sock -e "show slavestatus\G;"

*************************** 1. row ***************************

Slave_IO_State:Waiting for master to send event

Master_Host:10.0.0.179 #當前的mysql master服務器主機

Master_User: rep

Master_Port: 3306

Connect_Retry: 60

Master_Log_File:mysql-bin.000013

Read_Master_Log_Pos: 502547

Relay_Log_File:relay-bin.000013

Relay_Log_Pos:251

Relay_Master_Log_File:mysql-bin.000013

Slave_IO_Running:Yes

Slave_SQL_Running: Yes

Replicate_Do_DB:

Replicate_Ignore_DB: mysql

Replicate_Do_Table:

Replicate_Ignore_Table:

Replicate_Wild_Do_Table:

Replicate_Wild_Ignore_Table:

Last_Errno: 0

Last_Error:

Skip_Counter: 0

Exec_Master_Log_Pos: 502547

Relay_Log_Space:502986

Until_Condition:None

Until_Log_File:

Until_Log_Pos: 0

Master_SSL_Allowed: No

Master_SSL_CA_File:

Master_SSL_CA_Path:

Master_SSL_Cert:

Master_SSL_Cipher:

Master_SSL_Key:

Seconds_Behind_Master: 0 #和主庫比同步延遲的秒數(shù),這個參數(shù)很重要

Master_SSL_Verify_Server_Cert: No

Last_IO_Errno: 0

Last_IO_Error:

Last_SQL_Errno: 0

Last_SQL_Error:

腳本:

#!/bin/bash

# oldboy linux training

# 2015-05-17

# 說明:本腳本來自老男孩linux21期學員張耀開發(fā)!

# Source function library.

. /etc/init.d/functions

# Defined variables

MysqlUser=root

MysqlPass=oldboy123

MysqlPort=3307

Mysqlsock=/data/$MysqlPort/mysql.sock

ErrorNo=(1158 1159 1008 1007 1062)

errorlog=/tmp/error_skip.log

MysqlCmd="/application/mysql/bin/mysql -u$MysqlUser -p$MysqlPass -S $Mysqlsock"

# Judge mysql server is ok?

[ -S $Mysqlsock ] ||{

echo "Maybe MySQL have someting wrong"

exit 1

}

# Defined skip error Functions

function error_skip(){

local flag

flag=0

for num in ${ErrorNo[@]}

do

if [ "$1" == "$num" ];then

$MysqlCmd -e'stop slave;set global sql_slave_skip_counter=1;start slave;'

echo "$(date %F_%R) $1" >>$errorlog

else

echo "$(date %F_%R) $1" >>$errorlog

((flag ))

fi

done

[ "$flag" == "${#ErrorNo[@]}" ] &&{

action "MySQL Slave" /bin/false

uniq $errorlog|mail -s "MySQL Slave is error" 12345678@qq.com

}

}

# Defined check slave Functions

function check_slave(){

MyResult=`$MysqlCmd -e'show slave status\G'|egrep '_Running|Behind_Master|SQL_Errno' |awk '{print $NF}'`

array=($MyResult)

if [ "${array[0]}" == "Yes" -a "${array[1]}" == "Yes" -a "${array[2]}" == "0" ]

then

action "MySQL Slave" /bin/true

else

error_skip ${array[3]}

fi

}

# Defined main Functions

function main(){

while true

do

check_slave

sleep 60

done

}

main


咨詢電話【詹老師】:17706505315

了解更多的杭州Linux認證課程>>>>杭州Linux認證培訓

了解更多的杭州培訓課程>>>>杭州培訓網(wǎng)


熱門機構推薦
Linux認證

免費體驗課開班倒計時

11: 41: 09

稍后會有專業(yè)老師給您回電,請保持電話暢通

咨詢電話:13923776320

本周熱門資訊

全國分站 熱門機構

北京Linux認證培訓 上海Linux認證培訓 廣州Linux認證培訓 深圳Linux認證培訓 杭州Linux認證培訓 蘇州Linux認證培訓 南京Linux認證培訓 天津Linux認證培訓 佛山Linux認證培訓 南寧Linux認證培訓 長沙Linux認證培訓 重慶Linux認證培訓 太原Linux認證培訓 青島Linux認證培訓 寧波Linux認證培訓 鄭州Linux認證培訓 西安Linux認證培訓 廈門Linux認證培訓 武漢Linux認證培訓 成都Linux認證培訓 無錫Linux認證培訓 濟南Linux認證培訓 昆明Linux認證培訓 貴陽Linux認證培訓 揚州Linux認證培訓 徐州Linux認證培訓 珠海Linux認證培訓 合肥Linux認證培訓 長春Linux認證培訓

珠海達內教育武漢達內教育石家莊達內教育鄭州達內教育

申請試聽名額

已有10254人申請免費試聽

01電話咨詢 | 13923776320

QQ:929158207
加盟合作:0755-83654572

今日已有25人申請,本月限額500