Så du kan inte ändra en befintlig icke-partitionerad tabell till en partitionerad tabell.
Du måste skapa en ny tabell (med ett annat namn) som är partitionerad, skapa alla nödvändiga partitioner och sedan kopiera data från den gamla tabellen till den nya, partitionerade tabellen.
Något i stil med:
create table clients_partitioned
(
.... all columns ...
)
PARTITION BY LIST (client_id);
Skapa sedan partitionerna:
create table clients_1
partition of clients_partioned
values in (1,2,3);
create table clients_1
partition of clients_partioned
values in (4,5,6);
Kopiera sedan data:
insert into clients_partitioned
select *
from clients;
När det är gjort kan du släppa den gamla tabellen och byta namn på den nya tabellen:
drop table clients;
alter table clients_partitioned rename to clients;
Glöm inte att återskapa dina främmande nycklar och index.