朋友一次在腾讯云数据库后台的 phpmyadmin 导入 sql 脚本,页面爆出 404 的错误:
之后刷新表创建成功,但是表打不开,呈现了死锁状态,删除表也删除不了,命令行登录不带-A 参数,use 数据库 use 不了,腾讯云数据库后台的导入功能也受到影响
CPU 飙升到百分之百,但其他数据库、表查询等功能不受影响。
第一时间想到的是,表死锁坏掉了,果然登录到腾讯云的 DCM 的查看会话,一堆的 PAM 的 IP 的 select 去查询这个表
DCM 的会话对于 PAM 的 IP 的会话无法直接 kill 掉,所以采用了命令行的方式去 kill
服务器采用 mysql 的客户端程序登录到腾讯云数据库:
- mysql -h xx.xx.xx.xx -u xxx -p xxx -A
注意,这个-u 后面的用户必须是授权的用户,root 这个东西,腾讯云上是个假的 root,切记单独给这个数据库设置一个账户
登录数据库之后
- > use xxx;
- > show full processlist;
会看到一堆占用的会话,使用 kill id 的方式来 kill 掉会话
之后把那个死锁的表删除掉
- > drop table xxx;
切记:导入的时候一定不要在腾讯云数据库后台的 phpmyadmin 导入,很容易会出现上述的问题,导致数据表损坏死锁,CPU 飙升
腾讯云云数据库没有阿里云数据库的后台做的好,很多东西都不方便,不过腾讯云正在着手做这件事情,期待后台的完善!
本文作者为 olei,转载请注明。
感谢博主的文章 nice