一、innodb系统表空间的简介:

  innodb 系统表空间是由若干个文件组成的,表空间的大小就是对应文件的大小,表空间文件是由innodb_data_file_path

  这人参数来定义的。下面我们来感受一下innodb_data_file_path的写法

  1、表空间由一个12M的ibdata1的文件组成

[mysqld]
innodb_data_file_path =ibdata1:12M

  2、表空间分别由一个12M的ibdata1的文件和一个48M的ibdata2的文件组成,而且ibdata2可以自动的扩展

[mysqld]
innodb_data_file_path=ibdata1:12M;ibdata2:48M:autoextend

二、由表空间的配置推导扩展表空间的方法:

  由于表空间是由多个文件组成的,各个文件大小之和就是表空间的大小,于是引出了两种完全不同的扩展表空间的方案

  1、把表空间文件标记为autoextend(注意只有表空间文件组中的最的一个文件才可以打这个标记),这样mysql就能自动

  增加这个文件的大小,文件的大小增加了表空间的大小也就自然增加了。这种方式可以适用于第一.1目中的例子(它没有

  标记成autoextend)。

  2、由于表空间是由多个表空间文件组成的,也就是说们可以通过增加文件的方式来扩大表空间。

三、针对情况一(之前没有打autoextend标记)的扩展步骤:

  1、关闭mysql服务

shell>systemctl stop mysql

  2、修改mysql实例的配置文件,改innodb_data_file_path=ibdata1:12M 为innodb_data_file_path=ibdata1:12M:autoextend

[mysqld]
innodb_data_file_path=ibdata1:12M:autoextend

  3、启动mysql数据库服务

shell>systemctl start mysql

  

四、针对增加文件的情况:

  这种情况对应着第一.2目中的配置,事实上第一.2目中的配置下,表空间是会自己扩展的,因为有给ibdata2打上autoextend

  标记,由于这里要讲的增加文件扩展表空间,所以就直接开车啦。

  1、由于配置中ibdata2是自动扩展的,在增加新的表空间文件是要先确定一下,ibdata2的大小

shell>ll -h
总用量 173M
.................
-rw-r-----. mysql mysql 12M 9月 : ibdata1
-rw-r-----. mysql mysql 64M 9月 : ibdata2
.................

  可以看到现在的ibdata2已经从配置时的48M增长到64M了。

  2、由于要加入第三个文件ibdata2 不能再有autoextend标记(只能最后一个文件有autoextend标记),这个时候ibdata2

  要写上它的真实大小了;新增加的ibdata3我们可以给它一个初始的大小比如说12M,注意这个时候ibdata3的autoextend

  标记是可选的,我们这里选择给它加上,所以配置文件就要改为

[mysqld]
innodb_data_file_path=ibdata1:12M;ibdata2:64M;ibdata3:12M:autoextend

  3、启动mysql数据库

shell>systemctl start mysql

  4、事实上扩展开空间的步骤就已经完成了,接下来可以看一下效果:

shell>ll -h
总用量 197M
.................
-rw-r-----. mysql mysql 12M 9月 : ibdata1
-rw-r-----. mysql mysql 64M 9月 : ibdata2
-rw-r-----. mysql mysql 12M 9月 : ibdata3
.................

----

----------------------------------------------------------------------

