mysql安装后更改目录

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云数据库 RDS MySQL Serverless,价值2615元额度,1个月
简介:

[mysql数据目录迁移错位]错误解决 


大概需要4个步骤,

其中第1步通过service mysql stop停止数据库。

第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)



本文转自 蔡小赵 51CTO博客,原文链接:http://blog.51cto.com/zhaopeiyan/1968405

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
21小时前
|
网络协议 安全 关系型数据库
Android Termux安装MySQL,并使用cpolar实现公网安全远程连接[内网穿透]
Android Termux安装MySQL,并使用cpolar实现公网安全远程连接[内网穿透]
5 0
|
1天前
|
关系型数据库 MySQL Linux
Linux CentOs7 安装Mysql(5.7和8.0版本)密码修改 超详细教程
Linux CentOs7 安装Mysql(5.7和8.0版本)密码修改 超详细教程
|
2天前
|
安全 关系型数据库 MySQL
MySQL安装教程
MySQL安装教程
20 0
|
2天前
|
SQL 关系型数据库 MySQL
【简单无脑】自动化脚本一键安装虚拟机下的MySQL服务
该文章提供了在虚拟机上安装MySQL服务的简化方法,特别是针对新手。作者提供了一个自动化脚本`install_mysql.sh`,使得安装过程更简单。用户需要下载`install.rpm`资源,将其放在指定目录下,然后创建并编辑脚本文件,将提供的代码粘贴进去,通过`chmod u+x`授权,最后运行脚本`./install_mysql.sh [rpm文件路径]`来安装MySQL。文章还附有相关图片说明。
12 1
【简单无脑】自动化脚本一键安装虚拟机下的MySQL服务
|
2天前
|
SQL 缓存 关系型数据库
MySQL常见问题解决和自动化安装脚本
这篇内容包含了两个主要部分:解决MySQL登录问题和处理GPG密钥问题。当MySQL密码正确但无法登录时,可以通过执行SQL命令`ALTER USER`和`flush privileges`来修改和重置密码。对于MySQL安装时的GPG密钥错误,首先需要强制删除旧的MySQL仓库包,导入新的GPG公钥,然后安装MySQL服务器。如果遇到GPG检查错误,可以使用`--nogpgcheck`参数忽略检查来安装。最后,提供了一个自动化安装MySQL的脚本,用于检查旧版本、卸载残留、安装MySQL8并启动服务。
14 1
MySQL常见问题解决和自动化安装脚本
|
6天前
|
SQL 关系型数据库 MySQL
【MySQL-3】图形化界面工具DataGrip安装&配置&使用
【MySQL-3】图形化界面工具DataGrip安装&配置&使用
|
6天前
|
关系型数据库 MySQL Linux
【MySQL-2】MySQL的下载&安装&启停&配置环境变量【一条龙教程】
【MySQL-2】MySQL的下载&安装&启停&配置环境变量【一条龙教程】
|
7天前
|
弹性计算 关系型数据库 MySQL
在线安装MySQL5.7和MySQL8.0
【4月更文挑战第30天】
25 0
|
7天前
|
存储 关系型数据库 MySQL
docker安装mysql8忽略大小写
docker安装mysql8忽略大小写
|
7天前
|
Ubuntu 关系型数据库 MySQL
Ubuntu 20.04 + mysql8 安装以及配置大小写不敏感
Ubuntu 20.04 + mysql8 安装以及配置大小写不敏感