一、安装

apt-get install mysql-server

执行过程如下:

root@duke:~#  apt-get install mysql-server
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
将会同时安装下列软件:
libaio1 libevent-core-2.0-5 libhtml-template-perl mysql-client-5.7 mysql-client-core-5.7 mysql-common mysql-server-5.7 mysql-server-core-5.7
建议安装:
libipc-sharedcache-perl mailx tinyca
下列【新】软件包将被安装:
libaio1 libevent-core-2.0-5 libhtml-template-perl mysql-client-5.7 mysql-client-core-5.7 mysql-common mysql-server mysql-server-5.7 mysql-server-core-5.7
升级了 0 个软件包,新安装了 9 个软件包,要卸载 0 个软件包,有 360 个软件包未被升级。
需要下载 18.4 MB 的归档。
解压缩后会消耗 161 MB 的额外空间。
您希望继续执行吗? [Y/n] y
获取:1 http://cn.archive.ubuntu.com/ubuntu xenial-updates/main amd64 mysql-common all 5.7.24-0ubuntu0.16.04.1 [15.3 kB]
获取:2 http://cn.archive.ubuntu.com/ubuntu xenial/main amd64 libaio1 amd64 0.3.110-2 [6,356 B]
获取:3 http://cn.archive.ubuntu.com/ubuntu xenial-updates/main amd64 mysql-client-core-5.7 amd64 5.7.24-0ubuntu0.16.04.1 [6,030 kB]
获取:4 http://cn.archive.ubuntu.com/ubuntu xenial-updates/main amd64 mysql-client-5.7 amd64 5.7.24-0ubuntu0.16.04.1 [1,720 kB]
获取:5 http://cn.archive.ubuntu.com/ubuntu xenial-updates/main amd64 mysql-server-core-5.7 amd64 5.7.24-0ubuntu0.16.04.1 [7,757 kB]
获取:6 http://cn.archive.ubuntu.com/ubuntu xenial-updates/main amd64 libevent-core-2.0-5 amd64 2.0.21-stable-2ubuntu0.16.04.1 [70.6 kB]
获取:7 http://cn.archive.ubuntu.com/ubuntu xenial-updates/main amd64 mysql-server-5.7 amd64 5.7.24-0ubuntu0.16.04.1 [2,726 kB]
获取:8 http://cn.archive.ubuntu.com/ubuntu xenial/main amd64 libhtml-template-perl all 2.95-2 [60.4 kB]
获取:9 http://cn.archive.ubuntu.com/ubuntu xenial-updates/main amd64 mysql-server all 5.7.24-0ubuntu0.16.04.1 [10.8 kB]
已下载 18.4 MB,耗时 3秒 (4,812 kB/s)
正在预设定软件包 ...

设置mysql数据库root用户密码: root

