Ana içeriğe geç

SQLite'tan Postgres'e geçiş

Genel bakış

Yucca'yı SQLite ile kullanmaya başladıysanız ve zamanla kaynak ihtiyaçlarınız arttıysa, verileri SQLite veritabanından Postgres'e taşıyabilirsiniz. Geriye doğru geçiş desteklenmez.

Geçiş

  1. Postgres'i önceden kurun ve hazırlayın.

  2. Yucca sunucusunu durdurun:

    sudo systemctl stop yucca
  3. Kaynak ve hedef veritabanının yolunu belirterek geçiş komutunu çalıştırın:

    /opt/yucca/yucca admin migrate

    Tüm parametrelerin listesini yardım çıktısında görebilirsiniz:

    /opt/yucca/yucca admin migrate --help
    Migrate state from SQLite to PostgreSQL

    Usage:
    yucca admin migrate [flags]

    Flags:
    --config string Path to configuration file (default "/opt/yucca/yucca.toml")
    --data-dir string The data directory used to store state and other persistent data (default "data")
    --database-busy-timeout int Timeout in seconds for waiting for an SQLite table to become unlocked (default 500)
    --database-ca-cert-path string The path to the CA certificate to use (default "/etc/ssl/certs")
    --database-cache-mode string Shared cache setting used for connecting to the database (private, shared) (default "shared")
    --database-client-cert-path string The path to the client cert
    --database-client-key-path string The path to the client key
    --database-conn-max-lifetime duration Sets the maximum amount of time a connection may be reused (default 0s)
    --database-host string Database host (not applicable for sqlite3) (default "127.0.0.1:5432")
    --database-max-idle-conn int The maximum number of connections in the idle connection pool (default 2)
    --database-max-open-conn int The maximum number of open connections to the database
    --database-name string The name of the Yucca database (default "yucca")
    --database-password string The database user's password (not applicable for sqlite3) (default "postgres")
    --database-path string SQLite database location
    --database-ssl-mode string SSL mode for Postgres (disable, require or verify-full) (default "disable")
    --database-user string The database user (not applicable for sqlite3) (default "postgres")
    -h, --help Help for migrate
    --state-dir string The directory used to store state and other persistent data (default "<data-dir>/state")
  4. Yapılandırmada yeni veritabanı türü olarak postgres'i ve bağlantı bilgilerini belirtin.

  5. Yucca sunucusunu başlatın:

    sudo systemctl start yucca
  6. Yucca'nın artık postgres kullandığından emin olun – bunu /ui/administration/config yapılandırma bölümünde veya sunucu başlangıcındaki günlükte görebilirsiniz.