mkdir /data
chown mysql:mysql /data
主鍵必須包含分區字段,主鍵(id,store_id)。
創建表orders_list2(
?id INT自動增量,
?客戶_姓氏VARCHAR(30),
?store_id INT,
?銷售人員id INT,
?訂單日期日期,
?註意VARCHAR(500),
?主鍵(id,store_id),
?索引idx (id)
)ENGINE = INNODB
?按列表分區(store_id)(
?分區p1
?(1,3,4,17)中的值
?數據目錄= '/data/p1 ',
?分區p2
?(2,12,14)中的值
?數據目錄= '/data/p2 ',
?分區p3
?(6,8,20)中的值
?數據目錄= '/data/p3 ',
?分區p4
?(5,7,9,11,16)中的值
?數據目錄= '/data/p4 ',
?分區p5
?(10,13,15,18)中的值
?數據目錄= '/data/p5 '
);
分區表擴展
更改表orders_list2?添加分區(分區p6值在?(21,22,23)
數據目錄= '/var/lib/MySQL/monitor/orders/P6 '?;
子分區
創建表tb_sub_dir (id INT,購買日期)
ENGINE='MYISAM '
按範圍分區(年份(購買) )
按散列進行子分區(到_天(已購買) ) (
分區p0值小於(1990)?
(
子分區s0
數據目錄= '/data/data_sub1 '
索引目錄= '/data/idx_sub1 ',
子分區s1
數據目錄= '/data/data_sub1 '
索引目錄= '/data/idx_sub1 '
),
分區p1的值小於(2000)?
(
子分區s2
數據目錄= '/data/data_sub2 '
索引目錄= '/data/idx_sub2 ',
子分區s3
數據目錄= '/data/data_sub2 '
索引目錄= '/data/idx_sub2 '
),
分區p2值小於MAXVALUE?
(
子分區s4
數據目錄= '/data/data_sub3 '
索引目錄= '/data/idx_sub3 ',
子分區s5
數據目錄= '/data/data_sub3 '
索引目錄= '/data/idx_sub3 '
)
);
日期字段區分
創建表雇員1(
id INT不為空,
fname VARCHAR(30),
lname VARCHAR(30),
聘用日期不為空默認值' 1970-01-01 ',
分隔日期不為空默認值' 9999-12-31 ',
job_code INT
store_id INT
)
按範圍分區(年份(分隔) ) (
分區p0值小於(1991),
分區p1值小於(1996)、
分區p2值小於(2001),
分區p3值小於最大值
);