CentOS下的MySQL爬坑(Plugin 'InnoDB' init function returned error.)

mysql version : 5.1.7
centos version : 6.8

设置用户对某个库的权限

为了远程连接我的服务器的mysql数据库,需要为该连接用户设置合适的访问权限。比如我想让makers这个用户远程连接,且给他访问某个库比如test的权限,那么就用root登入mysql。随后输入以下语句:

use mysql;
grant privileges on test.* to 'makers'@'%';
flush pirvileges;

然后重启数据库:

sudo service mysqld restart

注意这里要使用sudo,否则会出现关没关掉的现象。

就我的经历来说,一开始没使用sudo,随后出现了一堆问题。当我开始远程连接,连是连上了,但是库里没有表!!然后我进了数据库查看(以为把表误删了),发现表还在,试查询一下其中一个表,出现了这个错误:ERROR 1286 (42000): Unknown table engine 'InnoDB'

我去了网上查解决方法,清一色的说是没有安装Innodb插件,我想不对啊,之前就能用,重启一下服务就不能用了,肯定不是引擎插件的问题。

于是我去看了下日志,看到这些报错:

InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242881 bytes
InnoDB: than specified in the .cnf file 0 5242880 bytes!
190426 14:27:04 [ERROR] Plugin 'InnoDB' init function returned error.
190426 14:27:04 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.

这样就好解决了,是日志文件冲突。就直接把mysql下的日志(路径/var/lib/mysql),名字叫ib_logfilexxx的统统删掉了。这里保险点还是这样做:mv ib_logfile1 ib_logfile1.bak

然后再重启服务就ok了。

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值