我在innodb_memcache.containers中添加了一个InnoDB Memcached映射:

INSERT INTO `containers` (`name`, `db_schema`, `db_table`, `key_columns`, `value_columns`, `flags`, `cas_column`, `expire_time_column`, `unique_idx_name_on_key`) VALUES ('ycn_cloud_battery', 'ycn-cloud', 'battery', 'uuid', 'mah|mah_alive_capacity|mah_charge_capacity|cycle|curr_temperature|average_current|curr_voltage|bms_safety_status|bms_flags|transaction_status|order_id|status|user_id|update_time|create_time|available_status', '0', '0', '0', 'PRIMARY')


然后,InnoDB_Memcached报告InnoDB_Memcached: failed to open table 'ycn-cloud/battery'

仔细检查后,问题出在数据库名称ycn-cloud包含减号char。

如何使InnoDB_Memcached打开数据库?

最佳答案

好吧,我已经解决了我的问题。

InnoDB_Memcached插件直接操作InnoDB数据文件。数据库ycn-cloud在MySQL文件系统中被命名为ycn@002dcloud。因此,将innodb_memcache.containers.db_schema中的ycn-cloud更改为ycn@002dcloud可解决此问题。

关于mysql - MySQL InnoDB_Memcached无法用减号char打开表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42081815/

10-12 16:28