Mysql之Specified key was too long; max key length is 767 bytes-yellowcong

标签: mysql
20人阅读 评论(0) 收藏 举报
分类:

今天导数据库的时候,抽风,报了这个错,当时找了资料,也没太好用啊,导致这个问题的原因索引的字段都太长了,mysql受不了,解决方法就是,让mysql支持比较长的索引,然后在插入表的时候,添加ROW_FORMAT=DYNAMIC ,自动格式化索引。

ERROR 1071 (42000): Specified key was too long; max key length is 767 bytes

这里写图片描述

查看数据库信息

show variables like 'innodb_large_prefix';  
show variables like 'innodb_file_format';

--修改最大索引长度限制
set global innodb_large_prefix=1; 
set global innodb_file_format=BARRACUDA;
-- 添加
set global innodb_file_format_max=BARRACUDA;

这里写图片描述

这里写图片描述

2、修改插入sql的语句添加ROW_FORMAT=DYNAMIC

create table idx_length_test_02
(
  id int auto_increment primary key,
  name varchar(255)
) 
ROW_FORMAT=DYNAMIC default charset utf8mb4;

这里写图片描述

参考文章

https://help.aliyun.com/knowledge_detail/41707.html

查看评论

[MySQL] specified key was too long max key length is 767bytes

一、问题描述描述:创建唯一索引时,数据库报错: specified key was too long max key length is 767bytes 数据库版本:5.5.22-log引擎: ...
  • u012099869
  • u012099869
  • 2016-12-22 15:29:37
  • 1513

#1071 - Specified key was too long; max key length is 767 bytes

#1071 - Specified key was too long; max key length is 767 bytes
  • angelina_zf
  • angelina_zf
  • 2017-08-16 09:43:02
  • 420

MySQL-001-specified key was too long ; max key length is 767 bytes

我们先分析下这是个什么问题:指定的键太长了,键的最大长度是767字节。这是我在往MySQL里跑数据库脚本的时候遇到的!这是我从服务器上down下来的,服务器就是用的MySQL,为什么本地不行呢?所以脚...
  • geshicuowu
  • geshicuowu
  • 2016-09-21 16:56:07
  • 893

MySQL:Specified key was too long; max key length is 767 bytes

下面的SQL语句 CREATE TABLE subscription ( subscriptionid varchar(767) NOT NULL PRIMARY KEY, params blob, ...
  • gaotong2055
  • gaotong2055
  • 2013-11-19 15:50:50
  • 8962

Hive 创建表提示"Specified key was too long; max key length is 767 bytes"解决办法

Hive> CREATE TABLE dummy(value STRING); FAILED: Execution Error, return code 1 from org.apache.hado...
  • KelJony
  • KelJony
  • 2015-02-01 15:40:31
  • 7727

关于Django出现Specified key was too long; max key length is 767 bytes的解决办法

最近在开发Django网站,但是当我从腾讯蓝鲸上面将代码签到本地运行的时候,系统提示运行python manage.py migrate来进行数据库的同步,但是运行时一直出现OperationalEr...
  • IT_DREAM_ER
  • IT_DREAM_ER
  • 2016-08-16 16:29:15
  • 4995

hive中Specified key was too long; max key length is 767 bytes问题解决

当hive安装完成后,在hive中执行show table等任何命令,都会报以下错: [grid@racdb ~]$ hive Logging initialized using configura...
  • lichangzai
  • lichangzai
  • 2015-10-18 19:30:56
  • 1490

hive执行命令Specified key was too long; max key length is 767 bytes 问题

在进入Hive后可以show databases; 但create table, show tables;等命令都报错,如下: [ihadoop@Master ~]$ cd /home/ihadoo...
  • zlx510tsde
  • zlx510tsde
  • 2015-11-19 10:04:42
  • 2818

ERROR 1071 (42000): Specified key was too long; max key length is 767 bytes

1.版本1)操作系统 cat /etc/issuecat /etc/issueCentOS release 6.6 (Final)Kernel \r on an \m cat /proc/versio...
  • shaochenshuo
  • shaochenshuo
  • 2016-04-05 17:30:11
  • 9090

我从utf8改成utf8mb4 就报Specified key was too long; max key length is 767 bytes

我从utf8改成utf8mb4 就报Specified key was too long; max key length is 767 bytesCHARSET必须是utf8mb4啊?...
  • huaweitman
  • huaweitman
  • 2017-03-09 15:10:57
  • 559
    联系方式

    联系电话:176-0022-5460
    QQ:717350389
    点击这里给我发消息
    个人资料
    专栏达人 持之以恒
    等级:
    访问量: 19万+
    积分: 7390
    排名: 3748
    博客专栏
    最新评论