会话管理mysql和nodejs

会话管理mysql和nodejs,mysql,node.js,express,passport.js,Mysql,Node.js,Express,Passport.js,我在web应用程序中使用passport local进行身份验证(用户名和密码) 技术/框架 Node.js 快车 mysql 护照 问题: 服务器停机时会话被破坏。我需要实现一种机制来持久化登录用户的会话。这样,当服务器启动时,他可以访问应用程序而无需登录过程 注: 我无法使用redis进行会话管理,因为我们经常使用flushall来清除缓存数据 任何建议都将不胜感激。我已实施 谢谢@robertklep和@Paul您可以选择另一个会话存储。发布会话配置代码 var mysql = requi

我在web应用程序中使用passport local进行身份验证(用户名和密码)

技术/框架 Node.js

快车

mysql

护照

问题: 服务器停机时会话被破坏。我需要实现一种机制来持久化登录用户的会话。这样,当服务器启动时,他可以访问应用程序而无需登录过程

注: 我无法使用redis进行会话管理,因为我们经常使用flushall来清除缓存数据

任何建议都将不胜感激。

我已实施


谢谢@robertklep和@Paul

您可以选择另一个会话存储。发布会话配置代码
var mysql = require('mysql');
var session = require('express-session')
var mysql_store = require('express-mysql-session')(session),
var db_connection = mysql.createPool({
   canRetry: true,
   database: 'database',
   host: 'host',
   user: 'user',
   password: 'password',
   connectionLimit: 100
});

var sessionStore = new mysql_store({
    expiration: 60 * 2000
}, db_connection);

app.use(session({
    secret: '5151db3f77e7847337000000',
    resave: false,
    saveUninitialized: false,
    store: sessionStore,
    cookie: {
       expires: new Date(Date.now() + 60 * 2000),
       maxAge: 60 * 2000
    }
}));