mavlitov98/clickhouse-migrations

v1.0.0 2023-02-15 08:16 UTC

This package is auto-updated.

Last update: 2024-09-19 10:54:11 UTC


README

ClickhouseMigrationsBundle

psalm level psalm type coverage

此包将Clickhouse迁移集成到Symfony应用程序中。数据库迁移可以帮助您对数据库架构的更改进行版本控制,并以可预测的方式在每个运行应用程序的服务器上应用。

安装

composer require mavlitov98/clickhouse-migrations

如果您不使用Symfony Flex,则必须在应用程序中手动启用此包

// config/bundles.php
// in older Symfony apps, enable the bundle in app/AppKernel.php
return [
    // ...
    ClickhouseMigrations\ClickhouseMigrationsBundle::class => ['all' => true],
];

配置

# in config/packages/clickhouse_migrations.yaml

clickhouse_migrations:
  connection: # connection configuration (required)
    host: '%env(CLICKHOUSE_HOST)%'
    port: '%env(CLICKHOUSE_PORT)%'
    username: '%env(CLICKHOUSE_USERNAME)%'
    password: '%env(CLICKHOUSE_PASSWORD)%'
  clickhouse_migrations_version_table: 'ch_migrations' # version table name (optional)
  clickhouse_migrations_path: '%kernel.project_dir%/src/Migrations/Clickhouse' # migration path (optional)
  clickhouse_migrations_namespace: 'App\\Migrations\\Clickhouse' # migration class namespace (optional)

命令

为ClickHouse生成新的迁移

php bin/console clickhouse-migrations:generate

将所有生成的迁移应用到ClickHouse

php bin/console clickhouse-migrations:migrate

应用或回滚ClickHouse迁移

php bin/console clickhouse-migrations:execute [VersionXXXXXXXXXXXXXX] [up|down]