mysql 大量锁表处理_mysql大量锁表,不重启的情况下处理办法

mysql -u root -e "show processlist"|grep -i "Locked" >> locklist.txt;

for line in awk '{print $1}' locklist.txt

do

echo "kill $line;">>lock_kill.sql

done

查看mysql数据库表大小

#!/bin/bash

database=cms

user=root

password='123456'

mysql -u${user} -p${password} -e "use $database;show tables;" | sed '1d' | while read line; do  mysql -u$user -p${password} $database -e "SELECT '${line}',ROUND(SUM(data_length/1024/1024),2) as data_length ,'MB',round(SUM(index_length/1024/1024),2) as index_length,'MB' FROM information_schema.TABLES WHERE information_schema.TABLES.TABLE_SCHEMA = '${database}' AND information_schema.TABLES.TABLE_NAME = '$line'";done | grep -v data_length | awk '{print $1"\t"$2$3"\t"$4$5}' | sort -nrk2

mysql服务检测启动脚本

目的: 监测mysql的存活状态,一旦监测到mysql down掉,重新启动mysql.

脚本内容:

/usr/local/mysql/bin/mysqladmin -uroot -ppassword ping > /dev/null 2>&1

if [ $? -ne 0 ]

then

/etc/init.d/mysql.server restart >/dev/null

echo "`/bin/date '+%Y%m%d %H:%M:%S'`  mysql is restart " >> /root/scripts/mysql_run.log

fi

利用crontab定时任务来执行脚本:

[root@Master_mysql scripts]# crontab -l

*/2 * * * * /bin/bash /root/scripts/mysql_ping.sh

手动模拟关闭msyql,然后间隔2分钟,查看cron执行日志"/var/log/cron"和脚本执行日

志"/root/scripts/mysql_run.log"

mysql远程连接缓慢解决

今天遇到远程连接缓慢,插入数据很慢的情况,原因为DNS验证花去的大部分时间,就像ssh的dns验证参数一样,

修改方式:在/etc/my.cnf中,加入skip-name-resolve选项,

因为我是多点同时进行mysql连接,所以需要把mysql连接数增大,max_connections = 1000

默认为100

linux完全卸载mysql数据库

1)查看系统中是否以rpm包安装的mysql

#rpm -qa | grep -i mysql

MySQL-server-5.1.49-1.glibc23

MySQL-client-5.1.49-1.glibc23

进行相关软件包卸载

rpm -e MySQL-client-5.1.49-1.glibc23 MySQL-server-5.1.49-1.glibc23

2)查看有没有Mysql服务

# chkconfig --list | grep -i mysqld

删除MySQL服务

chkconfig --del mysqld

3)删除分散mysql文件夹

# whereis mysql

mysql: /usr/lib/mysql /usr/share/mysql

分别删除分散文件夹

# rm -rf /usr/lib/mysql/

# rm -rf /usr/share/mysql

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值