2019独角兽企业重金招聘Python工程师标准>>>

回过头想想,一开始查下mysql_install_db这个命令,也不至于承受着巨大的压力折腾两天,不得不说,折腾下来的收获真的不小,好记性不如烂笔头,记录下来共勉。 
   故事的开头是用./mysqld_safe命令起不来MySQL,错误提示:ERROR 2002: Can't connect to local MySQL server through socket '/tmp/mysql.sock',查看/tmp目录中确实没有mysql.sock,又看了log-err:[ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it. “Please run mysql_upgrade to create it”,如果一开始注意到这句话用mysql_upgrade 命令会不会就没有后头的事了,查了下这个命令,还是没太明白这个命令在此处用的作用,internet上都是说MySQL升级时使用。[采用MySQL_upgrade升级授权表方式升级] 
  当时使用了./mysql_install_db命令,我不知道师弟用的什么参数,指定的配置文件肯定还是/etc/my.cnf,(没想到mysql_install_db命令的结果是新建了个数据库实例,并且一般会新建一个xxx.cnf文件)。然后也新指定了datadir,basedir为data目录(以前的在var目录),生成了新的授权表,my.cnf。mysqld_safe可以起来了,感觉自己棒棒的,但是当我们登陆phpmyadmin后彻底傻了,以前的数据库都没有了,没有第一时间去查mysql_install_db命令的应用场景,满脑子是闯大祸了,数据被删了,要怎么去恢复数据库,要不要请示项目leader,自己先补救再说。。。 
  恢复数据库之旅开始,我们竟然找到了以前/var目录下的所有数据,但是没有想到直接更改my.cnf配置到这个目录就可以,而是坚定的认为mysql的数据库都是默认在data目录的,不能更改,var下的只是副本或者啥的,还是太年轻了T T。我们的做法是用var下的数据去data目录下恢复,使用.frm文件恢复了表结构,按internet上说用ibdata1去恢复数据,但是就是不成功,都没想到用mysql-bin.00000x文件去恢复,还是因为太年轻T T。中间还有一个重大的插曲,ssh不能连接到阿里云服务器了,没办法,只好将这件事告诉了项目leader,好的是他让我别着急,我能不着急吗,这数据要是真没了责任都是我的T T。之后leader给阿里云打电话,工作人员说云上有近三天的快照,leader说他晚上去恢复到某一天快照,让我们不要担心。确实是松了口气,刚好也到下班时间,晚上吃了顿好的,以缓解我白天的压力。 
  然而第二天一大早leader打电话说,快照里头没有还是怎么的,总之就是通过快照不行,还是得自己搞。ssh链接不了是因为Linux的var目录被谁删了,扶额,哪个缺心眼干的,没事喜欢乱删。又开始折腾着恢复数据,internet上的方法看的多了,大都是复制之类的,我就想能不能直接指定配置文件中的路径到./mysql/var呢,反正所有文件都是从var目录cp的。说干就干,mysql起来了,但是登陆进去后每个数据库是空的,然而磁盘上每个数据库中是有.frm文件的,查看日志,”Cannot find or open table xxx from the internal data dictionary of InnoDB through the .frm file for the table exists. Maybe you have deleted and recreated InnoDB data files but hava forgotton to delete the corresponding .frm……, the table contains indexes that this version of the engine doesn’t support.”这段英语说个啥信息,先不管,先给mysql用户赋予权限试试,重启,又看到了熟悉的数据熟悉的表!!!结束~ 
  后记: 
  今天(2016/4/25)大早上,甲方工作人员告诉我录入数据提交不成功,我看到控制台报:#1030-Get error -1 from storage engine,原来是前几天捯饬MySQL的时候在my.cnf加了一个参数innodb_force_recovery=4,插入操作被忽略。注释掉或者设置为0就可以执行正常操作了。

转载于:https://my.oschina.net/u/2265029/blog/665406

