【发布时间】:2021-03-16 12:14:55
【问题描述】:
我在 AWS 中为 postgres 数据库设置了复制。 如何在 NestJs 中配置 TypeORM 以使用读/写副本。
我当前的代码如下所示。如何将此多重连接转换为使用复制。
@Module({
imports: [
TypeOrmModule.forRoot({
type: 'postgres',
host: '127.0.0.1',
port: 5432,
username: 'user1',
password: 'pass1',
database: 'user1',
synchronize: true,
entities: ['src/**/*.entity{.ts,.js}'],
migrations: ['./src/migrations/*.ts'],
}),
TypeOrmModule.forRoot({
type: 'postgres',
name: 'read',
host: '127.0.0.2',
port: 5432,
username: 'user2',
password: 'pass2',
database: 'user2',
entities: ['src/**/*.entity{.ts,.js}'],
migrations: ['./src/migrations/*.ts'],
})
],
controllers: [HealthCheckController],
providers: [],
})
export class AppModule {}
user.module.ts
@Module({
imports: [
TypeOrmModule.forFeature([UserEntity]),
],
exports: [],
controllers: [UserController],
})
export class UserModule {}
user.service.ts
@Injectable()
export class OnboardingService {
private readonly logger: Logger = new Logger(UserService.name);
public constructor(
@InjectRepository(UserEntity)
private readonly userEntityRepository: Repository<UserEntity>,
@InjectConnection()
private readonly connection: Connection,
) {}
如何在 user.service.ts 文件中使用从/主连接?
【问题讨论】:
标签: typescript postgresql replication nestjs typeorm