MyISAM修改成InnoDB有时会提示Index column size too large. The maximum column size is 767 bytes

MySql修改数据引擎

这是因为索引的字段太长

1,检查一下是不是数据库被限制了索引的大小

mysql> show variables like '%innodb_large_prefix%';

+---------------------+-------+

| Variable_name       | Value |

+---------------------+-------+

| innodb_large_prefix | OFF   |

+---------------------+-------+

1 row in set

2,查询的值是OFF的话,修改为ON

mysql> set global innodb_large_prefix=on;

Query OK, 0 rows affected

 

3,再次查看是否被限制了索引的大小

mysql> show variables like '%innodb_large_prefix%';

+---------------------+-------+

| Variable_name       | Value |

+---------------------+-------+

| innodb_large_prefix | ON    |

+---------------------+-------+

4,查看当前的innodb_file_format引擎格式类型是不是BARRACUDA

mysql> SHOW variables like 'innodb_file_format';

+--------------------+----------+

| Variable_name      | Value    |

+--------------------+----------+

| innodb_file_format | Antelope |

+--------------------+----------+

1 row in set

5,如果不是的话则需要修改

mysql> SET GLOBAL innodb_file_format = BARRACUDA;

Query OK, 0 rows affected

6,再次查询一下是否已修改为BARRACUDA

mysql> SHOW variables like 'innodb_file_format';

+--------------------+-----------+

| Variable_name      | Value     |

+--------------------+-----------+

| innodb_file_format | Barracuda |

+--------------------+-----------+

1 row in set

 

修改完成,可以执行了

 

参考https://www.cnblogs.com/hl15/p/8951900.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值