zoukankan      html  css  js  c++  java
  • Mysql索引太长导致同步数据结构失败解决方法

    导致这个问题的原因索引的字段都太长了,mysql受不了,解决方法就是,让mysql支持比较长的索引,然后在插入表的时候,添加ROW_FORMAT=DYNAMIC ,自动格式化索引。

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

    这里写图片描述

    查看数据库信息

    1
    2
    3
    4
    5
    6
    7
    8
    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

    1
    2
    3
    4
    5
    6
    create table idx_length_test_02
    (
      id int auto_increment primary key,
      name varchar(255)
    )
    ROW_FORMAT=DYNAMIC default charset utf8mb4;

    这里写图片描述

  • 相关阅读:
    java中finally的使用
    String基本方法
    java文件读写常用方法
    java笔试面试(转载)
    单链表的反转
    单链表的冒泡排序
    Java快速教程
    Java快速教程
    后海日记(4)
    后海日记(3)
  • 原文地址:https://www.cnblogs.com/wzming0730/p/14517608.html
Copyright © 2011-2022 走看看