MySQL Error number: MY-010871; Symbol: ER_INNODB_ILLEGAL_COLON_IN_POOL; SQLSTATE: HY000

文档解释

Error number: MY-010871; Symbol: ER_INNODB_ILLEGAL_COLON_IN_POOL; SQLSTATE: HY000

Message: InnoDB: innodb_buffer_pool_filename cannot have colon (:) in the file name.

MY-010871; ER_INNODB_ILLEGAL_COLON_IN_POOL; 错误代码HY000指示MySQL服务器在池设置中遇到了非法冒号.

错误说明

该错误是在MySQL InnoDB存储引擎使用中遇到的。MySQL InnoDB存储引擎是MySQL数据库里使用的一种存储引擎,而当使用者尝试将InnoDB存储引擎的池设置(pool)调整为其他值时,就会收到该错误消息,比如:

SET GLOBAL innodb_buffer_pool_size = ‘256M:128M;

上面的语句是将InnoDB存储引擎的池设置(pool)大小调整为256M,而该指令中的冒号被MySQL所识别,故而抛出了错误消息:

ERROR 1298 (HY000): Incorrect diner: ‘256M:128M’ for innodb_buffer_pool_size;

常见案例

当使用MySQL InnoDB存储引擎,并试图调整InnoDB存储引擎的池设置(pool)时,都有可能出现此错误。如:

SET GLOBAL innodb_buffer_pool_size = ‘256M:128M;

解决方法

1. 网上现有的资料提到,解决这个错误的最简单的办法就是使用这些参数:

innodb_buffer_pool_size

innodb_log_file_size

innodb_log_buffer_size

这三个参数所提供的值不能使用冒号。

2. 所以,要解决这样的错误,就需要保证只输入普通数字而不带有其他字符,将这些参数值拆分成多行输入-比如上面的例子:

SET GLOBAL innodb_buffer_pool_size = ‘256M’;

SET GLOBAL innodb_log_file_size = ‘128M’;

这样就可以避免出现这个错误。

你可能感兴趣的