【问题标题】:how can i keep my data alive on mysql workbench?我怎样才能让我的数据在 mysql 工作台上保持活跃?
【发布时间】:2022-01-25 20:26:04
【问题描述】:

我正在使用带有 nodejs 和 sequelize 的用户名 root 连接 mysql 工作台,一段时间后我的数据消失了,我已经编辑了首选项并将 DBMS 更改为 86400,但仍然存在同样的问题,我想始终保留我的数据不只是 24 小时,这里是我与 sequelize 的连接代码和 mysqlk 工作台的屏幕截图。


const Sequelize=require('sequelize')


const sequelize =new Sequelize(
 process.env.DATABASE_NAME,
 process.env.DATABASE_USERNAME,
 process.env.DATABASE_PASSWORD,
    {
     dialect:"mysql",
     host: process.env.DATABASE_HOST,
     port: parseInt(process.env.DATABASE_PORT),
     operatorAliases:false,
       logging:false,
       options: {
           requestTimeout: 60000,
         },
       
       pol:{
         idle: 30000,
         min: 1,
         // max: parseInt(process.env.DATABASE_MAX_POOL),
         acquire: 60000,
       }
   }

)

sequelize
 .sync({force:true })
 .then(() => {
   console.log("Connection with dataBase " + process.env.DATABASE_NAME + " has been established!")
 })
 .catch((err) => {
   console.log(err)
 })

module.exports = sequelize


【问题讨论】:

    标签: sql node.js database sequelize.js mysql-workbench


    【解决方案1】:

    它是同步内的强制标志。 如果 sequelize 模型发现当前 db_stucture 的更改,sequelize 将删除数据库并更改其架构。

    这就是我们在生产中从不使用该标志的原因。 如果有人想在保留数据的同时更改结构,他应该使用迁移来更改数据库,同时实现逻辑以相应地保留或更改他的数据。

    【讨论】:

    猜你喜欢
    • 2018-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-07
    • 2021-01-22
    • 2011-04-26
    • 1970-01-01
    相关资源
    最近更新 更多