oracle 数据库分区
来源:互联网 发布:软件项目管理制度 编辑:程序博客网 时间:2024/06/05 14:08
1.查看当前数据库是否可以分区,以下语法查询结果为true,则可以分区:
select * from v$option where parameter='Partitioning';
2.创建分区:以下创建的分区是以月份为单位的间隔分区以后会自动创建分区
drop table TABLE1;
CREATE TABLE fq_tb1
(
TABLE_ID NUMBER(8) primary key,
SUB_DATE DATE
)
PARTITION BY RANGE(SUB_DATE)
INTERVAL(NUMTOYMINTERVAL(1,'MONTH'))
(
PARTITION p_y2016_m09 VALUES LESS THAN(TO_DATE('2016-09-01','YYYY-MM-DD')));
3.对分区表的维护和管理包括如下操作:
1) 增加分区。
ALTER TABLE TABLE_NAME ADD PARTITION P_NEW1 VALUES LESS THAN (200409) TABLESPACE TS_NEW;
2) 删除不必要的分区。
ALTER TABLE TABLE_NAME DROP PARTITION PART_OLD1;
3) 分区合并。
ALTER TABLE TABLE_NAME MERGE PARTITIONS P_NEW1, P_NEW2 INTO PARTITION P_ALL
4) 拆分分区。
ALTER TABLE TABLE_NAME SPLIT PARTITION P_200409 AT (200409) INTO (PARTITION P_200409_1 TABLESPACE TS_ZIKEN, PARTITION P_200409_2 TABLESPACE TS_ZIKEN_IDX);
5) 分区改名。
ALTER TABLE TABLE_NAME RENAME PARTITION P_1 TO P_2;
6) 将分区改表空间。
ALTER TABLE BILL_MONTHFEE_ZERO MOVE PARTITION P_200409 TABLESPACE TS_NEW;
7) 分区的EXPORT。
EXP SALES/SALES_PASSWORD TABLES=BB_SERVICE_RELATION_T:PART_089 ROWS=Y
8) 分区的IMPORT。
IMP SALES/SALES_PASSWORD FILE =SALES1999_Q1.DMP TABLES = (BB_SERVICE_RELATION_T:PART_089) IGNORE=Y
9) 表的分区信息,可查看数据字典USER_EXTENTS。
SELECT * FROM USER_EXTENTS WHERE SEGMENT_NAME=’BB_SERVICE_RELATION_T’;
10) 表的清空。
ALTER TABLE TABLE_NAME TRUNCATE PARTITION P_1;
11) 分区的交换。
ALTER TABLE T_NEW EXCHANGE PARTITION P1 WITH TABLE T;
reference:
显示分区表信息
显示数据库所有分区表的信息:DBA_PART_TABLES
显示当前用户可访问的所有分区表信息:ALL_PART_TABLES
显示当前用户所有分区表的信息:USER_PART_TABLES
显示表分区信息 显示数据库所有分区表的详细分区信息:DBA_TAB_PARTITIONS
显示当前用户可访问的所有分区表的详细分区信息:ALL_TAB_PARTITIONS
显示当前用户所有分区表的详细分区信息:USER_TAB_PARTITIONS
显示子分区信息 显示数据库所有组合分区表的子分区信息:DBA_TAB_SUBPARTITIONS
显示当前用户可访问的所有组合分区表的子分区信息:ALL_TAB_SUBPARTITIONS
显示当前用户所有组合分区表的子分区信息:USER_TAB_SUBPARTITIONS
显示分区列 显示数据库所有分区表的分区列信息:DBA_PART_KEY_COLUMNS
显示当前用户可访问的所有分区表的分区列信息:ALL_PART_KEY_COLUMNS
显示当前用户所有分区表的分区列信息:USER_PART_KEY_COLUMNS
显示子分区列 显示数据库所有分区表的子分区列信息:DBA_SUBPART_KEY_COLUMNS
显示当前用户可访问的所有分区表的子分区列信息:ALL_SUBPART_KEY_COLUMNS
显示当前用户所有分区表的子分区列信息:USER_SUBPART_KEY_COLUMN
select * from v$option where parameter='Partitioning';
2.创建分区:以下创建的分区是以月份为单位的间隔分区以后会自动创建分区
drop table TABLE1;
CREATE TABLE fq_tb1
(
TABLE_ID NUMBER(8) primary key,
SUB_DATE DATE
)
PARTITION BY RANGE(SUB_DATE)
INTERVAL(NUMTOYMINTERVAL(1,'MONTH'))
(
PARTITION p_y2016_m09 VALUES LESS THAN(TO_DATE('2016-09-01','YYYY-MM-DD')));
3.对分区表的维护和管理包括如下操作:
1) 增加分区。
ALTER TABLE TABLE_NAME ADD PARTITION P_NEW1 VALUES LESS THAN (200409) TABLESPACE TS_NEW;
2) 删除不必要的分区。
ALTER TABLE TABLE_NAME DROP PARTITION PART_OLD1;
3) 分区合并。
ALTER TABLE TABLE_NAME MERGE PARTITIONS P_NEW1, P_NEW2 INTO PARTITION P_ALL
4) 拆分分区。
ALTER TABLE TABLE_NAME SPLIT PARTITION P_200409 AT (200409) INTO (PARTITION P_200409_1 TABLESPACE TS_ZIKEN, PARTITION P_200409_2 TABLESPACE TS_ZIKEN_IDX);
5) 分区改名。
ALTER TABLE TABLE_NAME RENAME PARTITION P_1 TO P_2;
6) 将分区改表空间。
ALTER TABLE BILL_MONTHFEE_ZERO MOVE PARTITION P_200409 TABLESPACE TS_NEW;
7) 分区的EXPORT。
EXP SALES/SALES_PASSWORD TABLES=BB_SERVICE_RELATION_T:PART_089 ROWS=Y
8) 分区的IMPORT。
IMP SALES/SALES_PASSWORD FILE =SALES1999_Q1.DMP TABLES = (BB_SERVICE_RELATION_T:PART_089) IGNORE=Y
9) 表的分区信息,可查看数据字典USER_EXTENTS。
SELECT * FROM USER_EXTENTS WHERE SEGMENT_NAME=’BB_SERVICE_RELATION_T’;
10) 表的清空。
ALTER TABLE TABLE_NAME TRUNCATE PARTITION P_1;
11) 分区的交换。
ALTER TABLE T_NEW EXCHANGE PARTITION P1 WITH TABLE T;
reference:
显示分区表信息
显示数据库所有分区表的信息:DBA_PART_TABLES
显示当前用户可访问的所有分区表信息:ALL_PART_TABLES
显示当前用户所有分区表的信息:USER_PART_TABLES
显示表分区信息 显示数据库所有分区表的详细分区信息:DBA_TAB_PARTITIONS
显示当前用户可访问的所有分区表的详细分区信息:ALL_TAB_PARTITIONS
显示当前用户所有分区表的详细分区信息:USER_TAB_PARTITIONS
显示子分区信息 显示数据库所有组合分区表的子分区信息:DBA_TAB_SUBPARTITIONS
显示当前用户可访问的所有组合分区表的子分区信息:ALL_TAB_SUBPARTITIONS
显示当前用户所有组合分区表的子分区信息:USER_TAB_SUBPARTITIONS
显示分区列 显示数据库所有分区表的分区列信息:DBA_PART_KEY_COLUMNS
显示当前用户可访问的所有分区表的分区列信息:ALL_PART_KEY_COLUMNS
显示当前用户所有分区表的分区列信息:USER_PART_KEY_COLUMNS
显示子分区列 显示数据库所有分区表的子分区列信息:DBA_SUBPART_KEY_COLUMNS
显示当前用户可访问的所有分区表的子分区列信息:ALL_SUBPART_KEY_COLUMNS
显示当前用户所有分区表的子分区列信息:USER_SUBPART_KEY_COLUMN
0 0
- oracle数据库表分区
- oracle数据库分区
- ORACLE数据库表分区
- oracle数据库和分区
- Oracle数据库分区存储
- Oracle数据库分区技术
- 数据库 Oracle分区介绍
- 数据库 Oracle分区介绍
- oracle 数据库分区
- Oracle数据库表分区
- oracle数据库表分区
- 数据库:Oracle分区之三:索引分区
- Oracle数据库表分区介绍
- Oracle数据库表分区介绍
- 读书笔记:Oracle数据库之【分区】
- Oracle 数据库表分区的策略
- 全面剖析Oracle数据库中的分区功能
- 全面剖析Oracle数据库中的分区功能
- php 基础之GD库
- python dom方法遍历某文件夹下所有xml
- Stanford NLP 安装与初步使用
- android之Toolbar取消子控件左边留白
- [李景山php]每天laravel-20161103|CompilerEngine.php-2
- oracle 数据库分区
- mac的svn之cornerstone简易使用
- 《React-Native系列》26、 ReactNative实现图片上传功能
- MSSQL之二十一 存储过程案例
- Android Menu
- LeetCode 191 Number of 1 Bits (位运算)
- SpringMVC整合MyBatista
- 版本控制的重要性
- 电阻热噪声