You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在树莓派上调用Sequelize构造函数时为何出现段错误?

解决树莓派上Sequelize初始化段错误问题
  • 重新编译原生依赖:树莓派的ARM架构可能和预编译的SQLite模块不兼容,删除现有依赖后强制从源码编译安装:

    rm -rf node_modules package-lock.json
    npm install --build-from-source
    
  • 改用绝对路径存储SQLite文件:树莓派的路径解析逻辑和Windows存在差异,显式指定绝对路径可避免歧义:

    const path = require('path');
    const sequelize = new Sequelize('database', 'username', 'password', {
      host: 'localhost',
      dialect: 'sqlite',
      logging: false,
      storage: path.resolve(__dirname, 'database.sqlite'),
    });
    
  • 调整文件目录权限:树莓派的用户权限限制更严格,确保运行机器人的用户拥有当前目录的读写权限:

    chmod 755 ./
    [ -f database.sqlite ] && chmod 644 database.sqlite
    
  • 隔离测试SQLite连接:编写最小化脚本排除discord.js的干扰,确认问题是否仅出在Sequelize初始化环节:

    const { Sequelize } = require('sequelize');
    const sequelize = new Sequelize('database', 'username', 'password', {
      dialect: 'sqlite',
      storage: './database.sqlite',
    });
    
    async function testConnection() {
      try {
        await sequelize.authenticate();
        console.log('数据库连接成功');
      } catch (err) {
        console.error('数据库连接失败:', err);
      }
    }
    
    testConnection();
    

内容的提问来源于stack exchange,提问作者TrollBlox

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 13:24:52