问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

怎么在mysql表中创建分区表

发布网友 发布时间:2022-04-22 23:58

我来回答

2个回答

懂视网 时间:2022-04-08 07:38

  [root@localhost ~]# /etc/init.d/mysqld stop

  Shutting down MySQL.[确定]

   2、修改 /etc/my.cnf配置文件

  [root@localhost ~]# vi /etc/my.cnf

  [mysqld]

  innodb_file_per_table = 1

  3、启动Mysql

  [root@localhost ~]# /etc/init.d/mysqld start

  Starting MySQL..[确定]

  4、连接到Mysql数据库

  [root@localhost ~]# mysql -uroot -p

  Enter password: 

  Welcome to the MySQL monitor.  Commands end with ; or g.

  Your MySQL connection id is 1

  Server version: 5.5.22-log Source distribution

  Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

  Oracle is a registered trademark of Oracle Corporation and/or its

  affiliates. Other names may be trademarks of their respective

  owners.

  Type ‘help;‘ or ‘h‘ for help. Type ‘c‘ to clear the current input statement.

  mysql> show databases;

      +--------------------+

      | Database           |

      +--------------------+

      | information_schema |

      | dbmonitor          |

      | mysql              |

      | performance_schema |

      | test               |

      +--------------------+

     5 rows in set (0.01 sec)

  mysql> show plugins;

    +-----------------------+--------+--------------------+---------+---------+

    | Name                  | Status | Type               | Library | License |

    +-----------------------+--------+--------------------+---------+---------+

    | binlog                | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |

    | mysql_native_password | ACTIVE | AUTHENTICATION     | NULL    | GPL     |

    | mysql_old_password    | ACTIVE | AUTHENTICATION     | NULL    | GPL     |

    | MEMORY                | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |

    | MRG_MYISAM            | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |

    | MyISAM                | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |

    | CSV                   | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |

    | InnoDB                | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |

    | INNODB_TRX            | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |

    | INNODB_LOCKS          | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |

    | INNODB_LOCK_WAITS     | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |

    | INNODB_CMP            | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |

    | INNODB_CMP_RESET      | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |

    | INNODB_CMPMEM         | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |

    | INNODB_CMPMEM_RESET   | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |

    | PERFORMANCE_SCHEMA    | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |

    | partition             | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |

    +-----------------------+--------+--------------------+---------+---------+

  mysql> use dbmonitor;

  Database changed

  5、创建分区表(history_text):

  mysql> create table history_text

  (

    id bigint(20) unsigned default null,

    itemid bigint(20) unsigned default null,

    clock int(11) default 0,

    value text default null,

    ns int(11) default 0,

    index itemid_idx (itemid),

    primary key(id,clock)

  ) engine=Innodb

  partition by range (clock)

  (

    partition p1_201502 values less than (unix_timestamp(‘2015-03-01‘)),

    partition p1_201503 values less than (unix_timestamp(‘2015-04-01‘)),

    partition p1_201504 values less than (unix_timestamp(‘2015-05-01‘)),

    partition p1_201505 values less than (unix_timestamp(‘2015-06-01‘)),

    partition p1_201506 values less than (unix_timestamp(‘2015-07-01‘)),

    partition p1_201507 values less than (unix_timestamp(‘2015-08-01‘)),

    partition p1_201508 values less than (unix_timestamp(‘2015-09-01‘)),

    partition p1_201509 values less than (unix_timestamp(‘2015-10-01‘)),

    partition p1_201510 values less than (unix_timestamp(‘2015-11-01‘)),

    partition p1_201511 values less than (unix_timestamp(‘2015-12-01‘)),

    partition p1_201512 values less than (unix_timestamp(‘2016-01-01‘)),

    partition p1_201601 values less than (unix_timestamp(‘2016-02-01‘)),

    partition p1_201602 values less than (unix_timestamp(‘2016-03-01‘)),

    partition p1_201603 values less than (unix_timestamp(‘2016-04-01‘)),

    partition p1_201604 values less than (unix_timestamp(‘2016-05-01‘)),

    partition p1_201605 values less than (unix_timestamp(‘2016-06-01‘)),

    partition p1_201606 values less than (unix_timestamp(‘2016-07-01‘)),

    partition p1_201607 values less than (unix_timestamp(‘2016-08-01‘)),

    partition p1_201608 values less than (unix_timestamp(‘2016-09-01‘)),

    partition p1_201609 values less than (unix_timestamp(‘2016-10-01‘)),

    partition p1_201610 values less than (unix_timestamp(‘2016-11-01‘)),

    partition p1_201611 values less than (unix_timestamp(‘2016-12-01‘)),

    partition p1_other_all values less than maxvalue

  );


    mysql>alter table history_text add primary key(id,clock);

  6、检查数据数据库配置参数是否生效。

    [root@localhost data]# ll
    总计 10900348
    drwx------ 2 mysql mysql       4096 03-20 09:40 dbmonitor
    -rw-rw---- 1 mysql mysql 7266631680 03-20 10:29 ibdata1
    -rw-rw---- 1 mysql mysql    5242880 03-20 10:30 ib_logfile0
    -rw-rw---- 1 mysql mysql    5242880 03-20 10:30 ib_logfile1
    drwxr-xr-x 2 mysql root        4096 03-18 00:18 mysql
    -rw-rw---- 1 mysql mysql      27338 03-18 00:18 mysql-bin.000001
    [root@localhost ~]# cd /usr/local/mysql/data/dbmonitor/
    [root@localhost dbmonitor]# ll
    总计 5112
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201503.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:34 history_text#P#p1_201504.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201505.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 10:06 history_text#P#p1_201506.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201507.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201508.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201509.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201510.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201511.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201512.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201601.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201602.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201603.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201604.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201605.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201606.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201607.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201608.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201609.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201610.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201611.ibd
    -rw-rw---- 1 mysql mysql 131072 03-18 09:35 history_text#P#p1_other_all.ibd

  7、查看分区表。
    mysql> select table_name, partition_name from information_schema.partitions
    -> where table_schema=‘dbmonitor‘ and table_name=‘history_text‘;
    +--------------+----------------+
    | table_name   | partition_name |
    +--------------+----------------+
    | history_text | p1_201503      |
    | history_text | p1_201504      |
    | history_text | p1_201505      |
    | history_text | p1_201506      |
    | history_text | p1_201507      |
    | history_text | p1_201508      |
    | history_text | p1_201509      |
    | history_text | p1_201510      |
    | history_text | p1_201511      |
    | history_text | p1_201512      |
    | history_text | p1_201601      |
    | history_text | p1_201602      |
    | history_text | p1_201603      |
    | history_text | p1_201604      |
    | history_text | p1_201605      |
    | history_text | p1_201606      |
    | history_text | p1_201607      |
    | history_text | p1_201608      |
    | history_text | p1_201609      |
    | history_text | p1_201610      |
    | history_text | p1_201611      |
    | history_text | p1_other_all   |
    +--------------+----------------+
    22 rows in set (0.01 sec)

    8、插入数据测试分区表。

    mysql> delimiter //

    mysql> create procedure insert_history()
        begin
           declare var int;
        set var=0;
        while var<100000 do
        insert into history_text values(var,var,1430496000,var,var);
        set var=var+1;
        end while;
        end;
        //


    mysql> delimiter ;

    mysql> call insert_test();

    Query OK, 1 row affected (2 min 46.97 sec)

  9、查看数据文件大小的变化。