mysql-5.7 扩展innodb系统表空间详解的更多相关文章

  1. mysql-5.7 收缩系统表空间详解

    innodb 系统表空间是一个逻辑上的概念,它的物理表现就是innodb系统表空间文件:在讲扩展系统表空间时我们说到 可以用增加文件,增加autoextend标记 这两种方式来解决:但是问题到了收缩表 ...

  2. 14.7.1 Resizing the InnoDB System Tablespace InnoDB 系统表空间大小

    14.7.1 Resizing the InnoDB System Tablespace InnoDB 系统表空间大小 这个章节描述如何增加或者减少 InnoDB 系统表空间的大小 增加InnoDB ...

  3. 1. 调整InnoDB系统表空间的大小

    1. 调整InnoDB系统表空间的大小 介绍如何增大或减小InnoDB系统表空间的大小 . 1.1 增加InnoDB系统表空间大小 增加InnoDB系统空间最简单的方法就是,在配置文件中配置autoe ...

  4. Oracle表空间详解

    Oracle表空间详解 1.表空间的分类 Oracle数据库把表空间分为两类:系统表空间和非系统表空间. 1.1系统表空间指的是数据库系统创建时需要的表空间,这些表空间在数据库创建时自动创建,是每个数 ...

  5. ORACLE结构体系篇之表空间详解.md

    表空间详解一.系统表空间SYSTEM 表空间是Oracle 数据库最重要的一个表空间,存放了一些DDL 语言产生的信息以及PL/SQL 包.视图.函数.过程等,称之为数据字典,因此该表空间也具有其特殊 ...

  6. 15.3、mysql之InnoDB和MyISAM表空间详解

    15.3.1.InnoDB引擎表空间: 1.表空间分类: 共享表空间: 某一个数据库的所有的表数据,索引文件全部放在一个文件中,默认这个共享表空间的文件路径在 data目录下. 默认的文件名为:ibd ...

  7. innodb系统表空间维护

    环境说明: 有一个在运行中的mysql环境,由于之前的配置文件设置的过于简单(没有配置innodb_data_file_path变更):造成现在系统表空间已经满了 如果innodb_data_file ...

  8. Oracle 表空间详解

    目录 目录 表空间概述 表空间的分类 默认表空间 查看默认的永久表空间 查看默认的TEMP表空间 查看默认的表空间类型 逻辑结构到物理结构的映射 对表空间的操作 查看表空间使用情况 查看数据库拥有的表 ...

  9. MySQL数据库系列(四)- InnoDB下的共享表空间和独立表空间详解

    一.概念 共享表空间: Innodb的所有数据保存在一个单独的表空间里面,而这个表空间可以由很多个文件组成,一个表可以跨多个文件存在,所以其大小限制不再是文件大小的限制,而是其自身的限制.从Innod ...

随机推荐

  1. 查看sedna创建的数据库和集合,文档之类

    在sedna的安装文件夹下.看一下cfg文件夹: <pre name="code" class="plain">[xuzhina@localhost ...

  2. java科学计数法转换成普通计数法

    java科学计数法转换成普通计数法: String sjiachun = "12345E-10"; BigDecimal db = new BigDecimal(sjiachun) ...

  3. Java 程序内存分析

    转自:http://www.iteye.com/topic/528230 java程序内存主要分为了2个部分,包括stack segment(栈内存区).heap segment(堆内存区). 在分析 ...

  4. VMware12 中安装MS-DOS 7.10

    按一下步骤进行安装: 选择虚拟机,然后如下图选择“ 编辑虚拟机设置 ”. 弹出的编辑框中,选择“CD/DVD”中的“使用ISO镜像文件”,然后选择“浏览”,打开MS-DOS7.10.iso的ISO镜像 ...

  5. Gradle修改Maven仓库地址

    博客已经搬家https://www.tianmingxing.com 背景 不知从什么时候大家开始使用gradle管理项目了,随着时间的推移从maven转过来的人肯定越来越多.关于gradle的优势在 ...

  6. 算法笔记_211:第七届蓝桥杯软件类决赛部分真题(Java语言A组)

    目录 1 阶乘位数 2 凑平方数 3 棋子换位 4 机器人塔 前言:以下代码仅供参考,若有错误欢迎指正哦~ 1 阶乘位数 阶乘位数 9的阶乘等于:362880 它的二进制表示为:10110001001 ...

  7. 使用web_url注意Resource的选项

    在使用web_url的时候,一定注意Resource的使用,一般最好使用Resource=0,如果使用Resource=1,那么一定要修改配置. Resource Attribute If Resou ...

  8. 转:Tkinter教程之Text(2)篇

    '''Tkinter教程之Text(2)篇''''''6.使用tag来指定文本的属性'''#创建一个指定背景颜色的TAG# -*- coding: cp936 -*-from Tkinter impo ...

  9. FIS3常用配置

    FIS3常用配置: //作用:启用 fis-spriter-csssprites 插件,便于对png图片进行雪碧图合并 fis.match('::package', { spriter: fis.pl ...

  10. 剑指offer(2) - 二维数组中的查找

    题目: 在一个二维数组中.每一行都依照从左到右递增的顺序排序,每一列都依照从上往下递增的顺序排序.请写一个函数,输入一个二维数组和一个整数,推断数组中是否含有该整数. 比如以下的二维数组就是每行.每列 ...