閱讀234 返回首頁    go 阿裏雲 go 技術社區[雲棲]


OceanBase幾個常見問題及排查思路

第一種情況:某一台observer掛掉,數據庫異常

OceanBase采用的的是多副本集群模式,在不同的zone裏麵有不同的server,每個zone裏麵的server是互相備份的。上層是通過slb來分發所以,當其中一台server掛掉的時候,會對業務產生什麼影響呢?

登錄到業務所在的ob服務器執行以下命令:

ps -ef|grep observer;kill -9 pid

登錄到業務不在的observer執行以下命令:

ps -ef|grep observer;kill -9 pid

恢複手段:查看9台observer的進程,找出掛掉的observer,並使用admin用戶將observer啟動。執行命令如下:

 su - admin;/bin/observer


2、服務器層麵占用cpu,數據庫異常

#! /bin/bash
# filename killcpu.sh
endless_loop()
{
echo -ne "i=0;
while true
do
i=i+100;
i=100
done" | /bin/bash &
}
if [ $# != 1 ] ; then
  echo "USAGE: $0 <CPUs>"
  exit 1;
fi
for i in `seq $1`
do
  endless_loop
  pid_array[$i]=$! ;
done
for i in "${pid_array[@]}"; do
  echo 'kill ' $i ';';
done
#運行命令:./killcpu.sh 30    
#參數位占用幾顆cpu 核數

ps -aux | sort -k4nr | head -N

登錄到observer服務器執行命令:

dd if=/dev/zero of=/home/admin/oceanbase/log/1.log bs=100k count=1600000

6、模擬數據庫服務器網絡故障。

執行命令:

iptables -A INPUT -i bond0 -p tcp --dport 2882 -j DROP
iptables -A INPUT -i bond0 -p tcp --dport 2881 -j DROP
iptables -A OUTPUT -p tcp --dport 2882 -j DROP
iptables -A OUTPUT -p tcp --dport 2881 -j DROP

恢複手段:

iptables -D INPUT 1
iptables -D INPUT 1
iptables -D OUTPUT 1
iptables -D OUTPUT 1

最後更新:2017-10-29 23:33:33

  上一篇:go  阿裏雲幸運券領
  下一篇:go  Oracle SCN簡述