[root@localhost data]# cd dbmonitor/
[root@localhost dbmonitor]# ll
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201503.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:34 history_text#P#p1_201504.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201505.ibd
-rw-rw---- 1 mysql mysql 19922944 03-20 10:54 history_text#P#p1_201506.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201507.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201508.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201509.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201510.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201511.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201512.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201601.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201602.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201603.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201604.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201605.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201606.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201607.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201608.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201609.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201610.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:21 history_text#P#p1_201611.ibd
-rw-rw---- 1 mysql mysql   131072 03-18 09:35 history_text#P#p1_other_all.ibd

    

[root@localhost data]# ll
总计 10919648
drwx------ 2 mysql mysql       4096 03-20 09:40 dbmonitor
-rw-rw---- 1 mysql mysql 7266631680 03-20 10:55 ibdata1
-rw-rw---- 1 mysql mysql    5242880 03-20 10:55 ib_logfile0
-rw-rw---- 1 mysql mysql    5242880 03-20 10:55 ib_logfile1
drwxr-xr-x 2 mysql root        4096 03-18 00:18 mysql
-rw-rw---- 1 mysql mysql      27338 03-18 00:18 mysql-bin.000001
-rw-rw---- 1 mysql mysql    1031892 03-18 00:18 mysql-bin.000002
-rw-rw---- 1 mysql mysql        126 03-18 00:23 mysql-bin.000003
-rw-rw---- 1 mysql mysql        126 03-18 00:25 mysql-bin.000004
-rw-rw---- 1 mysql mysql  703646366 03-18 00:58 mysql-bin.000005
-rw-rw---- 1 mysql mysql 1074397884 03-18 02:48 mysql-bin.000006
-rw-rw---- 1 mysql mysql 1073854162 03-18 04:00 mysql-bin.000007
-rw-rw---- 1 mysql mysql  973199491 03-18 04:43 mysql-bin.000008
-rw-rw---- 1 mysql mysql        126 03-18 09:19 mysql-bin.000009
-rw-rw---- 1 mysql mysql   41826406 03-18 11:01 mysql-bin.000010
-rw-rw---- 1 mysql mysql        126 03-18 11:06 mysql-bin.000011
-rw-rw---- 1 mysql mysql        126 03-18 14:03 mysql-bin.000012
-rw-rw---- 1 mysql mysql       2175 03-18 16:48 mysql-bin.000013
-rw-rw---- 1 mysql mysql        107 03-18 23:06 mysql-bin.000014
-rw-rw---- 1 mysql mysql        107 03-19 08:49 mysql-bin.000015
-rw-rw---- 1 mysql mysql    5720758 03-20 10:29 mysql-bin.000016
-rw-rw---- 1 mysql mysql   19741312 03-20 10:55 mysql-bin.000017
-rw-rw---- 1 mysql mysql        323 03-20 10:30 mysql-bin.index
drwx------ 2 mysql mysql       4096 03-18 00:18 performance_schema
drwxr-xr-x 2 mysql root        4096 03-18 15:14 test

