如何重新划分Oracle DB中的现有表?
例如,在MySQL中,您可以使用ALTER TABLE从头开始重新定义分区:
/* MySQL code, not Oracle DB */
ALTER TABLE t1
PARTITION BY HASH(id)
PARTITIONS 8;
我已经在谷歌上搜索了一段时间,但在Oracle中找不到提供此功能的任何内容。
但是它必须是可能的,因为它是正在进行的分区管理的基本功能。
在我的例子中,我正在构建一个历史快照表,并根据快照日期范围进行分区。
每天,我都需要为新的一天添加一个分区,但也需要合并旧的快照分区,因为我们只保存前几个季度
我正在尝试创建现有表的分区,它是说分区没有启用,如何修复它。基本上,我想要创建现有表的分区,这是非常大的,并让我知道如何做,我也不能启用分区使用这个选项。
我就是这样创建分区的
CREATE TABLE public."eMAR_2012" PARTITION OF public."eMAR_201501"
FOR VALUES FROM ('2012-01-01 12:00 AM') TO ('2019-12-31 11:59 PM');
这是我的磁盘分区:
$ sudo fdisk /dev/sda
Welcome to fdisk (util-linux 2.33.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): p
Disk /dev/sda: 186.3 GiB, 200049647616 bytes, 390721968 sectors
Disk model: TOSHIBA MK2035GS