Ubuntu安装MySQL5.7并配置数据存储路径的方法步骤
一、安装MySQL
本文是通过APT方式安装,安装的最新版本是5.7.21
(注意:通过APT方式安装的版本都是现在最新的版本,通过这种方式安装好之后开机自启动都已经配置好,和命令行上的环境变量,无需手动配置。)
sudo apt-get install mysql-server
如果提示依赖不足,运行下面命令解决依赖问题,如果没出现依赖问题,那么就不需要使用此命令
sudo apt-get install -f
安装过程会提示输入两次root用户密码
说明:通过这种方式安装好之后开机自启动都已经配置好,和命令行上的环境变量,无需手动配置。
安装好之后会创建如下目录:
数据库目录:/var/lib/mysql/
配置文件:/usr/share/mysql(命令及配置文件) ,/etc/mysql(如:my.cnf)
相关命令:/usr/bin(mysqladmin mysqldump等命令) 和/usr/sbin
启动脚本:/etc/init.d/mysql(启动脚本文件mysql的目录)
服务管理 启动 sudo service mysql start 停止 sudo service mysql stop 服务状态 sudo service mysql status
二、配置MySQL数据存放路径
我使用的是阿里云,阿里云赠送了20G的数据盘,挂载后的路径是/data。
创建文件夹
mkdir /data/mysql
把默认安装的MySql数据库复制到/data/mysql中并设置权限
sudo cp -R /var/lib/mysql/* /data/mysql
sudo chown -R mysql:mysql /data/mysql <==修改新路径的访问权限
sudo service mysql stop <==停止mysql服务
如果不是新数据库.删除日志文件
rm -rf /database/mysql/ib_logfile0
rm -rf /database/mysql/ib_logfile1
修改 /etc/mysql/mysql.conf.d/mysqld.cnf
文件 : datadir = /data/mysql。
修改启动文件
sudo vim /etc/apparmor.d/usr.sbin.mysqld
将 /var/lib/mysql/ r /var/lib/mysql/** rwk 改为 /data/mysql/ r /data/mysql/** rwk
重启MySQL
sudo /etc/init.d/apparmor restart
sudo /etc/init.d/mysql restart
登录MySql并验证数据目录
mysql>show variables like '%dir%'; <==当显示datadir 为/data/mysql时,修改成功
如图所示
MySQL通过APT方式安装比较简单
以下为数据文件迁移的详细的命令流程,仅供参考
root@ww:~# mkdir /data/mysql
root@ww:~# sudo cp -R /var/lib/mysql/* /data/mysql
root@ww:~# sudo chown -R mysql:mysql /data/mysql
root@ww:~# sudo service mysql stop
root@ww:~# vim /etc/mysql/mysql.conf.d/mysqld.cnf
root@ww:~# sudo vim /etc/apparmor.d/usr.sbin.mysqld
root@ww:~# sudo /etc/init.d/apparmor restart
[ ok ] Restarting apparmor (via systemctl): apparmor.service.
root@ww:~# sudo /etc/init.d/mysql restart
[ ok ] Restarting mysql (via systemctl): mysql.service.
以上就是本文的全部内容,希望对大家的学习有所帮助。
- PHP数据结构(八) ——赫夫曼树实现字符串编解码(实践1)
- 小程序开发注意点儿,新手入门基础
- ajax跨域有没有踩过坑,IE低版本浏览器如何支持?
- 你可能不知道的 Django Rest Framework 的两个新特性
- PHP数据结构(八) ——赫夫曼树实现字符串编解码(实践2)
- 你应该使用 Python 管理 Cron 作业
- CSS3有哪些好用的属性?
- PHP数据结构(九) ——图的定义、存储与两种方式遍历
- 使用 React 和 Django REST Framework 构建你的网站
- 小程序中带图片modal的实现
- 号称「永远不会输钱」的马丁格尔策略
- 小程序中图片高度等比缩放
- 三分钟使用 Python 处理 Nginx 日志
- Python,Shell 和 三个标准文件
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法