Can't find file: './mysql/plugin.frm' (errno: 13)[mysql数据目录迁移错位]错误解决
大概需要4个步骤,其中第1步通过service mysql stop停止数据库,第4步通过service mysql start启动数据库。
第2步移动数据文件,不知道是否为Ubuntu智能的原因,移动数据库的时候,除了数据文件,连权限也一起带过去了
root@T60:~#mv /var/lib/mysql /home/
我还在记录/var/lib/mysql各目录的权限,当mv完成之后,/home/下面的权限保留原来/var/lib/mysql的各类权限,其中有目录,文件等等,连chown,chmod都给省事了。
本想这样就没事了,执行第4步一直启动不了,看日志文件/var/log/mysql/error.log的结果是
/usr/sbin/mysqld: Can't find file: './mysql/plugin.frm' (errno: 13)100803
12:36:36 [ERROR] Can't open the mysql.plugin table.
Please run mysql_upgrade to create it.100803 12:36:36
InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name ./ibdata1InnoDB: File operation call: 'open'.
InnoDB: Cannot continue operation.
刚才mv过去的权限都是对的,不存在还有什么权限的问题,到网上搜索大部分都是redhat系列的系统,其中的SElinux对ubuntu不适用,还差点真用chcon来修改所谓的安全之类的权限了
其实,在my.cnf中注释部分说明的很清楚
# * IMPORTANT# If you make changes to these settings and your system uses apparmor, you may# also need to also adjust /etc/apparmor.d/usr.sbin.mysqld.
按照说明进行第3步,注释掉原来的路径,增加新的路径,2行都要修改
root@T60:~# vi /etc/apparmor.d/usr.sbin.mysqld
# /var/lib/mysql/ r,# /var/lib/mysql/** rwk, 改为 /home/mysql/ r, /home/mysql/** rwk,
更新参数
root@T60:~# /etc/init.d/apparmor reload
* Reloading AppArmor profiles Skipping profile in /etc/apparmor.d/disable: usr.bin.firefox [ OK ]
修改完成后执行第4步root@T60:~# service mysql start
可以在日志中看见启动成功
/var/log/mysql/error.log
100803 12:53:07 InnoDB: Started; log sequence number 0 5646278
100803 12:53:07 [Note] Event Scheduler: Loaded 0 events
100803 12:53:07 [Note] /usr/sbin/mysqld: ready for connections.
Version: ’5.1.41-3ubuntu12.4-log’ socket: ‘/var/run/mysqld/mysqld.sock’ port: 3306 (Ubuntu)
转自《http://www.cnblogs.com/tangtianfly/archive/2012/12/28/2837403.html》
Can't find file: './mysql/plugin.frm' (errno: 13)[mysql数据目录迁移错位]错误解决的更多相关文章
- 报错:/usr/sbin/mysqld: Can't find file: './performance_schema/events_waits_summary_by_account_by_event_name.frm' (errno: 13 - Permission denied)
报错背景: Linux环境下安装MySQL数据库. 安装完成,数据库初始化,启动数据库时报错. 报错现象: -- :: [ERROR] Native table 'performance_schema ...
- 安装mysql 初始化的时候报错 Can't find file: './mysql/db.frm' (errno: 13) ERROR: 1017
目录下没有权限 需要权限
- MySQL之Field‘***’doesn’t have a default value错误解决办法
这篇文章主要介绍了MySQL之Field‘***’doesn’t have a default value错误解决办法,需要的朋友可以参考下 今天,中国博客联盟有博友反馈,zgboke.com无法提交 ...
- service mysqld start 报错:service mysqld start 报错 090517 13:34:15 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it. 090Can't open the mysql.plugin table. Please run mysql
service mysqld start 报错 090517 13:34:15 [ERROR] Can't open the mysql.plugin table. Please run mysql_ ...
- Jupyter运行时出现下面的错误:Unexpected error while saving file: arma/Untitled.ipynb [Errno 13] Permission denied:
运行环境:Ubuntu16.04+Python2.7执行如下代码修改Jupyter的一部分文件的权限(执行完之后重新启动即可): sudo chmod ~/.local/share/jupyter/ ...
- mysql 在登陆的时候出现error 1045 (28000): 错误解决办法
错误显示:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 解决方案: 1.找到配 ...
- 使用mysql连接django时,需要的步骤以及错误解决办法
django默认使用的sqlite3,更改为SQL时需要按照如下操作进行 1.在settings.py中的78行进行更改 DATABASES = { 'default': { 'ENGINE': 'd ...
- Mysql 备份数据库方法及when using LOCK TABLES错误解决方法
可以将以下代码保存为backup.bat,添加计划任务即可. @echo off ,,%" ,%" "D: -uname -pxxxx -P3306 --skip-loc ...
- Can’t find file mysql/host.frm
安装Mysql后报错: InnoDB: Apply batch completed 141115 15:04:36 InnoDB: Started; log sequence number 0 442 ...
随机推荐
- Raft、Zab
Raft.Zab 引言 <分布式系统理论进阶 - Paxos>介绍了一致性协议Paxos,今天我们来学习另外两个常见的一致性协议--Raft和Zab.通过与Paxos对比,了解Raft和Z ...
- failed to lazily initialize a collection of role
可能修复了一个重大的偶尔发生的几乎难以察觉的并且到现在我也没能理解的bug...有时(经常)调用updateNotNullfield方法(原理是从数据库中get一个对象,然后把原对象中非空的值赋予它, ...
- 使用Compass制作雪碧图
遇见好的文章,笔者也会转载.但是正所谓好记性不如烂笔头,单纯的拿来主义也不如自己的亲自实践.所以每次需要转载的文章,我都会自己敲一遍,中间加入一些自己的思考. 这篇文章转载自:http://www.h ...
- jQuery 如何先创建、再修改、后添加DOM元素
例如顺序执行[创建]-> [修改]-> [添加]三个动作. 由于jQuery支持链式操作,其实就是设计模式的builder模式,所以我们可以把三个操作串在一起来执行. 首先创建一个p元素, ...
- PAT-乙级-1042. 字符统计(20)
1042. 字符统计(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 请编写程序,找出一段给定文字中出现最 ...
- 【无聊放个模板系列】BZOJ 3172 (AC自动机)
#include<cstdio> #include<cstdlib> #include<cstring> #include<iostream> #inc ...
- http://jingyan.baidu.com/article/e4511cf33479812b855eaf67.html
http://jingyan.baidu.com/article/e4511cf33479812b855eaf67.html
- java main()静态方法
java main()方法是静态的.意味着不需要new(),就在内存中存在.而且是属于类的,但是对象还是可以调用的. 若干个包含这个静态属性和方法的对象引用都可以指向这个内存区域.这个内存区域发生改变 ...
- 吐槽C++
个人感觉,在c++ 道路的学习路上,遇到很多的坎坷,现在回想起来,最关键一点就是 c++知识点繁杂很多,教科书很多知识点都没有提到. 但是在实际工作中,这些没有提到的知识点,却又经常会用到(或者看开源 ...
- php中对共享内存,消息队列的操作
http://www.cnblogs.com/fengwei/archive/2012/09/12/2682646.html php作为脚本程序,通常生命周期都很短,如在web应用中,一次请求就是ph ...