mysql连接丢失、删除重复数据,死锁处理

一、MySql连接长时间未操作,连接丢失

    def test_conn(self):
        try:
            self.conn.ping()
        except:
            self.conn = pymysql.connect(host=self.host, port=self.port, user=self.user, password=self.password,
                                    db=self.db_name)

二、删除重复数据,保留最后一条记录

delete from users where id not in (
		select t.max_id from 
		(select max(id) as max_id from users group by identity_id,name) as t
		);

三、死锁

1、查看当前运行的事务,这点在变更表结构之前必须要查看

select * from information_schema.innodb_trx;
2、查看当前运行的事务的账户和事务开始的时间,及其事务语句
select 
    a.id,a.user,a.host,b.trx_started,b.trx_query 
from information_schema.processlist a right outer join information_schema.innodb_trx b
on a.id = b.trx_mysql_thread_id;

3、删掉死锁的事务

select * from information_schema.innodb_trx
kill 953

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值