账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    egg-sequelize如何连2个数据库。
    27
    0
    'use strict';
    
    module.exports = appInfo => {
      const config = {};
    
      // should change to your own
      config.keys = appInfo.name + '_sequelize-example';
    
      config.sequelize = {
        dialect: 'mssql', // support: mysql, mariadb, postgres, mssql
        database: 'mydb',
        host: '192.168.0.110',
        port: '1433',
        username: 'sa',
        password: '123456',
        timezone: 'Asia/Shanghai'
      };
    
      config.cors = {
        allowMethods: 'GET,HEAD,PUT,POST,DELETE,PATCH',
        credentials: true
      };
      
      config.static = {
        // dir: path.join(appInfo.baseDir, 'app/public'),
        dir: 'app/public',
        prefix: '',
        dynamic: true,
        preload: false,
        buffer: false,
        maxFiles: 10000,
      }
    
    // 以下为可用配置
      config.security = {
        domainWhiteList: [ 
          '192.168.1.105:8080',
          '192.168.1.100:8080',
        ],
        xframe: {
          enable: false,
        },
        csrf: {
          ignoreJSON: true, // 默认为 false,当设置为 true 时,将会放过所有 content-type 为 `application/json` 的请求
        },
      };
    
      return config;
    };
    

    这里我假如要操作多个库,config.sequelize该如何配置呢?请教大牛,现金感谢

    官方文档给的办法是
    config.sequelize = {
    datasources: [

     {
        delegate: 'ufModel',
        baseDir: 'uf_model',
        database: 'UFData_999_2011',
        dialect: 'mssql', // support: mysql, mariadb, postgres, mssql
        host: '192.168.1.117',
        port: '1433',
        username: 'sa',
        password: '1',
      },{
      。。}
      但是启动后就会连mysql 127.0.0.1 3306 等于datasources里的配置没起任何作用。
      
    请教! 
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 本仙女不需要爱情 普通会员 1楼

      在使用egg-sequelize和两个数据库时,你需要遵循以下步骤:

      1. 首先,你需要安装egg-sequelize和相应的依赖。在命令行中,使用以下命令安装egg-sequelize和其依赖:

      bash npm install --save-dev sequelize npm install --save sequelize-sequelize

      1. 创建一个名为database1database2的数据库。你可以在你的数据库管理器(如MySQL、PostgreSQL、SQLite等)中创建这两个数据库。

      2. 在你的config/params文件中,定义你的数据库连接信息。例如,如果你使用的是MySQL,你可以这样定义:

      javascript module.exports = { adapter: 'mysql', host: 'localhost', user: 'your_username', password: 'your_password', database: 'database1', debug: true, synchronize: true, };

      1. 在你的models文件中,定义你的数据库模型。例如,如果你使用的是MySQL,你可以这样定义一个User模型:

      javascript module.exports = { type: Sequelize.STRING, allowNull: false, comment: 'User', primaryKey: true, fields: ['id', 'name', 'email'], };

      1. 在你的诲育文件中,注册你的数据库模型。例如,如果你在User模型中添加了一个database1数据库,你可以这样注册:

      javascript sequelize.model('User', User);

      1. 使用sequelize库的connection方法来连接到你的数据库。例如:

      javascript const sequelize = new Sequelize('database1', 'your_username', 'your_password', { adapter: 'mysql', host: 'localhost', dialect: 'mysql', });

      1. 使用sequelize库的Model方法来查询数据库。例如:

      javascript const User = sequelize.model('User', User); const user = await User.findAll();

      1. 最后,你可以使用sequelize库的Model方法来操作数据库。例如,你可以创建一个新的用户:

      javascript const User = sequelize.model('User', User); User.create({ name: 'John Doe', email: 'john.doe@example.com', });

      以上就是使用egg-sequelize和两个数据库的基本步骤。你可以根据你的实际需求来调整这些步骤。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部