Skip to main content
Server CE/Server Pro’nun her yeni sürümü, desteklenen MongoDB sürümündeki değişiklikleri sürüm notlarında belirtir.

MongoDB’yi güncellemeli miyim?

MongoDB sürümünüzü güncellemeyi yalnızca Server CE/Server Pro örneğinizi yükseltmeyi planlıyorsanız düşünmelisiniz. Mevcut (veya hedef) sürümünüz için önerilenden daha yeni bir MongoDB sürümü çalıştırıyorsanız herhangi bir değişiklik yapmanıza gerek yoktur.
MongoDB sürümünüzü asla düşürmemelisiniz.
Mevcut MongoDB sürümünüzle ilgili olabileceğini düşündüğünüz belirli bir sorun yaşarsanız, Server CE kullanıcısıysanız çekinmeden bir sorun kaydı açın, Server Pro kullanıcısıysanız Overleaf Destek ile iletişime geçin.

MongoDB sürümünüzü kontrol etme

mongo kabuğunu açmak, geçerli sürümü hemen yazdırmalıdır. Overleaf Toolkit kullanıcıları:
Docker Compose kullanıcıları:

Güncelleme süreci

Server CE/Server Pro örneğinizin yükseltilmesi sırasında MongoDB sürümünü güncelleme adımları şunlardır:
  1. Yükseltmeyi planladığınız Server CE/Server Pro sürümüne karar verin.
  2. Söz konusu Overleaf Server CE/Server Pro sürümü tarafından önerilen MongoDB sürümünü bulun.
  3. MongoDB’yi hedef sürüme yükseltmek için talimatları izleyin.
  4. Server CE/Server Pro imaj sürümünü yükseltin ve örneği yeniden başlatın.
Önerimiz, desteklenmesi her zaman garanti edildiği için Server CE/Server Pro’yu her zaman mevcut en son sürüme yükseltmenizdir (yalnızca Server Pro kullanıcıları).
Server CE/Pro yükseltmesi yaparken, bir sonraki ana sürümün en son sürümüne yükseltmeden önce kurulu ana sürümün en son sürümüne yükseltmenizi öneririz. Kurulumunuz en son sürümün birden fazla ana sürüm gerisindeyse, çok adımlı bir yükseltme yapmanız gerekecektir.Örneğin 3.5.10 çalıştırıyorsanız, 3.5.13’e yükseltmeniz -> Tam Proje Geçmişi geçişini gerçekleştirmeniz -> 4.2.9 -> 5.5.4 yolunu izlemeniz gerekir.Ana sürümleri asla atlamamalısınız (3.5.10 -> 5.5.4). Toolkit kullanıyorsanız ve en son sürümün birden fazla ana sürüm gerisindeyseniz, manuel çok adımlı bir yükseltme yapmanız gerekeceğinden bin/upgrade betiğini kullanmamalısınız.
Gerektiğinde geri dönebilmeniz için her ana sürüm yükseltmesinden önce tutarlı bir yedek aldığınızdan emin olmanız önemlidir.

Sürüm desteği bilgileri

Daha eski bir sürüme geçmeye karar vermeniz durumunda, bu tablo Server CE/Server Pro’nun önceki sürümleri için önerilen MongoDB sürümünü gösterir; ancak MongoDB sürümünüzü asla düşürmemelisiniz.
Server CE/Server ProMongoDB SürümüMinimum Özellik Uyumluluk SürümüNode.js Sürücüsünün Desteklediği Maksimum Sürüm
2.0.x3.4--
2.1.x ile 2.4.x arası3.6--
>=2.5.04.0--
>=3.1.04.2--
>=3.2.04.4--
>=4.2.05.0--
>=5.1.06.0--
>=5.3.16.05.08.0
>=5.5.06.06.08.0
6.0.08.08.08.0
Yukarıdaki minimum özellik uyumluluk sürümü, gösterilen Overleaf sürümüyle kullanılmak üzere önerilen ilgili MongoDB sürümüne dayanmaktadır. Daha yüksek bir sürüm kullanmayı planlıyorsanız MongoDB’nin kendi minimum gereksinimi olacaktır.
MongoDB ile kullanım için desteklenen MongoDB Node.js sürücüsü sürümlerini belirten uyumluluk tablosunu buradan görüntüleyebilirsiniz. MongoDB’nin her sürümünün kullanım ömrü sonu durumunu buradan görüntüleyebilirsiniz.

