Neo4j’i Ubuntu 20.04 Üzerine Kurma ve Yapılandırma Rehberi
Neo4j, ilişkisel veritabanlarının karmaşık bağlantılı verilerle başa çıkmakta zorlandığı senaryolar için özel olarak tasarlanmış, lider bir grafik veritabanı yönetim sistemidir. Geleneksel tablolara ve satırlara dayalı veritabanlarının aksine, Neo4j verileri düğümler (nodes), ilişkiler (relationships) ve özellikler (properties) şeklinde depolar. Bu yapı, veriler arasındaki bağlantıları doğal bir şekilde modellemeye ve sorgulamaya olanak tanır, bu da özellikle sosyal ağlar, öneri sistemleri, sahtekarlık tespiti ve ağ yönetimi gibi alanlarda büyük avantajlar sağlar.
Bu kapsamlı rehberde, Neo4j’i popüler bir sunucu işletim sistemi olan Ubuntu 20.04 LTS (Long Term Support) üzerine nasıl kuracağınızı ve temel düzeyde nasıl yapılandıracağınızı adım adım öğreneceksiniz. Hem resmi APT deposu üzerinden kurulumu hem de manuel tarball kurulumunu ele alacak, böylece ihtiyaçlarınıza en uygun yöntemi seçebileceksiniz. Ayrıca, sistem kaynaklarını optimize etmek ve güvenlik sağlamak için önemli yapılandırma ayarlarını da inceleyeceğiz.
Neo4j Nedir ve Neden Kullanılır?
Neo4j, ACID uyumlu (Atomicity, Consistency, Isolation, Durability) bir grafik veritabanıdır. Bu, veritabanının işlemler sırasında veri bütünlüğünü ve güvenilirliğini koruduğu anlamına gelir. Temel bileşenleri şunlardır:
* Düğümler (Nodes): Varlıklar veya nesnelerdir (örneğin, bir kişi, bir ürün, bir şehir). Her düğümün bir veya daha fazla etiketi (label) olabilir ve özellikler (properties) içerebilir.
* İlişkiler (Relationships): Düğümler arasındaki bağlantıları tanımlar (örneğin, “Arkadaşı”, “Sipariş Verdi”, “Yaşıyor”). İlişkilerin de türleri (type) ve özellikler (properties) olabilir. İlişkiler her zaman yönlüdür.
* Özellikler (Properties): Düğümlere veya ilişkilere eklenen anahtar-değer çiftleridir ve ek bilgi sağlarlar.
Neden Neo4j Kullanmalıyız?
* Bağlantılı Verilerde Yüksek Performans: İlişkisel veritabanlarının aksine, Neo4j’de ilişkiler fiziksel olarak depolanır. Bu, derin ve karmaşık bağlantıları sorgularken üstün performans sağlar, çünkü JOIN işlemleri gibi maliyetli operasyonlara gerek kalmaz.
* Esneklik: Şemasız (schemaless) bir yapıya sahiptir. Bu, veri modelinizi dinamik olarak değiştirebileceğiniz ve yeni veri türlerini kolayca ekleyebileceğiniz anlamına gelir.
* Sezgisel Veri Modelleme: Verilerinizi gerçek dünyadaki gibi modellemenize olanak tanır, bu da geliştiricilerin ve analistlerin veriyi daha kolay anlamasını ve üzerinde çalışmasını sağlar.
* Cypher Sorgu Dili: Neo4j’e özel, sezgisel ve güçlü bir deklaratif sorgu dilidir. Grafik desenlerini kullanarak veri üzerinde arama yapmayı, oluşturmayı ve güncellemeyi kolaylaştırır.
* Geniş Ekosistem: Birçok programlama dili için sürücüler (driver’lar), görselleştirme araçları ve topluluk desteği sunar.
Bu rehber, Ubuntu 20.04 üzerinde Neo4j’i başarılı bir şekilde kurmanız ve kullanmaya başlamanız için gereken tüm bilgileri sağlayacaktır.
Ön Koşullar
Neo4j kurulumuna başlamadan önce sisteminizin aşağıdaki gereksinimleri karşıladığından emin olun:
* Ubuntu 20.04 LTS: Temiz bir kurulum veya mevcut bir sunucu.
* Sudo Yetkileri: Kurulum ve yapılandırma adımları için sudo ayrıcalıklarına sahip bir kullanıcı hesabı.
* İnternet Bağlantısı: Paketleri indirmek için aktif bir internet bağlantısı.
* Java Geliştirme Kiti (JDK): Neo4j, Java Sanal Makinesi (JVM) üzerinde çalışır. Bu nedenle, sisteminizde uyumlu bir JDK sürümünün kurulu olması gerekir. Neo4j 4.x ve 5.x sürümleri için OpenJDK 11 veya OpenJDK 17 önerilir. Bu rehberde OpenJDK 11’i kuracağız.
Java Geliştirme Kiti (JDK) Kurulumu
Neo4j’in çalışabilmesi için bir Java çalışma zamanı ortamına (JRE) veya geliştirme kitine (JDK) ihtiyacı vardır. OpenJDK, açık kaynaklı ve Oracle JDK’ya bir alternatiftir ve çoğu kullanım durumu için yeterlidir.
OpenJDK 11 Kurulumu
1. Paket Listesini Güncelleyin:
Öncelikle, sisteminizin paket listesini güncelleyerek en son yazılım bilgilerine sahip olduğundan emin olun:
sudo apt update
sudo apt upgrade -y
2. OpenJDK 11’i Kurun:
Aşağıdaki komutla OpenJDK 11’i kurabilirsiniz:
sudo apt install openjdk-11-jdk -y
3. Java Kurulumunu Doğrulayın:
Kurulumun başarılı olup olmadığını kontrol etmek için Java sürümünü sorgulayın:
java -version
Çıktı aşağıdaki gibi bir şey olmalıdır:
openjdk version "11.0.15" 2022-04-19
OpenJDK Runtime Environment (build 11.0.15+10-Ubuntu-0ubuntu0.20.04.1)
OpenJDK 64-Bit Server VM (build 11.0.15+10-Ubuntu-0ubuntu0.20.04.1, mixed mode, sharing)
4. JAVA_HOME Ortam Değişkenini Ayarlayın (İsteğe Bağlı ama Önerilir):
Bazı uygulamalar ve betikler JAVA_HOME ortam değişkeninin ayarlanmasını bekleyebilir. Bu değişkeni ayarlamak için:
Öncelikle Java’nın yüklü olduğu yolu bulun:
sudo update-alternatives --config java
Bu komut, sistemdeki Java kurulumlarını listeler ve bir seçim yapmanızı ister. Genellikle /usr/lib/jvm/java-11-openjdk-amd64 gibi bir yol görürsünüz. Bu yolu kopyalayın.
Ardından, /etc/environment dosyasını düzenleyin:
sudo nano /etc/environment
Dosyanın sonuna aşağıdaki satırı ekleyin (kendi Java yolunuzla değiştirerek):
JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"
Değişiklikleri kaydedin (Ctrl+O, Enter) ve nano’dan çıkın (Ctrl+X).
Ortam değişkenini mevcut oturumunuzda etkinleştirmek için:
source /etc/environment
Şimdi JAVA_HOME değişkeninin ayarlı olup olmadığını kontrol edebilirsiniz:
echo $JAVA_HOME
Çıktıda belirlediğiniz yol görünmelidir.
Neo4j Kurulum Yöntemleri
Neo4j’i Ubuntu üzerine kurmak için birkaç farklı yöntem bulunmaktadır:
1. APT Deposu Üzerinden Kurulum (Önerilen): Bu yöntem, Neo4j’in resmi APT deposunu sisteminize ekleyerek paket yöneticisi (apt) aracılığıyla kurulum yapmanızı sağlar. Bu, güncellemeleri yönetmeyi ve bağımlılıkları çözmeyi kolaylaştırdığı için üretim ortamları için önerilen yöntemdir.
2. Tarball ile Manuel Kurulum: Bu yöntem, Neo4j’in sıkıştırılmış bir arşivini (tarball) indirip manuel olarak belirli bir dizine çıkarmanızı ve yapılandırmanızı içerir. Belirli bir sürümü test etmek veya özel bir dizin yapısı kullanmak istediğinizde faydalı olabilir.
3. Docker ile Kurulum (Kısaca Bahsedilecek): Neo4j’i Docker konteyneri içinde çalıştırmak, hızlı dağıtım, izolasyon ve taşınabilirlik sağlar. Ancak bu rehberde, geleneksel sunucu kurulumlarına odaklanacağız.
Bu rehberde ilk iki yöntemi detaylı olarak ele alacağız.
APT Deposu Üzerinden Neo4j Kurulumu (Önerilen)
Bu yöntem, Neo4j’i bir hizmet olarak kurar ve systemd ile kolayca yönetmenizi sağlar.
1. Neo4j APT Deposunu Ekleyin:
Neo4j’in APT deposunu sisteminize eklemek için öncelikle GPG anahtarını indirip eklemeniz gerekir:
wget -O - https://debian.neo4j.com/neotechnology.gpg.key | sudo apt-key add -
Bu komut, Neo4j deposunun genel anahtarını indirir ve sisteminizin güvenilir anahtar listesine ekler. Bu, sisteminizin Neo4j paketlerini doğrulayabilmesini sağlar.
Ardından, Neo4j deposunu APT kaynak listelerinize ekleyin:
echo 'deb https://debian.neo4j.com stable latest' | sudo tee -a /etc/apt/sources.list.d/neo4j.list
Bu komut, Neo4j’in kararlı sürüm deposunu neo4j.list adlı yeni bir dosyaya yazar.
2. APT Paket Listesini Güncelleyin:
Yeni eklenen depoyu tanımak için paket listesini tekrar güncellemeniz gerekir:
sudo apt update
3. Neo4j’i Kurun:
Artık Neo4j paketini kurmaya hazırsınız:
sudo apt install neo4j -y
Bu komut, Neo4j sunucusunu ve gerekli tüm bağımlılıkları otomatik olarak kuracaktır.
4. Neo4j Servisini Başlatın ve Etkinleştirin:
Kurulum tamamlandıktan sonra, Neo4j servisini başlatın:
sudo systemctl start neo4j
Sistemin yeniden başlatılmasından sonra Neo4j’in otomatik olarak başlamasını sağlamak için servisi etkinleştirin:
sudo systemctl enable neo4j
5. Neo4j Servis Durumunu Kontrol Edin:
Servisin başarıyla çalışıp çalışmadığını kontrol etmek için:
sudo systemctl status neo4j
Çıktıda active (running) ibaresini görmelisiniz.
APT kurulumunda Neo4j’in yapılandırma dosyaları /etc/neo4j/ dizininde, verileri /var/lib/neo4j/ dizininde ve günlükleri /var/log/neo4j/ dizininde bulunur.
Tarball ile Manuel Neo4j Kurulumu
Tarball kurulumu, Neo4j’in belirli bir sürümünü kontrol etmek veya özel bir kurulum dizini kullanmak istediğinizde faydalıdır.
1. Neo4j Tarball’ını İndirin:
Neo4j’in resmi indirme sayfasından (neo4j.com/download-center/) veya aşağıdaki gibi wget komutunu kullanarak en son kararlı Community Edition sürümünü indirin. (Sürüm numarasını güncel olanla değiştirin, örneğin neo4j-community-5.x.x-unix.tar.gz):
cd /tmp
wget https://neo4j.com/artifact.php?name=neo4j-community-5.12.0-unix.tar.gz -O neo4j-community-5.12.0-unix.tar.gz
Not: Yukarıdaki URL ve sürüm numarasını Neo4j’in resmi web sitesindeki en son Community Edition tarball bağlantısıyla güncellediğinizden emin olun.
2. Arşivi Çıkarın:
İndirdiğiniz tarball’ı /opt/ dizinine çıkarın. Bu, genellikle manuel kurulumlar için tercih edilen bir dizindir:
sudo tar -xzf neo4j-community-5.12.0-unix.tar.gz -C /opt/
3. Dizin Adını Değiştirin (İsteğe Bağlı):
Daha kolay erişim için çıkarılan dizinin adını neo4j olarak değiştirebilirsiniz:
sudo mv /opt/neo4j-community-5.12.0 /opt/neo4j
4. Kullanıcı ve İzinleri Yapılandırın:
Neo4j’i belirli bir kullanıcı altında çalıştırmak en iyi uygulamadır. Genellikle neo4j adında bir kullanıcı ve grup oluşturulur ve bu dizinin sahipliği onlara verilir:
sudo adduser --system --no-create-home neo4j
sudo chown -R neo4j:neo4j /opt/neo4j
Bu adımlar, Neo4j’in veri ve log dosyalarına doğru izinlerle erişmesini sağlar.
5. Neo4j’i Başlatın:
Manuel kurulumda Neo4j’i başlatmak için bin dizinindeki betiği kullanırsınız:
/opt/neo4j/bin/neo4j start
Çıktıda Neo4j is running at pid XXXX gibi bir mesaj görmelisiniz.
6. Neo4j’i Durdurun:
Neo4j’i durdurmak için:
/opt/neo4j/bin/neo4j stop
7. Sistemin Yeniden Başlatılmasında Otomatik Başlatma (İleri Düzey, İsteğe Bağlı):
Manuel kurulumda Neo4j’in sistemin yeniden başlatılmasından sonra otomatik olarak başlaması için bir systemd hizmet dosyası oluşturmanız gerekebilir. Bu, daha karmaşık bir adımdır ve genellikle APT kurulumunun basitliği nedeniyle tercih edilmez. Örnek bir systemd hizmet dosyası şöyle görünebilir (ancak bu rehberin kapsamı dışındadır):
[Unit]
Description=Neo4j Graph Database
After=network.target
[Service]
User=neo4j
Group=neo4j
ExecStart=/opt/neo4j/bin/neo4j console
ExecStop=/opt/neo4j/bin/neo4j stop
Restart=on-failure
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=neo4j
[Install]
WantedBy=multi-user.target
Bu dosyayı /etc/systemd/system/neo4j.service olarak kaydedip sudo systemctl daemon-reload, sudo systemctl enable neo4j ve sudo systemctl start neo4j komutlarını çalıştırmanız gerekir.
Manuel kurulumda yapılandırma dosyaları /opt/neo4j/conf/ dizininde, veriler /opt/neo4j/data/ dizininde ve günlükler /opt/neo4j/logs/ dizininde bulunur.
İlk Konfigürasyon ve Neo4j Browser Erişimi
Neo4j başarıyla kurulduktan ve başlatıldıktan sonra, varsayılan olarak iki ana bağlantı noktası üzerinden erişilebilir:
* 7687/tcp (Bolt Protokolü): Uygulama sürücüleri (Java, Python, Node.js vb.) için kullanılan ikili protokoldür.
* 7474/tcp (HTTP/HTTPS): Neo4j Browser (web tabanlı kullanıcı arayüzü) ve REST API erişimi için kullanılır.
1. Neo4j Browser’a Erişin:
Web tarayıcınızı açın ve Neo4j sunucunuzun IP adresini veya localhost‘u kullanarak aşağıdaki adrese gidin:
http://localhost:7474
Eğer bir uzak sunucuya kurduysanız, localhost yerine sunucunuzun IP adresini kullanın: http://:7474.
2. İlk Giriş ve Şifre Değişikliği:
İlk kez bağlandığınızda, Neo4j sizden varsayılan kimlik bilgileriyle oturum açmanızı isteyecektir:
* Kullanıcı Adı: neo4j
* Şifre: neo4j
Giriş yaptıktan sonra, güvenlik nedeniyle yeni bir şifre belirlemeniz istenecektir. Güçlü bir şifre belirlediğinizden emin olun. Bu şifreyi unutmayın, çünkü daha sonraki girişlerinizde bu şifreyi kullanacaksınız.
Şifreyi değiştirdikten sonra, Neo4j Browser arayüzüne yönlendirileceksiniz. Burada Cypher sorguları çalıştırabilir, veritabanını keşfedebilir ve görselleştirmeler yapabilirsiniz.
Gelişmiş Konfigürasyon
Neo4j’in performansını ve davranışını optimize etmek için yapılandırma dosyasını düzenlemeniz gerekebilir. Yapılandırma dosyası, kurulum yöntemine göre farklı yerlerde bulunur:
* APT Kurulumu: /etc/neo4j/neo4j.conf
* Tarball Kurulumu: /opt/neo4j/conf/neo4j.conf
Yapılandırma dosyasını düzenlemek için bir metin düzenleyici kullanın (örneğin, nano veya vim):
sudo nano /etc/neo4j/neo4j.conf
veya
sudo nano /opt/neo4j/conf/neo4j.conf
İşte dikkate almanız gereken bazı önemli yapılandırma parametreleri:
1. Uzak Bağlantılara İzin Verme (dbms.connectors.default_listen_address):
Varsayılan olarak, Neo4j yalnızca localhost (127.0.0.1) üzerinden gelen bağlantıları dinler. Uzak makinelerden (örneğin, kendi bilgisayarınızdan Neo4j Browser’a erişmek için) erişime izin vermek istiyorsanız, bu parametreyi değiştirmeniz gerekir.
#dbms.connectors.default_listen_address=0.0.0.0
Satırın başındaki # işaretini kaldırın ve değeri 0.0.0.0 olarak ayarlayın. Bu, Neo4j’in tüm ağ arayüzlerinden gelen bağlantıları dinlemesini sağlar. Daha güvenli bir yaklaşım için, sadece belirli bir IP adresinden gelen bağlantılara izin vermek üzere o IP adresini de belirtebilirsiniz.
2. Bellek Ayarları (dbms.memory.heap.initial_size, dbms.memory.heap.max_size, dbms.memory.pagecache.size):
Bellek ayarları, Neo4j’in performansı için kritik öneme sahiptir. Sisteminizin RAM miktarına ve veritabanınızın boyutuna göre bu değerleri ayarlamanız gerekir.
* JVM Heap Belleği: Neo4j uygulamasının kendisi ve Cypher sorgu işleme için kullanılır.
#dbms.memory.heap.initial_size=512m
#dbms.memory.heap.max_size=2G
Bu değerleri sisteminizin RAM’inin yaklaşık %25-%50’si kadar bir aralığa ayarlayabilirsiniz. Örneğin, 8GB RAM’e sahip bir sunucuda 2G veya 4G olarak ayarlayabilirsiniz. initial_size ve max_size değerlerinin aynı olması önerilir.
* Page Cache Belleği: Bu, Neo4j’in diskteki veri ve dizin dosyalarını önbelleğe almak için kullandığı bellektir. Grafik veritabanları için en kritik bellek ayarıdır. Ne kadar çok veriyi önbellekte tutabilirse, disk I/O’su o kadar azalır ve sorgu performansı o kadar artar.
#dbms.memory.pagecache.size=512M
Bu değeri sisteminizin kullanılabilir RAM’inin büyük bir kısmına (örneğin, %50-%70’i) ayarlayabilirsiniz. Örneğin, 8GB RAM’e sahip bir sunucuda 4G veya 6G olarak ayarlayabilirsiniz. Veritabanınızın boyutu page cache boyutundan büyükse, en sık erişilen veriler önbellekte tutulacaktır.
3. Kimlik Doğrulamasını Etkinleştirme/Devre Dışı Bırakma (dbms.security.auth_enabled):
Güvenlik nedeniyle kimlik doğrulamanın her zaman etkin olması şiddetle tavsiye edilir. Ancak geliştirme ortamlarında geçici olarak devre dışı bırakmak isteyebilirsiniz:
#dbms.security.auth_enabled=true
true olarak bırakın veya # işaretini kaldırarak etkinleştirin. false olarak ayarlamak kimlik doğrulamasını devre dışı bırakır.
4. Veritabanı Dizinleri (dbms.directories.data, dbms.directories.logs, vb.):
Veritabanı dosyalarının, günlüklerin ve diğer bileşenlerin depolandığı yolları değiştirmek isteyebilirsiniz. Özellikle büyük veritabanları için daha hızlı bir disk bölümüne taşımak isteyebilirsiniz.
APT kurulumunda varsayılanlar:
dbms.directories.data=/var/lib/neo4j/data
dbms.directories.logs=/var/log/neo4j
Manuel kurulumda varsayılanlar:
dbms.directories.data=/opt/neo4j/data
dbms.directories.logs=/opt/neo4j/logs
Bu yolları değiştirdiğinizde, yeni dizinleri oluşturmanız ve Neo4j kullanıcısına uygun izinleri vermeniz gerektiğini unutmayın.
5. Diğer Bağlantı Noktaları:
Bolt ve HTTP/HTTPS bağlantı noktalarını değiştirmek isterseniz, aşağıdaki parametreleri düzenleyebilirsiniz:
#dbms.connector.bolt.listen_address=:7687
#dbms.connector.http.listen_address=:7474
#dbms.connector.https.listen_address=:7473
Yapılandırma Değişikliklerinden Sonra Neo4j’i Yeniden Başlatma:
Herhangi bir yapılandırma değişikliğinden sonra Neo4j servisini yeniden başlatmanız gerekir:
* APT Kurulumu İçin:
sudo systemctl restart neo4j
* Tarball Kurulumu İçin:
/opt/neo4j/bin/neo4j restart
Güvenlik Duvarı Konfigürasyonu (UFW)
Sunucunuzun güvenliğini sağlamak için bir güvenlik duvarı kullanmak önemlidir. Ubuntu’da UFW (Uncomplicated Firewall) yaygın olarak kullanılır. Eğer UFW etkinse, Neo4j’in erişilebilir olması için gerekli bağlantı noktalarını açmanız gerekir.
1. UFW Durumunu Kontrol Edin:
sudo ufw status
Eğer UFW etkin değilse, Status: inactive çıktısını görürsünüz. Etkinleştirmek için sudo ufw enable komutunu kullanabilirsiniz.
2. Neo4j Bağlantı Noktalarını Açın:
Neo4j’in varsayılan bağlantı noktaları olan 7687 (Bolt) ve 7474 (HTTP/Browser) için izin kuralları ekleyin:
sudo ufw allow 7687/tcp
sudo ufw allow 7474/tcp
Eğer SSH bağlantı noktanızı (varsayılan 22) zaten açmadıysanız, bunu da yapmalısınız:
sudo ufw allow OpenSSH
veya
sudo ufw allow 22/tcp
3. UFW Değişikliklerini Uygulayın:
sudo ufw reload
4. UFW Durumunu Tekrar Kontrol Edin:
sudo ufw status
Şimdi eklediğiniz kuralları listede görmelisiniz.
Temel Kullanım ve Doğrulama
Neo4j Browser’a eriştiğinizde, veritabanının çalıştığını ve sorgu çalıştırabileceğinizi doğrulayabilirsiniz.
1. Basit Bir Cypher Sorgusu Çalıştırın:
Neo4j Browser’daki sorgu çubuğuna aşağıdaki Cypher sorgusunu yazın ve çalıştırın (üçgen “play” düğmesine tıklayın veya Shift+Enter tuşlarına basın):
CREATE (n:Greeting {message: 'Hello, Neo4j!'}) RETURN n;
Bu sorgu, Greeting etiketine sahip ve message özelliği ‘Hello, Neo4j!’ olan bir düğüm oluşturur ve onu döndürür. Sağ tarafta düğümün görsel temsilini görmelisiniz.
2. Oluşturulan Düğümü Sorgulayın:
Şimdi oluşturduğunuz düğümü geri almak için aşağıdaki sorguyu çalıştırın:
MATCH (n:Greeting) RETURN n;
Bu sorgu, Greeting etiketine sahip tüm düğümleri eşleştirir ve döndürür.
3. Veritabanı Bilgisini Kontrol Edin:
Veritabanınızın mevcut durumunu ve yapılandırmasını kontrol etmek için:
:sysinfo
Bu komut, Neo4j sürümü, bellek kullanımı, dizin yolları gibi sistem bilgilerini gösterir.
Bu adımlar, Neo4j kurulumunuzun başarılı olduğunu ve temel Cypher sorgularını çalıştırabildiğinizi doğrular.
Sorun Giderme
Kurulum veya yapılandırma sırasında sorunlarla karşılaşmanız durumunda, aşağıdaki adımları izleyerek sorunları gidermeye çalışabilirsiniz:
1. Neo4j Günlüklerini Kontrol Edin:
Neo4j’in günlük dosyaları, sorunların nedenini anlamak için en iyi kaynaktır.
* APT Kurulumu: /var/log/neo4j/neo4j.log
* Tarball Kurulumu: /opt/neo4j/logs/neo4j.log
Günlükleri tail -f /var/log/neo4j/neo4j.log komutuyla canlı olarak izleyebilirsiniz. Hata mesajlarını dikkatlice inceleyin.
2. Java Kurulumunu Kontrol Edin:
java -version komutunu çalıştırarak doğru Java sürümünün kurulu olduğundan ve JAVA_HOME ortam değişkeninin doğru ayarlandığından emin olun. Neo4j’in beklediği Java sürümünü (OpenJDK 11 veya 17) kullandığınızdan emin olun.
3. Bellek Ayarlarını Kontrol Edin:
neo4j.conf dosyasındaki bellek ayarlarının (özellikle dbms.memory.heap.max_size ve dbms.memory.pagecache.size) sisteminizin RAM’ini aşmadığından emin olun. Çok yüksek değerler, Neo4j’in başlamamasına veya sistemin kararsız hale gelmesine neden olabilir.
4. Bağlantı Noktası Çakışmalarını Kontrol Edin:
Neo4j’in varsayılan bağlantı noktaları (7687, 7474) başka bir uygulama tarafından kullanılıyor olabilir. sudo lsof -i :7687 veya sudo netstat -tulnp | grep 7687 gibi komutlarla bu bağlantı noktalarını dinleyen başka bir süreç olup olmadığını kontrol edebilirsiniz.
5. Dosya İzinlerini Kontrol Edin:
Özellikle manuel kurulumda, Neo4j’in veri ve log dizinlerine yazma izinleri olduğundan emin olun. chown ve chmod komutlarını kullanarak izinleri düzeltmeniz gerekebilir. Neo4j’i çalıştıran kullanıcının (genellikle neo4j kullanıcısı) bu dizinlere tam erişimi olmalıdır.
6. Güvenlik Duvarını Kontrol Edin:
UFW veya başka bir güvenlik duvarı kullanıyorsanız, Neo4j’in bağlantı noktalarının (7687 ve 7474) dışarıdan erişime açık olduğundan emin olun.
7. Servis Durumunu Kontrol Edin:
sudo systemctl status neo4j komutuyla Neo4j servisinin durumunu kontrol edin. Eğer failed durumundaysa, sudo journalctl -xe | grep neo4j komutuyla daha detaylı hata mesajlarını inceleyebilirsiniz.
8. Diskte Yer Kalıp Kalmadığını Kontrol Edin:
df -h komutuyla disk alanınızın dolu olup olmadığını kontrol edin. Disk doluluğu, Neo4j’in veri yazmasını engelleyebilir ve hatalara yol açabilir.
Sonuç
Bu rehberde, Neo4j grafik veritabanını Ubuntu 20.04 işletim sistemi üzerine kurmak ve yapılandırmak için gereken tüm adımları detaylı bir şekilde inceledik. Hem APT deposu üzerinden hızlı ve kolay kurulumu hem de tarball ile manuel kurulumu ele aldık. Ayrıca, Neo4j’in performansını ve güvenliğini etkileyen kritik yapılandırma ayarlarını, güvenlik duvarı kurallarını ve temel sorun giderme tekniklerini öğrendiniz.
Artık Ubuntu 20.04 sunucunuzda çalışan bir Neo4j örneğine sahipsiniz ve Neo4j Browser üzerinden veritabanınızla etkileşime geçebilirsiniz. Grafik veritabanları, ilişkisel veritabanlarının zorlandığı karmaşık ve bağlantılı veri senaryolarında güçlü çözümler sunar. Bu kurulum, Neo4j’in güçlü dünyasına adım atmanız için sağlam bir temel oluşturmaktadır.
Neo4j’in sunduğu olanakları tam olarak keşfetmek için Cypher sorgu dilini daha derinlemesine öğrenmeniz, Neo4j dokümantasyonunu incelemeniz ve gerçek dünya veri kümeleriyle denemeler yapmanız önerilir. Grafik veritabanlarının geleceğin veri yönetimi teknolojilerinden biri olduğu düşünüldüğünde, bu beceriler size değerli avantajlar sağlayacaktır.