Table 'mysql.plugin' doesn't exist引发de血案相关推荐

  1. mysql table plugin,MySql报错Table mysql.plugin doesn’t exist的解决方法

    MySql报错Table mysql.plugin doesn't exist的解决方法 一般产生原因是手工更改my.ini的数据库文件存放地址导致的 mysql服务启动时候找不到内置数据库" ...

  2. MySQL5.7服务无法启动或Table ‘mysql.plugin‘ doesn‘t exist

    MySQL部署时提示Table mysql.plugin doesn't exist的解决方法 https://www.jb51.net/article/116604.htm 今天部署了免安装版的My ...

  3. mysqld: Table ‘mysql.plugin‘ doesn‘t exist

    背景是:安装mysql,之前rpm过mysql,然后卸载了 2022-01-23T04:49:31.611319Z 0 [Note] Binlog end 2022-01-23T04:49:31.61 ...

  4. mysql table plugin_MySQL 启动报错Table 'mysql.plugin' doesn't exis(转载)

    安装完成后,按照网上说启动mysql时却报了以下错误: [root@localhost bin]# ./mysqld 2015-10-23 16:54:55 0 [Warning] TIMESTAMP ...

  5. 处理mysql启动报错Table 'mysql.plugin' doesn't exis

    2015-10-23 本来今天工作会比较忙,可惜开发在配置云平台的时候居然出现了各种奇奇怪怪的问题,原来在测试环境好好的,就是配置到云平台后就出问题咯,明天周六了,搞到我要加班了,反正问题我不管了,快 ...

  6. Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist

    环境:centos6.8 Mysql-5.7.13 本人代码中的path即为本人mysql目录=/application/mysql 本人是初学者,参照书上安装方式,二进制安装,即解压以后初始化mys ...

  7. Mysql的“Table ‘mysql.servers‘ doesn‘t exist”的解决方法

    Mysql的"Table 'mysql.servers' doesn't exist"的解决方法 参考文章: (1)Mysql的"Table 'mysql.servers ...

  8. Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist的

    安装完Mysql5.5.24时,用mysql.server启动的时候,出现 Fatal error: Can't open and lock privilege tables: Table 'mysq ...

  9. fatal error:can't open and lock privilege tables:table 'mysql.host' doesn't exist

    fatal error:can't open and lock privilege tables:table 'mysql.host' doesn't exist 报错原因:一般为mysql重新安装后 ...

最新文章

  1. 开始启动OPNsense的汉化工作
  2. 查看LINUX当前负载
  3. jsoup的介绍使用(转)
  4. php在window,php在window上的问题
  5. LeetCode 1618. 找出适应屏幕的最大字号(二分查找)
  6. Jeecg-Uniapp 移动框架开发环境搭建—— APP解决方案
  7. [Mac入门]如何在Mac下显示Finder中的所有文件
  8. gradle构建java实例_Gradle构建Java应用程序
  9. LeetCode-144-Binary Tree Preorder Traversal
  10. 三种新型DDoS反射攻击出现
  11. Fiddler-抓取安卓手机APP请求地址
  12. 【HDU1166】敌兵布阵(树状数组或线段树)
  13. Centos安装交叉编译工具链
  14. 医院HIS系统厂家统计
  15. 软件概要设计的过程和内容
  16. uniapp 实现抽奖幸运大转盘功能
  17. linux 压缩固定大小,tar gz压缩文件为指定大小
  18. 【Spring Security OAuth2笔记系列】- spring security - 图片验证码
  19. 扣丁软件测试基础知识,苹果无线充电线圈揭秘,iphone8无线充电线圈介绍
  20. 利用python进行数据分析数据_利用Python进行数据分析

热门文章

  1. Pool多进程的加速
  2. 二十年后我发明了保姆机器人作文_五年级作文:二十年后的家乡(张羽彤)
  3. 怎么提高es服务器的性能,es集群服务器配置规则是怎样的?什么是es集群
  4. 【山西】2021年下半年软考报考时间及通知
  5. 项目管理之需求调研感悟
  6. C#中调用API函数RegisterHotKey注册多个系统热键
  7. CentOS7中怎样修改主机名和hosts文件(配置IP和主机名的对应管理)
  8. AndroidStudio中提示:This project uses AndroidX dependencies, but the ‘android.useAndroidX‘ property is
  9. ASP.NET中实现复用代码自定义用户控件UserControl的使用
  10. Navicat中怎样将SQLServer的表复制到MySql中