注释:发现只有单独的表空间数据文件在增大,mysql的元数据文件不变化。

10、删除分区表中的数据,减少数据文件的大小,清理空间。

mysql> alter table history_text truncate partition p1_201506;

Query OK, 0 rows affected (0.09 sec)

[root@localhost dbmonitor]# ll
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201503.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:34 history_text#P#p1_201504.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201505.ibd
-rw-rw---- 1 mysql mysql 131072 03-20 11:01 history_text#P#p1_201506.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201507.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201508.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201509.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201510.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201511.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201512.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201601.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201602.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201603.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201604.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201605.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201606.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201607.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201608.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201609.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201610.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:21 history_text#P#p1_201611.ibd
-rw-rw---- 1 mysql mysql 131072 03-18 09:35 history_text#P#p1_other_all.ibd


本文出自 “一念花开” 博客,请务必保留此出处http://lilingfeng.blog.51cto.com/5671021/1675560

Mysql5.6—分区表及独享表空间

标签:copyright   password   version   welcome   oracle   

热心网友 时间:2022-04-08 04:46

frm表结构文件,myd表数据文件,myi表索引文件。
INNODB engine对应的表物理存储文件
innodb的数据库的物理文件结构为:
.frm文件
.ibd文件和.ibdata文件:
这两种文件都是存放innodb数据的文件,之所以用两种文件来存放innodb的数据,是因为innodb的数据存储方式能够通过配置来决定是使用共享表空间存放存储数据,还是用独享表空间存放存储数据。
独享表空间存储方式使用.ibd文件,并且每个表一个ibd文件
共享表空间存储方式使用.ibdata文件,所有表共同使用一个ibdata文件
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
华硕笔记本电脑触摸板怎么开笔记本电脑触摸板怎么开启和关闭_百度知 ... 陕西职务侵占案立案准则 结婚后我的恋情维系了十年,怎么做到的? 玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 SQLSERVER 即将存储大量的数据,怎么设计表好点? SQL server 表分区问题,大家帮忙看看吧,谢啦 sqlserver 2012 怎么建立分区 sqlserver2008怎么实现自动分区表 如何对一个已经存在的SQL Server表分区 如何使用SQLServer数据库按月创建表分区 sql server怎么建立分区表 求救!!!为什么我下载的软件都是文件夹形式 下载文件夹加密软件,急求哇? *文件夹加密软a件下载? 如何下载文件夹加密软件 谁知道 根据下载路径创建本地文件夹的下载软件? 18款宝马3GT招回什么意思 下载了的软件在哪个文件夹里 豪华车和跑车中的GT是啥意思? 下载到手机u盘上的软在哪个文件夹? 怪物猎人3gT10是什么意思? 圆弧齿同步带轮 S3M和3GT是什么区别啊? 交了订金了宝马3gt 有没有电子版的使用手册,先看看,谢谢了 pt950 JD01 3GT是什么意思? 在SQL 中怎么创建表格? 如何利用MySQL数据库命令创建和查看分区情况 如何对已经存在的数据表进行分区 请教关于SQLSERVER表分区的应用。 数据库表分区优化 SQL server 怎样可以让一个数据库用几个磁盘分区 如何每天创建一个表分区 db2数据库 怎么按日或者按月 自动创建表分区? 如何建立DB2分区数据库 小鸡腿的家常做法是什么? 小鸡腿怎么样做好吃 小鸡腿怎么烧比较好吃? 炒鸡腿怎么炒 怎样做小鸡腿,更好吃 如何做出美味的红烧小鸡腿,简单易学 B2驾驶证每年都要年检吗? b2驾驶证几年审一次? 驾驶证B2到期后多久可以审? B2驾照多久审一次? 说一下B2驾驶证年检流程,谢谢。