使用koa-mysql-session时报错怎么办

本篇内容主要讲解“使用koa-MySQL-session时报错怎么办”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“使用koa-mysql-session时报错怎么办”吧!

创新互联专注于宣威企业网站建设,响应式网站设计,成都做商城网站。宣威网站建设公司,为宣威等地区提供建站服务。全流程按需求定制网站,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务

  • 描述
    在本地测试代码没问题,但是部署到服务器上时就报错。

  • 错误

> cross-env WEBPACK_TARGET=node NODE_ENV=production node ./server/app.js

true
the server is start at port 3333
/usr/share/nginx/nav/server/node_modules/koa-mysql-session/node_modules/co/index.js:292
    throw err;
    ^

Error: ER_INDEX_COLUMN_TOO_LONG: Index column size too large. The maximum column size is 767 bytes.
  • 原因:因为mysql的版本差异导致的,本地5.7,服务器上5.6。koa-mysql-session是4年前的包不建议使用。

    单列索引的长度的限制:5.6里面默认不能超过767bytes,5.7不超过3072bytes

  • 解决:
    手动创建mysql_session_store

    CREATE TABLE `_mysql_session_store` (
    `id` varchar(255) NOT NULL,
    `expires` bigint(20) DEFAULT NULL,
    `data` text,
    PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;

到此,相信大家对“使用koa-mysql-session时报错怎么办”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!


分享文章:使用koa-mysql-session时报错怎么办
网站地址:http://myzitong.com/article/pgsoop.html