Ghost CMS kullanılarak hazırlanmış bir web sitesinde kullanılan veritabanını değiştirmek sistemin bize verdiği esneklik sayesinde çok kolay, MySQL üzerinden yedekleme işlemlerinin zorluyor olması ve bakımının uğraştırması sebebiyle SQLite geçiş yapacağız. 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.
“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.
Config dosyanızda yer alan aşağıdaki satırları
"database": {
"client": "mysql",
"connection": {
"host": "127.0.0.1",
"port": 3306,
"user": "your_database_user",
"password": "your_database_password",
"database": "your_database_name"
}
}
SQLite özelinde aşağıdaki satırlar ile değiştiriyorsunuz.
"database": {
"client": "sqlite3",
"connection": {
"filename": "content/data/ghost.db"
},
"useNullAsDefault": true,
"debug": false
}
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.
Bir başka yöntem olarak isteyen arkadaşlar mysql2sqlite aracını kullanarak sql olarak aldıkları yedeği direk SQLite veritabanına dönüştürebilirler.