Pazartesi, Kasım 4, 2024

Ghost’u SQLite’tan MySQL’e Taşıma

ghost cms yüksek çözünürlüklü logo, ghost cms logo, ghost cms svg, ghost migrate

Ghost CMS kullanılarak hazırlanmış bir web sitesinde kullanılan veritabanını değiştirmek sistemin bize verdiği esneklik sayesinde çok kolay, kendimi SQLite kullanırken pek fazla güvende hissetmediğim için bu göçü yapacağım. Gelin hep birlikte nasıl yapılacağına bir göz atalım.

Ghost admin paneline bağlanıyorsunuz ve göç seçeneklerine giriş yapıyorsunuz.

ghost cms sqliteden mysql geçiş, ghost cms mysl kurulumu

“Export your content” seçeneğini seçiyorsunuz ve sitenizde yer alan ayarlar dahil bütün içeriği tek bir json dosyası olarak bilgisayarınıza indiriyorsunuz. Ardından MySQL üzerinde Komut Satırı ile MySQL Kullanıcı Oluşturma makalesini kullanarak yeni bir kullanıcı ve veritabanı oluşturuyorsunuz.

Config dosyanızda yer alan aşağıdaki satırları

"database": {
  "client": "sqlite3",
  "connection": {
    "filename": "content/data/ghost.db"
  },
  "useNullAsDefault": true,
  "debug": false
}

MySQL özelinde aşağıdaki satırlar ile değiştiriyorsunuz.

"database": {
  "client": "mysql",
  "connection": {
    "host": "127.0.0.1",
    "port": 3306,
    "user": "your_database_user",
    "password": "your_database_password",
    "database": "your_database_name"
  }
}

Ardından Ghost CMS çalıştırdığınız servisi yeniden başlatmanız gerekiyor.

systemctl restart ghost

Artık sistem sıfırdan yeni bir ghost kurulumu yapılmış gibi başlayacak, burada yapmanız gereken yeni bir admin kullanıcısı oluşturmak. Ardından lab menüsüne gidin ve direk olarak “Delete all content” seçeneğini seçin, ön tanımlı gelen bütün yazıları kaldıracak.

Daha sonra tekrar lab alanından eski export ettiğiniz json dosyasını import etmeniz yeterli. Bütün içerikleriniz ve ayarlarınız eski yerlerine gelecek. Medya dosyalarını taşımadığımız içinde yerli yerinde olması gerekiyor. Yeni sunucuya kuracaksanız o zaman iş değişir.