mysqld服务关闭不了

大家好,mysqld服务关闭不了,重启也不行,查看日志是:
/usr/libexec/mysqld: Incorrect key file for table '/tmp/#sql_5006_7.MYI'; try to repair it
但是用service mysqld status查看表明mysql is running
用 myisamchk -r /tmp/*.MYI命令修复,没反应死在那里了
然后用mysql登录不了
用mysqladmin shutdown也没反应了
用chkconfig --list mysqld 发现所有的都是off
请问如何重启mysqld服务正常?我需要一开始禁用service mysqld然后重启机器用myisamchk 修复,然后再重启机器吗?
kill kill all之类的都不行
参与11

9 同行回答

特种兵1 特种兵1 数据库开发工程师 南京橙红软件有限公司
报这个错误是,处理sql语句 中间产生大量的数据保存在临时文件 /tmp 文件夹下,超过了了/tmp 文件的存储上线。比如表关联的sql 执行计划的还回结果级估计行数超亿;修改大表的表结构,大表创建索引即是/tmp 文件的存储上线小了。处理办法:1:用  show processlist【管理...显示全部
报这个错误是,处理sql语句 中间产生大量的数据保存在临时文件 /tmp
文件夹下,超过了了/tmp 文件的存储上线。比如表关联的sql 执行计划的还回结果级估计行数超亿;修改大表的表结构,大表创建索引即是/tmp 文件的存储上线小了。处理办法:1:用  show processlist【管理员用户查看所有的sql线程】 2:把可疑的sql【比如执行时间较长的sql】kill 掉。3:通知对应sql的客服方,表关联的sql 执行计划的还回结果级估计行数超亿,那肯定是sql% 收起
软件开发 · 2015-05-05
浏览935
hank_yoon hank_yoon 数据库运维工程师 Hank_Yoon
处理掉了吗?   处理掉的话,请问怎么解决的?显示全部
处理掉了吗?   处理掉的话,请问怎么解决的? 收起
互联网服务 · 2015-08-13
浏览820
hillpigdb2 hillpigdb2 QA工程师 dd
chkconfig --del mysqld 执行也没反应显示全部
chkconfig --del mysqld 执行也没反应 收起
系统集成 · 2015-05-06
浏览783
hillpigdb2 hillpigdb2 QA工程师 dd
回复 6# furey 我这么处理可以吗:chkconfig --del mysqld然后重启机器,开机后,此时mysqld应该没有启动,然后执行:myisamchk -r /tmp/*.MYI 命令修复如果修复成功,然后执行:chkconfig --add mysqld然后重启,开机后然后看情况。...显示全部
回复 6# furey


我这么处理可以吗:chkconfig --del mysqld
然后重启机器,开机后,此时mysqld应该没有启动,然后执行:
myisamchk -r /tmp/*.MYI 命令修复
如果修复成功,然后执行:
chkconfig --add mysqld
然后重启,开机后然后看情况。





收起
系统集成 · 2015-05-05
浏览794
hillpigdb2 hillpigdb2 QA工程师 dd
回复 5# 特种兵1 用mysql命令登录不了,所以执行不了show processlist。然后用mysqladmin processlist然后命令就死在那里了,ctl+c也退不出。显示全部
回复 5# 特种兵1

用mysql命令登录不了,所以执行不了show processlist。然后用mysqladmin processlist然后命令就死在那里了,ctl+c也退不出。 收起
系统集成 · 2015-05-05
浏览781
furey furey 数据库管理员 biz
类似windows的安全模式或者禁用mysqld启动,然后重启服务器。显示全部
类似windows的安全模式或者禁用mysqld启动,然后重启服务器。 收起
软件开发 · 2015-05-05
浏览819
特种兵1 特种兵1 数据库开发工程师 南京橙红软件有限公司
报这个错误是,处理sql语句 中间产生大量的数据保存在临时文件 /tmp 文件夹下,超过了了/tmp 文件的存储上线。比如表关联的sql 执行计划的还回结果级估计行数超亿;修改大表的表结构,大表创建索引即是/tmp 文件的存储上线小了。处理办法:1:用  show processlist【管理...显示全部
报这个错误是,处理sql语句 中间产生大量的数据保存在临时文件 /tmp
文件夹下,超过了了/tmp 文件的存储上线。比如表关联的sql 执行计划的还回结果级估计行数超亿;修改大表的表结构,大表创建索引即是/tmp 文件的存储上线小了。处理办法:1:用  show processlist【管理员用户查看所有的sql线程】 2:把可疑的sql【比如执行时间较长的sql】kill 掉。3:通知对应sql的客服方,表关联的sql 执行计划的还回结果级估计行数超亿,那肯定是sql逻辑不合理等;要是对方是 对大表创建索引导致的,那就适当的增加 /tmp 文件夹的存储等 收起
软件开发 · 2015-05-05
浏览839
hillpigdb2 hillpigdb2 QA工程师 dd
回复 2# like052    杀不掉,我再想怎么让机器重启时,设置让service mysqld不自动启动,然后用myisamchk 修复一下,然后再设置mysqld自动启动,然后看看情况显示全部
回复 2# like052


   杀不掉,我再想怎么让机器重启时,设置让service mysqld不自动启动,然后用myisamchk 修复一下,然后再设置mysqld自动启动,然后看看情况 收起
系统集成 · 2015-05-05
浏览812
like052 like052 数据库管理员 学习 待业中
service mysql stopkill -9 还有这个杀不掉的?显示全部
service mysql stop
kill -9 还有这个杀不掉的? 收起
软件开发 · 2015-05-05
浏览827

提问者

hillpigdb2
QA工程师 dd
评论5

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2015-05-05
  • 关注会员:1 人
  • 问题浏览:3980
  • 最近回答:2015-08-13
  • X社区推广