CREATE TABLE `yy_subscribe2` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`user_id` int(10) unsigned NOT NULL comment '用户id',
`book_id` int(10) unsigned NOT NULL comment '小说id',
`chapter_id` int(10) unsigned NOT NULL comment '章节id',
PRIMARY KEY (`id`),
key book_id(book_id),
key user_id(user_id),
key chapter_id(chapter_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
PARTITION BY RANGE (user_id)
(
PARTITION s0 values LESS THAN (100000),
PARTITION s1 values LESS THAN (200000),
PARTITION s2 values LESS THAN (300000),
PARTITION s3 values LESS THAN (400000),
PARTITION s4 values LESS THAN (500000),
PARTITION s5 values LESS THAN (600000),
PARTITION s6 values LESS THAN (700000),
PARTITION s7 values LESS THAN (800000),
PARTITION s8 values LESS THAN (900000),
PARTITION s9 values LESS THAN (1000000),
PARTITION s10 values LESS THAN (1100000),
PARTITION s11 values LESS THAN (1200000),
PARTITION s12 values LESS THAN (1300000),
PARTITION s13 values LESS THAN (1400000),
PARTITION s999 values LESS THAN MAXVALUE
);
mysql melaporkan ralat ini semasa membuat partition: Untuk partition RANGE setiap partition mesti ditakrifkan.
Apa sebabnya?
Selain itu, ini adalah borang langganan bab untuk novel. Digunakan untuk merekod bab mana buku yang telah dilanggan oleh pengguna. Pada masa ini terdapat 3000W data. Pengindeksan telah pun dilakukan. Adakah penggunaan partition yang dirancang mempunyai kesan ke atas pertumbuhan data seterusnya? Atau gunakan kaedah lain tanpa pembahagian?
Saya belum lagi bermain dengan membuat partition dalam MySQL Adakah mungkin anda membuat kesilapan dalam sintaks Selain itu, untuk keperluan langganan, nampaknya kini disyorkan untuk menggunakan NoSQL seperti redis.