MongoDB’yi yükseltme

MongoDB adım adım yükseltme gerektirir. Bu, örneğin 4.0’dan doğrudan 5.0’a geçemeyeceğiniz anlamına gelir. Önce 4.2’den 4.4’e, ardından 5.0’a güncellemeniz gerekir.
MongoDB, kararlı sürümleri için çift sayılar kullanır.

MongoDB’yi Docker dışında çalıştırırken güncelleme talimatları

MongoDB’yi yükseltirken mongodb.com’daki güncelleme talimatlarına ait bağlantılar aşağıdadır.
5.0 ve üzeri sürümlere ilişkin talimatlar, bağımsız (standalone) kurulum yerine replika kümesi (replica set) kurulumuna işaret eder. Server Pro/CE 4.0.1+ işlemleri (transaction) kullandığından MongoDB’nin bir replika kümesi olarak çalıştırılması gerekir.
MongoDB 3.2 ile 4.2 arası sürümlerin belgelerine artık https://www.mongodb.com/docs/legacy/ üzerinden erişilebilir
Temel Talimatlar Çoğu durumda güncelleme, mongo sürümünü gerçekten güncellemeden önce bir uyumluluk bayrağının ayarlanmasını gerektirir. Adımlar şunlardır:
  1. Uyumluluk bayrağını MongoDB sürüm notlarında açıklandığı şekilde ayarlayın (aşağıdaki örneklere bakın).
  2. Ardından mongo imajını güncelleyin:
    1. Toolkit kullanıcıları MONGO_VERSION değerini güncelleyin, ör. MONGO_VERSION=6.0
    2. Docker Compose kullanıcıları mongo imaj etiketinin sürümünü güncelleyin,
      ör. services -> mongo -> image: mongo:6.0;