确认mysql数据库root用户密码: root
正在选中未选择的软件包 mysql-common。
(正在读取数据库 ... 系统当前共安装有 220375 个文件和目录。)
正准备解包 .../mysql-common_5.7.24-0ubuntu0.16.04.1_all.deb ...
正在解包 mysql-common (5.7.24-0ubuntu0.16.04.1) ...
正在选中未选择的软件包 libaio1:amd64。
正准备解包 .../libaio1_0.3.110-2_amd64.deb ...
正在解包 libaio1:amd64 (0.3.110-2) ...
正在选中未选择的软件包 mysql-client-core-5.7。
正准备解包 .../mysql-client-core-5.7_5.7.24-0ubuntu0.16.04.1_amd64.deb ...
正在解包 mysql-client-core-5.7 (5.7.24-0ubuntu0.16.04.1) ...
正在选中未选择的软件包 mysql-client-5.7。
正准备解包 .../mysql-client-5.7_5.7.24-0ubuntu0.16.04.1_amd64.deb ...
正在解包 mysql-client-5.7 (5.7.24-0ubuntu0.16.04.1) ...
正在选中未选择的软件包 mysql-server-core-5.7。
正准备解包 .../mysql-server-core-5.7_5.7.24-0ubuntu0.16.04.1_amd64.deb ...
正在解包 mysql-server-core-5.7 (5.7.24-0ubuntu0.16.04.1) ...
正在选中未选择的软件包 libevent-core-2.0-5:amd64。
正准备解包 .../libevent-core-2.0-5_2.0.21-stable-2ubuntu0.16.04.1_amd64.deb ...
正在解包 libevent-core-2.0-5:amd64 (2.0.21-stable-2ubuntu0.16.04.1) ...
正在处理用于 libc-bin (2.23-0ubuntu10) 的触发器 ...
正在处理用于 man-db (2.7.5-1) 的触发器 ...
正在设置 mysql-common (5.7.24-0ubuntu0.16.04.1) ...
update-alternatives: 使用 /etc/mysql/my.cnf.fallback 来在自动模式中提供 /etc/mysql/my.cnf (my.cnf)
正在选中未选择的软件包 mysql-server-5.7。
(正在读取数据库 ... 系统当前共安装有 220543 个文件和目录。)
正准备解包 .../mysql-server-5.7_5.7.24-0ubuntu0.16.04.1_amd64.deb ...
正在解包 mysql-server-5.7 (5.7.24-0ubuntu0.16.04.1) ...
正在选中未选择的软件包 libhtml-template-perl。
正准备解包 .../libhtml-template-perl_2.95-2_all.deb ...
正在解包 libhtml-template-perl (2.95-2) ...
正在选中未选择的软件包 mysql-server。
正准备解包 .../mysql-server_5.7.24-0ubuntu0.16.04.1_all.deb ...
正在解包 mysql-server (5.7.24-0ubuntu0.16.04.1) ...
正在处理用于 ureadahead (0.100.0-19) 的触发器 ...
ureadahead will be reprofiled on next reboot
正在处理用于 systemd (229-4ubuntu21.1) 的触发器 ...
正在处理用于 man-db (2.7.5-1) 的触发器 ...
正在设置 libaio1:amd64 (0.3.110-2) ...
正在设置 mysql-client-core-5.7 (5.7.24-0ubuntu0.16.04.1) ...
正在设置 mysql-client-5.7 (5.7.24-0ubuntu0.16.04.1) ...
正在设置 mysql-server-core-5.7 (5.7.24-0ubuntu0.16.04.1) ...
正在设置 libevent-core-2.0-5:amd64 (2.0.21-stable-2ubuntu0.16.04.1) ...
正在设置 mysql-server-5.7 (5.7.24-0ubuntu0.16.04.1) ...
update-alternatives: 使用 /etc/mysql/mysql.cnf 来在自动模式中提供 /etc/mysql/my.cnf (my.cnf)
Renaming removed key_buffer and myisam-recover options (if present)
正在设置 libhtml-template-perl (2.95-2) ...
正在设置 mysql-server (5.7.24-0ubuntu0.16.04.1) ...
正在处理用于 libc-bin (2.23-0ubuntu10) 的触发器 ...
正在处理用于 systemd (229-4ubuntu21.1) 的触发器 ...
正在处理用于 ureadahead (0.100.0-19) 的触发器 ...

二、配置自定义数据存储目录

2.1、关闭数据库

mysqladmin -u root -p shutdown
service mysql stop

2.2、迁移默认数据

默认数据是在安装mysql时就部署完成的,必须迁移
1、创建新数据存储目录

mkdir -p /data/

2、迁移数据存储目录

mv /var/lib/mysql /data

3、设置权限

chown -R /data/mysql

2.3、修改配置

2.3.1、修改mysql配置

mysql5.7版本默认配置文件是 /etc/mysql/mysql.conf.d/mysqld.cnf

vi /etc/mysql/mysql.conf.d/mysqld.cnf

1、修改datadir配置项
将默认数据存储目录

datadir = /var/lib/mysql

修改为自定义数据存储目录

#datadir = /var/lib/mysql

datadir = /data/mysql

2、修改bind-address配置项
将本地mysql访问

bind-address = 127.0.0.1

修改为远端mysql访问,地址为本机ip地址

#bind-address = 127.0.0.1

bind-address = 192.168.0.2

2.3.1、修改apparmor配置

AppArmor 是内核的一个安全增强模块,对程序存取资源进行限制,如果不修改,启动mysql,在journalctl -xe中会报以下错误

kernel: audit: type=1400 audit(1542353824.294:278): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/19325/status" pid=19325 comm="mysqld" requested_mask="r" den

配置方法如下:

vi /etc/apparmor.d/usr.sbin.mysqld

# Allow data dir access
/var/lib/mysql/ r,

