mysqldump使用分库备份的脚本

#!/bin/sh
#Author:Luojq
BAKTIME=$(date +%Y-%m-%d%H:%M:%S)
USER_PSWD=123456
USER_NAME=root
MYLOGIN="mysql -u${USER_NAME} -p${USER_PSWD}"
DUMP_CMD="/usr/bin/mysqldump -u${USER_NAME} -p${USER_PSWD} -B --master-data=2 --single_transaction --flush-logs --skip-add-drop-table"
DATABASE="$($MYLOGIN -e "show databases;"|egrep -vi "_schema|mysql")"

for dbname in ${DATABASE}
do
MYDIR=/data/backup/${dbname}
[ ! -d ${MYDIR} ] && mkdir -p ${MYDIR}
$DUMPCMD ${dbname}|gzip >${MYDIR}/${dbname}${BAK_TIME}.sql.gz
done

mysql常用命令
show processlist; #查看数据库里正在执行的SQL语句,可能无法看全完整的SQL语句。
show full processlist; #查看正在执行的完整SQL语句,完整显示。
set global key_buffer_size = 1024102432; #不重启数据库调整数据库参数,直接生效,重启后失效。
show variables; #查看数据库的配置参数信息,例如:my.cnf里参数的生效情况。
kill id 杀掉线程的命令,id为线程号(mysql下)
show status 查看当前会话的数据库状态信息。
show global status 查看整个数据库的运行状态信息。很重要,要分析并要做好监控。
show engine innodb status 显示innodb引擎的性能状态

猜你喜欢

转载自blog.51cto.com/13293070/2449579