Örnek: MongoDB’yi 5.0’dan 6.0’a yükseltme MongoDB 6.0 çalıştırdığımızdan emin olarak başlayalım: Overleaf Toolkit kullanıcıları:
Docker Compose kullanıcıları:
Yükseltme talimatlarına göre tek gereksinim featureCompatibilityVersion değerinin 5.0 olarak ayarlanmasıdır. Bunu bir MongoDB kabuğu açıp belirtilen komutu çalıştırarak yaparız: Overleaf Toolkit kullanıcıları:
Docker Compose kullanıcıları bir kabuk açmak için docker compose exec mongo mongosh komutunu çalıştırabilir ve Toolkit kullanıcılarıyla aynı komutları çalıştırabilir.
Overleaf Toolkit kullanıcıları: Ardından bin/stop komutunu kullanarak Server CE/Server Pro ve MongoDB örneklerini durduracak, config/overleaf.rc içinde MONGO_VERSION=6.0 ayarlayacak ve güncellemenin sorunsuz gerçekleştiğini doğrulamak için bin/up mongo kullanarak mongo hizmetini yeniden başlatacağız. Son olarak Server CE/Server Pro imaj sürümünü hedef sürümümüze güncelleyecek ve bin/up -d komutunu kullanarak tüm hizmetleri yeniden oluşturacağız. Docker Compose kullanıcıları: Ardından docker compose stop komutunu kullanarak Server CE/Server Pro ve MongoDB örneklerini durduracak, docker-compose.yml dosyasını image: mongo:6.0 kullanacak şekilde güncelleyecek ve güncellemenin sorunsuz gerçekleştiğini doğrulamak için docker compose up mongo komutunu kullanarak mongo hizmetini yeniden başlatacağız. Son olarak Server CE/Server Pro imaj sürümünü hedef sürümümüze güncelleyecek ve docker compose up komutunu kullanarak tüm hizmetleri yeniden oluşturacağız. Yukarıdaki mongod --version komutlarını kullanarak MongoDB 6.0 çalıştırdığınızdan emin olarak başlayın. Yükseltme talimatlarına göre tek gereksinim featureCompatibilityVersion değerinin 6.0 olarak ayarlanmasıdır. Bunu bir MongoDB kabuğu açıp db.adminCommand({ setFeatureCompatibilityVersion: "6.0" }) komutunu çalıştırarak yaparız. Overleaf Toolkit kullanıcıları:
Ardından bin/stop komutunu kullanarak Server CE/Server Pro ve MongoDB örneklerini durduracak, config/overleaf.rc içinde MONGO_VERSION=7.0 ayarlayacak ve güncellemenin sorunsuz gerçekleştiğini doğrulamak için bin/up mongo kullanarak mongo hizmetini yeniden başlatacağız. Son olarak Server CE/Server Pro imaj sürümünü hedef sürümümüze güncelleyecek ve bin/up -d komutunu kullanarak tüm hizmetleri yeniden oluşturacağız. Yukarıdaki mongod --version komutlarını kullanarak MongoDB 7.0 çalıştırdığınızdan emin olarak başlayın. Yükseltme talimatlarına göre tek gereksinim featureCompatibilityVersion değerinin 7.0 olarak ayarlanmasıdır. Bunu bir MongoDB kabuğu açıp db.adminCommand({ setFeatureCompatibilityVersion: "7.0", confirm: true }) komutunu çalıştırarak yaparız. Bunun artık ek bir confirm: true parametresi gerektirdiğini unutmayın.
Ardından bin/stop komutunu kullanarak Server CE/Server Pro ve MongoDB örneklerini durduracak, config/overleaf.rc içinde MONGO_VERSION=8.0 ayarlayacak ve güncellemenin sorunsuz gerçekleştiğini doğrulamak için bin/up mongo kullanarak mongo hizmetini yeniden başlatacağız. Son olarak Server CE/Server Pro imaj sürümünü hedef sürümümüze güncelleyecek ve bin/up -d komutunu kullanarak tüm hizmetleri yeniden oluşturacağız.

Docker compose kullanıcıları için eşdeğer komutlar

Docker compose kullanıcıları için eşdeğer komutlar şunlardır:
  • mongo sürümünü görüntülemek için docker compose exec mongo mongod --version
  • yönetici komutları için bir mongo kabuğu başlatmak üzere docker compose exec mongo mongosh
  • sunucuyu durdurmak için docker compose stop komutu
  • mongo sürümünü yükseltmek için docker-compose.yml dosyasını image: mongo:6.0 kullanacak şekilde düzenleyin
  • mongo hizmetini yeniden başlatmak ve güncellemenin sorunsuz gerçekleştiğini doğrulamak için docker compose up mongo
  • imaj sürümünü yükseltmek için docker-compose.yml dosyasını image: sharelatex:VERSION kullanacak şekilde düzenleyin
  • tüm hizmetleri yeniden oluşturmak için docker compose up.

Özel bir rol oluşturma

5.5.1 sürümünde, MongoDB’nin özellik uyumluluk sürümünü doğrulamak için bir başlangıç kontrolü ekledik. MongoDB veritabanınız kimlik doğrulama (ör. temel kimlik doğrulama) kullanıyorsa, sharelatex konteyneri “not authorized on admin to execute command” izin hatası göstererek başlamayabilir. Bunu çözmek için ya aşağıdaki talimatları kullanarak MongoDB’de yeni bir rol oluşturup bunu veritabanına erişmek için kullanılan kullanıcı hesabına atayabilir ya da kontrolün kurulumun başlamasını engellemeden başarısız olmasına izin vermek için ALLOW_MONGO_ADMIN_CHECK_FAILURES=true ayarlayabilirsiniz.
Bu yeni rol yalnızca küme genelindeki MongoDB sunucu parametrelerini okuma izni verir ve izleme amacıyla yeniden kullanılabilir,
Son değiştirilme tarihi 5 Ekim 2026