0

我已经使用 repmgr 设置了 postgres 并配置为两个服务器之间的复制和故障转移,故障转移设置工作正常。Postgres 的连接字符串如下所示。

postgres://repmgr:repmgrpassowrd@10.200.0.100:5432,10.200.0.120:5432/Stag_DB

当我尝试用这个 postgres 字符串设置 strpi 时,我还没有找到任何文章将 postgres 字符串与 strpi 连接起来。我正在关注此链接https://strapi.io/documentation/developer-docs/latest/setup-deployment-guides/configurations.html#database仅在 Strapi 项目中找到 database.js 文件,该文件一次连接一个数据库。

  defaultConnection: 'default',
  connections: {
    default: {
      connector: 'bookshelf',
      settings: {
        client: 'postgres',
        host: env('DATABASE_HOST', 'localhost'),
        port: env.int('DATABASE_PORT', 5432),
        database: env('DATABASE_NAME', 'strapi'),
        username: env('DATABASE_USERNAME', 'strapi'),
        password: env('DATABASE_PASSWORD', 'strapi'),
        schema: env('DATABASE_SCHEMA', 'public'), // Not Required
        ssl: {
          rejectUnauthorized: env.bool('DATABASE_SSL_SELF', false), // For self-signed certificates
        },
      },
      options: {
        ssl: env.bool('DATABASE_SSL', false),
      },
    },
  },
}); 

这一次只能连接一个数据库请帮我postgres://repmgr:repmgrpassowrd@10.200.0.100:5423,10.200.0.120:5423/Stag_DB在strapi上连接这个字符串。

4

1 回答 1

0

我已经用 mongodb 数据库试过了,我不知道它可能在 postgre 中工作,但这里的步骤:

  1. 将 database.js 文件更新为类似这样的内容
module.exports = ({ env }) => ({
    defaultConnection: 'default',
    connections: {
        default: {
            connector: 'mongoose',
            settings: {
                uri: env('DATABASE_URI'),
            },
            options: {
                ssl: true,
            }
        }
    }
});
  1. 使用您的数据库字符串更新您的 .env 文件,例如:
  DATABASE_URI=mongodb://username:password@project.subdomain.mongodb.net/myFirstDatabase?retryWrites=true&w=majority
于 2021-09-30T03:34:05.890 回答