Mysql错误 Index column size too large. The maximum column size is 767 bytes

  起因:准备上线一个phphub5的项目,本地是mysql5.7,数据库是没有问题的,线上环境5.5,版本较低,导入的时候出错,现在记录一下解决过程。

[Err] 1709 - Index column size too large. The maximum column size is 767 bytes.

错误原因是因为索引的字段太长,在 stack overflow 上找到了答案。查看原地址

原来SQL:

ENGINE=InnoDB AUTO_INCREMENT=50 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

修改之后SQL:

ENGINE=InnoDB AUTO_INCREMENT=50 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC;

解决方法:在 CREATE TABLE 语句后面加上 ROW_FORMAT=DYNAMIC 就可以了。

评论

  1. 1
    1

    555

    回复
  2. 1
    1

    1

    回复
  3. 1
    1

    555

    回复
    1. 1
      1

      1

      回复
    2. 1
      1

      1

      回复
    3. 1
      1

      1

      回复
    4. 1
      1

      1

      回复
    5. 1
      1

      1

      回复
    6. 1
      1

      1

      回复
    7. 1
      1

      1

      回复
  4. 1
    1

    1

    回复
    1. 1
      1

      1

      回复
    2. 1
      1

      1

      回复
    3. 1
      1

      1

      回复
  5. 1
    1

    1

    回复
  6. 1
    1

    1

    回复
  7. 1
    1

    1

    回复
  8. 1
    1

    1

    回复
  9. 1
    1

    1

    回复
  10. 1
    1

    1

    回复
  11. 1
    1

    1

    回复
    1. 1
      1

      1

      回复
    2. 1
      1

      1

      回复
      1. 1
        1

        1

        回复
      2. 1
        1

        1

        回复
      3. 1
        1

        1

        回复
      4. 1
        1

        1

        回复
      5. 1
        1

        1

        回复
      6. 1
        1

        1

        回复
      7. 1
        1

        1

        回复
      8. 1
        1

        1

        回复
      9. 1
        1

        1

        回复
      10. 1
        1

        1

        回复
      11. 1
        1

        1

        回复
      12. 1
        1

        1

        回复
      13. 1
        1

        1

        回复
    3. 1
      1

      1

      回复
      1. 1
        1

        1

        回复
      2. 1
        1

        1

        回复
      3. 1
        1

        1

        回复
      4. 1
        1

        1

        回复
      5. 1
        1

        1

        回复
    4. 1
      1

      1

      回复
    5. 1
      1

      1

      回复
    6. 1
      1

      1

      回复
    7. 1
      1

      1

      回复
    8. 1
      1

      1

      回复
    9. 1
      1

      1

      回复
    10. 1
      1

      1

      回复
    11. 1
      1

      1

      回复
    12. 1
      1

      1

      回复
    13. 1
      1

      1

      回复
    14. 1
      1

      1

      回复
  12. 1
    1

    1

    回复
  13. 1
    1

    1

    回复
  14. 1
    1

    555

    回复
    1. 1
      1

      1

      回复
    2. 1
      1

      1

      回复
    3. 1
      1

      1

      回复
    4. 1
      1

      1

      回复
    5. 1
      1

      1

      回复
    6. 1
      1

      1

      回复
    7. 1
      1

      1

      回复
    8. 1
      1

      1

      回复
    9. 1
      1

      1

      回复
    10. 1
      1

      1

      回复
  15. 1
    1

    1

    回复
    1. 1
      1

      1

      回复
    2. 1
      1

      1

      回复
    3. 1
      1

      1

      回复
    4. 1
      1

      1

      回复
    5. 1
      1

      1

      回复
    6. 1
      1

      1

      回复
    7. 1
      1

      1

      回复
    8. 1
      1

      1

      回复
    9. 1
      1

      1

      回复
    10. 1
      1

      1

      回复
    11. 1
      1

      1

      回复
    12. 1
      1

      1

      回复