/var/lib/mysql/** rwk,

修改为

# Allow data dir access

/var/lib/mysql/ r,

/var/lib/mysql/** rwk,

/data2/mysql/ r,

/data2/mysql/** rwk,

2.4、启动mysql

必须执行下面3个步骤,否则修改不会生效,单独启动mysql依旧会报错。

service apparmor reload
service apparmor restart
service mysql restart

Ubuntu 安装mysql & 自定义数据存储目录的更多相关文章

  1. Ubuntu上更改MySQL数据库数据存储目录

    之前写过一篇博客"MySQL更改数据库数据存储目录",当时的测试环境是RHEL和CentOS,谁想最近在Ubuntu下面更改MySQL数据库数据存储目录时遇到了之前未遇到的问题,之 ...

  2. mysql更改数据存储目录

    具体操作请参考文章 1.http://blog.csdn.net/aaronbai/article/details/1431190 更改数据存储目录时候会出现 ERROR 2002 (HY000): ...

  3. Ubuntu 安装 mysql 并修改数据库目录

    . . . . . 今天折腾了一下午的时间,恢复了无数次虚拟机快照,终于在 Ubuntu 上把 mysql 安装好了. mysql 是从官网下载的:mysql-server_5.7.16-1ubunt ...

  4. MySQL更改数据库数据存储目录

    MySQL数据库默认的数据库文件位于/var/lib/mysql下,有时候由于存储规划等原因,需要更改MySQL数据库的数据存储目录.下文总结整理了实践过程的操作步骤. 1:确认MySQL数据库存储目 ...

  5. MySQL 更改数据库数据存储目录

    MySQL数据库默认的数据库文件位于 /var/lib/mysql 下,有时候由于存储规划等原因,需要更改 MySQL 数据库的数据存储目录. 下文总结整理了实践过程的操作步骤.   1 确认MySQ ...

  6. Windows安装RabbitMQ并设置数据存储目录

    一.安装Elang 下载otp_win64_xx.x.exe,当前使用otp_win64_21.3.exe版本,按步骤完成安装. 下载地址:http://www.erlang.org/download ...

  7. Ubuntu 安装 Mysql 5.6 数据库

    Ubuntu 安装 Mysql 5.6 数据库 1)下载: mysql-5.6.13-debian6.0-x86_64.deb http://dev.mysql.com/downloads/mirro ...

  8. ubuntu安装mysql<服务器>

    服务器 阿里云服务器Ubuntu安装mysql 2014-08-22 21:52 |  coding云 |  7315次阅读 | 11条评论   这里首先吐槽一下阿里云,我作为公司的唯一懂服务器架设的 ...

  9. Nutch的配置(使用MySQL作为数据存储)

    首先先从http://www.apache.org/dyn/closer.cgi/nutch/下载安装包 这里假定nutch的根目录为:${APACHE_NUTCH_HOME} 配置${APACHE_ ...

随机推荐

  1. Java位运算符&、|、^、>>、<<、~、>>>

    如果要搞懂Java中的位运算符,首先要搞懂二进制的运算,之前一篇有介绍详细请看 二进制运算-十进制与二进制的转换 Java中的位运算符有:&(按位与).|(按位或).^(按位异或).>& ...

  2. 关于读写APP.config文件能读却写不了的问题

    今天要求用winform写一个窗口用来读写一个App.config,要对  <appSettings>里面的add key和value进行添加和修改.要实现的效果图如下: -------- ...

  3. Spring事务传播行为中可能的坑点

    一.简介 Spring事务配置及相关说明详见:https://www.cnblogs.com/eric-fang/p/11052304.html.这里说明spring事务的几点注意: 1.默认只会检查 ...

  4. 跟我学SpringCloud | 第二十章:Spring Cloud 之 okhttp

    1. 什么是 okhttp ? okhttp 是由 square 公司开源的一个 http 客户端.在 Java 平台上,Java 标准库提供了 HttpURLConnection 类来支持 HTTP ...

  5. Python学习-列表元组字典操作

    一.列表 列表是Python的基本数据类型之一,它是以 [] 括起来的,内部成员用逗号隔开.里面可以存放各种数据类型. # 例如: list2 = ['jason', 2, (1, 3), ['war ...

  6. android studio 开发环境的搭建

    步骤如下: 下载安装配置JDK(注意配置环境变量JAVA_HOME Path CLASSPATH) 从官网下载Android Studio(可以下载带有SDK版本的) 安装Android Studio ...

  7. linux mint 17编译android 2.3.1错误记录

    有转载这里的也有添加的. ################# Fix 1 ########################## Error: frameworks/base/include/utils ...

  8. c3p0配置记录

    官方文档 : http://www.mchange.com/projects/c3p0/index.html <!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数.Default: 3 ...

  9. 【爬虫小程序:爬取斗鱼所有房间信息】Xpath(多进程版)

    # 本程序亲测有效,用于理解爬虫相关的基础知识,不足之处希望大家批评指正 import requests from lxml import etree from multiprocessing imp ...

  10. 深入集合类系列——ArrayList和Vector的区别

    区别: 1)Vector的方法都是同步的(Synchronized),是线程安全的(thread-safe),而ArrayList的方法不是,由于线程的同步必然要影响性能,因此,ArrayList的性 ...