之前曾經提過 HandlerSocket – A NoSQL Plugin for MySQL,可以透過類似 NoSQL 的方式存取 InnoDB,效能會比普通 SQL 更好。後來 Oracle 在 MySQL 5.5 推出的時候,直接使用 Memcached Protocol,理論上應該是更方便(因為 Memcached Adapter 到處都有…)。
於是最近仔細的研究了一下,發現要使用 MySQL 5.5 的 InnoDB Memcached Plugin,要注意以下的地方:
- 如果要使用自行指定的 Table,需要參考 Internals of the InnoDB memcached Plugin,在
innodb_memcache.containers
設定 key 與 column 的對應表。 - 預設是使用
containers
Table 裡面 name 為default
的 Table。 - 如果要指定 Table,要在 GET 或 SET 指令前,下
GET @@name
或SET @@name
將之後的 Request 都切換到name
這個 Table。 - 如果需要 Replication,記得要設定
innodb_api_enable_binlog
這個值。
大概重點就這些了,如果還有玩到別的再來補充。