{"id":36489,"date":"2025-12-18T22:40:57","date_gmt":"2025-12-18T19:40:57","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=36489"},"modified":"2025-12-18T22:40:57","modified_gmt":"2025-12-18T19:40:57","slug":"ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/","title":{"rendered":"Ubuntu VPS \u00dczerine Neo4j Kurulumu: Kapsaml\u0131 Bir Rehber"},"content":{"rendered":"<p><body><\/p>\n<h2>Ubuntu VPS \u00dczerine Neo4j Kurulumu: Kapsaml\u0131 Bir Rehber<\/h2>\n<h3>Giri\u015f: Neo4j ve \u0130li\u015fkisel Verilerin \u00d6tesi<\/h3>\n<p>G\u00fcn\u00fcm\u00fcz\u00fcn h\u0131zla b\u00fcy\u00fcyen veri d\u00fcnyas\u0131nda, geleneksel ili\u015fkisel veritabanlar\u0131 (RDBMS) baz\u0131 karma\u015f\u0131k veri modellerini ve ili\u015fkileri y\u00f6netmekte yetersiz kalabilmektedir. \u00d6zellikle a\u011f tabanl\u0131 veriler, sosyal ili\u015fkiler, \u00f6neri sistemleri, doland\u0131r\u0131c\u0131l\u0131k tespiti ve bilgi grafikleri gibi alanlarda, veriler aras\u0131ndaki ba\u011flant\u0131lar ve ili\u015fkiler, tek ba\u015f\u0131na verilerin kendisi kadar hatta daha fazla \u00f6nem ta\u015f\u0131r. \u0130\u015fte bu noktada, grafik veritabanlar\u0131 devreye girer ve Neo4j, bu alandaki en pop\u00fcler ve g\u00fc\u00e7l\u00fc \u00e7\u00f6z\u00fcmlerden biri olarak \u00f6ne \u00e7\u0131kar.<\/p>\n<p>Neo4j, verileri d\u00fc\u011f\u00fcmler (nodes), ili\u015fkiler (relationships) ve \u00f6zellikler (properties) olarak depolayan, ACID uyumlu, yerel bir grafik veritaban\u0131d\u0131r. \u0130li\u015fkisel veritabanlar\u0131n\u0131n aksine, Neo4j&#8217;de ili\u015fkiler &#8220;birinci s\u0131n\u0131f vatanda\u015f&#8221; stat\u00fcs\u00fcndedir; yani veriler aras\u0131ndaki ba\u011flant\u0131lar do\u011frudan veritaban\u0131 \u015femas\u0131na dahil edilir ve sorgulama s\u0131ras\u0131nda eklemeler (JOIN) gerektirmez. Bu yap\u0131, \u00f6zellikle \u00e7oklu atlamal\u0131 ili\u015fkileri sorgularken ola\u011fan\u00fcst\u00fc performans art\u0131\u015flar\u0131 sa\u011flar. Neo4j&#8217;nin kendi sorgu dili olan Cypher, sezgisel ve g\u00fc\u00e7l\u00fc yap\u0131s\u0131yla grafik desenlerini kolayca ifade etmenize olanak tan\u0131r.<\/p>\n<p>Bu rehber, Ubuntu tabanl\u0131 bir Sanal \u00d6zel Sunucu (VPS) \u00fczerine Neo4j&#8217;nin nas\u0131l kurulaca\u011f\u0131n\u0131 ad\u0131m ad\u0131m a\u00e7\u0131klamaktad\u0131r. Ubuntu, sunucu ortamlar\u0131nda yayg\u0131n olarak kullan\u0131lan, stabil ve g\u00fcvenilir bir i\u015fletim sistemidir. Bir VPS ise, kendi sunucu ortam\u0131n\u0131z\u0131 y\u00f6netme esnekli\u011fi sunarken, donan\u0131m maliyetlerinden tasarruf etmenizi sa\u011flar. Bu kombinasyon, geli\u015ftirme, test etme veya k\u00fc\u00e7\u00fck \u00f6l\u00e7ekli \u00fcretim ortamlar\u0131 i\u00e7in ideal bir \u00e7\u00f6z\u00fcm sunar. Amac\u0131m\u0131z, bu kapsaml\u0131 rehber sayesinde, Neo4j&#8217;yi Ubuntu VPS&#8217;inize sorunsuz bir \u015fekilde kurman\u0131z\u0131, temel yap\u0131land\u0131rmalar\u0131n\u0131 yapman\u0131z\u0131 ve g\u00fcvenli bir \u015fekilde kullanmaya ba\u015flaman\u0131z\u0131 sa\u011flamakt\u0131r.<\/p>\n<h3>\u00d6n Gereksinimler<\/h3>\n<p>Neo4j kurulumuna ba\u015flamadan \u00f6nce, baz\u0131 temel gereksinimleri kar\u015f\u0131laman\u0131z gerekmektedir. Bu gereksinimler, kurulum s\u00fcrecinin sorunsuz ilerlemesi ve Neo4j&#8217;nin optimum performansla \u00e7al\u0131\u015fmas\u0131 i\u00e7in kritik \u00f6neme sahiptir.<\/p>\n<p>*   <strong>Ubuntu VPS:<\/strong> En az 2 CPU \u00e7ekirde\u011fi, 4 GB RAM ve 80 GB SSD depolama alan\u0131na sahip bir Ubuntu 20.04 LTS veya 22.04 LTS s\u00fcr\u00fcm\u00fcne sahip bir VPS. Daha b\u00fcy\u00fck veritabanlar\u0131 veya yo\u011fun i\u015f y\u00fckleri i\u00e7in daha fazla kaynak \u00f6nerilir.<br \/>\n*   <strong>SSH Eri\u015fimi:<\/strong> VPS&#8217;inize SSH \u00fczerinden eri\u015fim sa\u011flayabilen, <code>sudo<\/code> yetkilerine sahip bir kullan\u0131c\u0131 hesab\u0131n\u0131z\u0131n olmas\u0131 gerekir. Genellikle VPS sa\u011flay\u0131c\u0131lar\u0131 size bu eri\u015fimi sa\u011flarlar.<br \/>\n*   <strong>Java Geli\u015ftirme Kiti (JDK):<\/strong> Neo4j, Java sanal makinesi (JVM) \u00fczerinde \u00e7al\u0131\u015f\u0131r. Bu nedenle, VPS&#8217;inizde uyumlu bir JDK s\u00fcr\u00fcm\u00fcn\u00fcn kurulu olmas\u0131 \u015fartt\u0131r. Neo4j&#8217;nin modern s\u00fcr\u00fcmleri i\u00e7in OpenJDK 11 veya OpenJDK 17 \u00f6nerilir.<br \/>\n*   <strong>Temel Linux Komut Bilgisi:<\/strong> <code>apt<\/code>, <code>systemctl<\/code>, <code>ufw<\/code>, <code>nano<\/code> veya <code>vim<\/code> gibi temel Linux komutlar\u0131n\u0131 kullanabilme yetene\u011fi.<br \/>\n*   <strong>\u0130nternet Ba\u011flant\u0131s\u0131:<\/strong> Kurulum paketlerini indirmek i\u00e7in VPS&#8217;inizin aktif bir internet ba\u011flant\u0131s\u0131na sahip olmas\u0131 gerekir.<\/p>\n<h3>Sistem G\u00fcncelleme ve Temel Haz\u0131rl\u0131klar<\/h3>\n<p>Herhangi bir yaz\u0131l\u0131m kurulumuna ba\u015flamadan \u00f6nce, Ubuntu sisteminizin g\u00fcncel oldu\u011fundan emin olmak iyi bir pratiktir. Bu, g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 kapat\u0131r ve paket ba\u011f\u0131ml\u0131l\u0131k sorunlar\u0131n\u0131 \u00f6nler.<\/p>\n<p>VPS&#8217;inize SSH ile ba\u011fland\u0131ktan sonra a\u015fa\u011f\u0131daki komutlar\u0131 \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo apt update\nsudo apt upgrade -y<\/code><\/pre>\n<p>*   <code>sudo apt update<\/code>: Bu komut, yerel paket indeksinizi g\u00fcncelleyerek mevcut t\u00fcm paketlerin en son s\u00fcr\u00fcmlerini ve yeni mevcut paketleri kontrol eder.<br \/>\n*   <code>sudo apt upgrade -y<\/code>: Bu komut, g\u00fcncellenmi\u015f paket indeksine g\u00f6re kurulu t\u00fcm paketleri en son s\u00fcr\u00fcmlerine y\u00fckseltir. <code>-y<\/code> bayra\u011f\u0131, t\u00fcm onay sorular\u0131na otomatik olarak &#8220;evet&#8221; yan\u0131t\u0131 verilmesini sa\u011flar.<\/p>\n<p>Ayr\u0131ca, baz\u0131 temel ara\u00e7lar\u0131n kurulu oldu\u011fundan emin olmak faydal\u0131d\u0131r:<\/p>\n<pre><code class=\"language-bash\">sudo apt install curl wget apt-transport-https ca-certificates -y<\/code><\/pre>\n<p>Bu komutlar, <code>curl<\/code> ve <code>wget<\/code> gibi web kaynaklar\u0131ndan dosya indirmek i\u00e7in kullan\u0131lan ara\u00e7lar\u0131, <code>apt-transport-https<\/code> ve <code>ca-certificates<\/code> gibi g\u00fcvenli HTTPS ba\u011flant\u0131lar\u0131 \u00fczerinden paket indirmek i\u00e7in gerekli olan bile\u015fenleri kurar.<\/p>\n<h3>Java Geli\u015ftirme Kiti (JDK) Kurulumu<\/h3>\n<p>Neo4j&#8217;nin \u00e7al\u0131\u015fmas\u0131 i\u00e7in bir Java Runtime Environment (JRE) veya Java Development Kit (JDK) gereklidir. Neo4j&#8217;nin modern s\u00fcr\u00fcmleri genellikle OpenJDK 11 veya OpenJDK 17 ile uyumludur. Bu rehberde OpenJDK 17&#8217;yi kuraca\u011f\u0131z.<\/p>\n<p>\u00d6ncelikle, sistemde zaten kurulu bir Java s\u00fcr\u00fcm\u00fc olup olmad\u0131\u011f\u0131n\u0131 kontrol edelim:<\/p>\n<pre><code class=\"language-bash\">java -version<\/code><\/pre>\n<p>E\u011fer Java kurulu de\u011filse veya eski bir s\u00fcr\u00fcmse, a\u015fa\u011f\u0131daki komutla OpenJDK 17&#8217;yi kurabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo apt install openjdk-17-jdk -y<\/code><\/pre>\n<p>Kurulum tamamland\u0131ktan sonra, Java s\u00fcr\u00fcm\u00fcn\u00fc tekrar kontrol ederek do\u011fru s\u00fcr\u00fcm\u00fcn y\u00fcklendi\u011finden emin olun:<\/p>\n<pre><code class=\"language-bash\">java -version<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131, &#8220;openjdk version &#8220;17.0.x&#8221;&#8221; gibi bir ifade i\u00e7ermelidir.<\/p>\n<p>Opsiyonel olarak, <code>JAVA_HOME<\/code> ortam de\u011fi\u015fkenini ayarlamak iyi bir pratiktir. Bu, baz\u0131 uygulamalar\u0131n Java kurulumunu bulmas\u0131na yard\u0131mc\u0131 olabilir.<\/p>\n<pre><code class=\"language-bash\">echo \"JAVA_HOME=\/usr\/lib\/jvm\/java-17-openjdk-amd64\" | sudo tee -a \/etc\/environment\necho \"PATH=$PATH:$JAVA_HOME\/bin\" | sudo tee -a \/etc\/environment\nsource \/etc\/environment<\/code><\/pre>\n<p>Bu komutlar, <code>JAVA_HOME<\/code> de\u011fi\u015fkenini <code>\/etc\/environment<\/code> dosyas\u0131na ekler ve mevcut oturum i\u00e7in ge\u00e7erli hale getirir.<\/p>\n<h3>Neo4j Kurulum Y\u00f6ntemleri<\/h3>\n<p>Neo4j&#8217;yi Ubuntu&#8217;ya kurman\u0131n birka\u00e7 farkl\u0131 yolu vard\u0131r:<\/p>\n<p>1.  <strong>APT Deposu \u00dczerinden Kurulum (\u00d6nerilen):<\/strong> Neo4j, kendi resmi APT deposunu sunar. Bu y\u00f6ntem, kurulumu kolayla\u015ft\u0131r\u0131r, ba\u011f\u0131ml\u0131l\u0131klar\u0131 otomatik olarak y\u00f6netir ve gelecekteki g\u00fcncellemeleri <code>apt upgrade<\/code> komutuyla yapman\u0131z\u0131 sa\u011flar. Bu rehberde bu y\u00f6ntemi kullanaca\u011f\u0131z.<br \/>\n2.  <strong>Tarball&#8217;dan Manuel Kurulum:<\/strong> Neo4j&#8217;nin <code>.tar.gz<\/code> ar\u015fivini indirip manuel olarak istedi\u011finiz bir dizine a\u00e7arak kurabilirsiniz. Bu y\u00f6ntem, daha fazla esneklik sunar ancak ba\u011f\u0131ml\u0131l\u0131klar\u0131 ve servis y\u00f6netimini manuel olarak yapman\u0131z\u0131 gerektirir. Genellikle belirli bir s\u00fcr\u00fcm\u00fc veya \u00f6zel bir yap\u0131land\u0131rmay\u0131 kullanmak isteyen ileri d\u00fczey kullan\u0131c\u0131lar taraf\u0131ndan tercih edilir.<br \/>\n3.  <strong>Docker ile Kurulum:<\/strong> Neo4j&#8217;yi bir Docker konteyneri i\u00e7inde \u00e7al\u0131\u015ft\u0131rmak da pop\u00fcler bir y\u00f6ntemdir. Bu, izolasyon, ta\u015f\u0131nabilirlik ve kolay da\u011f\u0131t\u0131m avantajlar\u0131 sunar. Ancak, bu rehberin kapsam\u0131 d\u0131\u015f\u0131nda kalmaktad\u0131r.<\/p>\n<h3>APT Deposu \u00dczerinden Neo4j Kurulumu<\/h3>\n<p>Bu b\u00f6l\u00fcmde, Neo4j&#8217;yi Ubuntu&#8217;nun paket y\u00f6neticisi olan APT arac\u0131l\u0131\u011f\u0131yla resmi depodan kuraca\u011f\u0131z.<\/p>\n<h4>GPG Anahtar\u0131n\u0131 Ekleme<\/h4>\n<p>APT, indirilen paketlerin g\u00fcvenilirli\u011fini do\u011frulamak i\u00e7in GPG anahtarlar\u0131n\u0131 kullan\u0131r. Neo4j deposunun anahtar\u0131n\u0131 sisteminize eklememiz gerekiyor.<\/p>\n<p>Modern Ubuntu s\u00fcr\u00fcmleri i\u00e7in (20.04 ve \u00fczeri), GPG anahtarlar\u0131n\u0131 do\u011frudan <code>\/usr\/share\/keyrings\/<\/code> dizinine yerle\u015ftirmek en iyi pratiktir:<\/p>\n<pre><code class=\"language-bash\">curl -fsSL https:\/\/debian.neo4j.com\/neotechnology.gpg.key | sudo gpg --dearmor -o \/usr\/share\/keyrings\/neo4j.gpg<\/code><\/pre>\n<p>Bu komut:<br \/>\n*   <code>curl -fsSL https:\/\/debian.neo4j.com\/neotechnology.gpg.key<\/code>: Neo4j&#8217;nin GPG anahtar\u0131n\u0131 indirir.<br \/>\n*   <code>sudo gpg --dearmor -o \/usr\/share\/keyrings\/neo4j.gpg<\/code>: \u0130ndirilen anahtar\u0131 de-armor eder (metin tabanl\u0131 formattan ikili formata d\u00f6n\u00fc\u015ft\u00fcr\u00fcr) ve <code>\/usr\/share\/keyrings\/neo4j.gpg<\/code> konumuna kaydeder.<\/p>\n<h4>Neo4j Deposunu Ekleme<\/h4>\n<p>\u015eimdi, Neo4j deposunu APT kaynak listenize eklememiz gerekiyor. Bu, sisteminizin Neo4j paketlerini nereden indirece\u011fini bilmesini sa\u011flar.<\/p>\n<pre><code class=\"language-bash\">echo \"deb [signed-by=\/usr\/share\/keyrings\/neo4j.gpg] https:\/\/debian.neo4j.com stable latest\" | sudo tee -a \/etc\/apt\/sources.list.d\/neo4j.list<\/code><\/pre>\n<p>Bu komut:<br \/>\n*   <code>echo \"deb [signed-by=\/usr\/share\/keyrings\/neo4j.gpg] https:\/\/debian.neo4j.com stable latest\"<\/code>: Neo4j deposunun tan\u0131m\u0131n\u0131 i\u00e7eren bir sat\u0131r olu\u015fturur. <code>signed-by<\/code> parametresi, bu depo i\u00e7in kullan\u0131lacak GPG anahtar\u0131n\u0131n konumunu belirtir.<br \/>\n*   <code>sudo tee -a \/etc\/apt\/sources.list.d\/neo4j.list<\/code>: Bu sat\u0131r\u0131 <code>\/etc\/apt\/sources.list.d\/neo4j.list<\/code> adl\u0131 yeni bir dosyaya ekler. Bu dizin, \u00fc\u00e7\u00fcnc\u00fc taraf depolar\u0131 i\u00e7in standart bir konumdur.<\/p>\n<h4>Depoyu G\u00fcncelleme ve Neo4j Kurulumu<\/h4>\n<p>Yeni depoyu ekledikten sonra, APT paket indeksini tekrar g\u00fcncellememiz ve ard\u0131ndan Neo4j paketini kurmam\u0131z gerekiyor.<\/p>\n<pre><code class=\"language-bash\">sudo apt update\nsudo apt install neo4j -y<\/code><\/pre>\n<p><code>sudo apt update<\/code> komutu, yeni eklenen Neo4j deposunun paket bilgilerini getirir.<br \/>\n<code>sudo apt install neo4j -y<\/code> komutu ise Neo4j sunucusunu ve gerekli t\u00fcm ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 sisteminize kurar.<\/p>\n<h4>Kurulumu Do\u011frulama ve Servis Y\u00f6netimi<\/h4>\n<p>Kurulum tamamland\u0131ktan sonra, Neo4j servisinin durumunu kontrol edelim ve sistem ba\u015flang\u0131c\u0131nda otomatik olarak ba\u015flamas\u0131n\u0131 sa\u011flayal\u0131m.<\/p>\n<p>Neo4j servisinin durumunu kontrol edin:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl status neo4j<\/code><\/pre>\n<p>E\u011fer servis \u00e7al\u0131\u015fm\u0131yorsa, ba\u015flat\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl start neo4j<\/code><\/pre>\n<p>Sistem yeniden ba\u015flat\u0131ld\u0131\u011f\u0131nda Neo4j&#8217;nin otomatik olarak ba\u015flamas\u0131n\u0131 sa\u011flamak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl enable neo4j<\/code><\/pre>\n<p>Bu komutlar, Neo4j&#8217;nin bir sistem servisi olarak d\u00fczg\u00fcn bir \u015fekilde kuruldu\u011funu ve y\u00f6netilebildi\u011fini do\u011frular.<\/p>\n<h3>Neo4j Temel Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>Neo4j&#8217;nin davran\u0131\u015f\u0131n\u0131 ve performans\u0131n\u0131 ayarlamak i\u00e7in yap\u0131land\u0131rma dosyas\u0131n\u0131 d\u00fczenlemeniz gerekebilir. Neo4j&#8217;nin ana yap\u0131land\u0131rma dosyas\u0131 <code>\/etc\/neo4j\/neo4j.conf<\/code> konumundad\u0131r. Bu dosyay\u0131 bir metin d\u00fczenleyici (\u00f6rne\u011fin <code>nano<\/code> veya <code>vim<\/code>) ile a\u00e7abilirsiniz.<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/neo4j\/neo4j.conf<\/code><\/pre>\n<h4>Eri\u015fim Ayarlar\u0131<\/h4>\n<p>Varsay\u0131lan olarak, Neo4j yaln\u0131zca yerel makineden (<code>127.0.0.1<\/code>) eri\u015fime izin verir. VPS&#8217;inizin d\u0131\u015f\u0131ndan (\u00f6rne\u011fin kendi bilgisayar\u0131n\u0131zdan) Neo4j Browser veya bir uygulama arac\u0131l\u0131\u011f\u0131yla eri\u015fmek istiyorsan\u0131z, dinleme adreslerini de\u011fi\u015ftirmeniz gerekir.<\/p>\n<p>A\u015fa\u011f\u0131daki sat\u0131rlar\u0131 bulun ve ba\u015flar\u0131ndaki <code>#<\/code> i\u015faretini kald\u0131rarak veya ekleyerek d\u00fczenleyin:<\/p>\n<pre><code class=\"language-ini\"># dbms.connectors.default_listen_address=0.0.0.0\n<h2>dbms.connectors.default_advertised_address=<YOUR_VPS_IP_ADDRESS><\/h2>\ndbms.connectors.http.listen_address=0.0.0.0:7474\ndbms.connectors.bolt.listen_address=0.0.0.0:7687<\/code><\/pre>\n<p>*   <code>dbms.connectors.http.listen_address=0.0.0.0:7474<\/code>: Neo4j Browser ve HTTP API i\u00e7in kullan\u0131lan portu ve dinleme adresini ayarlar. <code>0.0.0.0<\/code>, t\u00fcm a\u011f aray\u00fczlerinden gelen ba\u011flant\u0131lara izin verir.<br \/>\n*   <code>dbms.connectors.bolt.listen_address=0.0.0.0:7687<\/code>: Bolt protokol\u00fc i\u00e7in kullan\u0131lan portu ve dinleme adresini ayarlar. Bolt, Neo4j s\u00fcr\u00fcc\u00fcleri taraf\u0131ndan kullan\u0131lan ikili protokold\u00fcr.<\/p>\n<p><strong>G\u00fcvenlik Uyar\u0131s\u0131:<\/strong> <code>0.0.0.0<\/code> kullanmak, Neo4j&#8217;nizin internet \u00fczerindeki herkese a\u00e7\u0131k olaca\u011f\u0131 anlam\u0131na gelir. Bu, \u00f6zellikle \u015fifreleri de\u011fi\u015ftirmeden veya g\u00fcvenlik duvar\u0131 kurallar\u0131n\u0131 uygulamadan yap\u0131l\u0131rsa b\u00fcy\u00fck bir g\u00fcvenlik riski olu\u015fturur. \u00dcretim ortamlar\u0131nda, bu adresin belirli IP&#8217;lerle k\u0131s\u0131tlanmas\u0131 veya bir ters proxy (Nginx gibi) arkas\u0131na al\u0131nmas\u0131 \u015fiddetle tavsiye edilir.<\/p>\n<h4>Bellek Ayarlar\u0131<\/h4>\n<p>Neo4j&#8217;nin performans\u0131, ayr\u0131lan belle\u011fe b\u00fcy\u00fck \u00f6l\u00e7\u00fcde ba\u011fl\u0131d\u0131r. VPS&#8217;inizin RAM&#8217;ine g\u00f6re bu ayarlar\u0131 optimize etmeniz \u00f6nemlidir.<\/p>\n<pre><code class=\"language-ini\">dbms.memory.heap.initial_size=512m\ndbms.memory.heap.max_size=2G\ndbms.memory.pagecache.size=1G<\/code><\/pre>\n<p>*   <code>dbms.memory.heap.initial_size<\/code>: JVM i\u00e7in ba\u015flang\u0131\u00e7 y\u0131\u011f\u0131n belle\u011fi.<br \/>\n*   <code>dbms.memory.heap.max_size<\/code>: JVM i\u00e7in maksimum y\u0131\u011f\u0131n belle\u011fi. Bu de\u011fer, VPS&#8217;inizin toplam RAM&#8217;inin yakla\u015f\u0131k %25-50&#8217;si kadar olabilir. \u00d6rne\u011fin, 4GB RAM&#8217;e sahip bir VPS i\u00e7in 2GB makul bir ba\u015flang\u0131\u00e7 noktas\u0131d\u0131r.<br \/>\n*   <code>dbms.memory.pagecache.size<\/code>: Neo4j&#8217;nin diskten okudu\u011fu verileri \u00f6nbelle\u011fe almak i\u00e7in kulland\u0131\u011f\u0131 bellek miktar\u0131. Bu, sorgu performans\u0131n\u0131 b\u00fcy\u00fck \u00f6l\u00e7\u00fcde etkiler. Kalan RAM&#8217;in b\u00fcy\u00fck bir k\u0131sm\u0131n\u0131 (\u00f6rne\u011fin, 4GB RAM i\u00e7in 1GB) bu \u00f6nbelle\u011fe ay\u0131rmak iyi bir fikirdir.<\/p>\n<p>Bu de\u011ferleri VPS&#8217;inizin kaynaklar\u0131na ve beklenen i\u015f y\u00fck\u00fcne g\u00f6re ayarlay\u0131n.<\/p>\n<h4>Veritaban\u0131 Konumu<\/h4>\n<p>Veritaban\u0131 dosyalar\u0131n\u0131n depoland\u0131\u011f\u0131 dizini de kontrol edebilirsiniz:<\/p>\n<pre><code class=\"language-ini\">dbms.directories.data=\/var\/lib\/neo4j\/data<\/code><\/pre>\n<p>Genellikle bu varsay\u0131lan konum yeterlidir, ancak \u00f6zel bir disk b\u00f6l\u00fcm\u00fcne veya daha b\u00fcy\u00fck bir depolama alan\u0131na sahipseniz bu yolu de\u011fi\u015ftirebilirsiniz.<\/p>\n<h4>De\u011fi\u015fiklikleri Uygulama<\/h4>\n<p>Yap\u0131land\u0131rma dosyas\u0131nda de\u011fi\u015fiklikler yapt\u0131ktan sonra, Neo4j servisini yeniden ba\u015flatman\u0131z gerekir:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl restart neo4j<\/code><\/pre>\n<p>Servisin yeniden ba\u015flad\u0131\u011f\u0131ndan emin olmak i\u00e7in tekrar durumunu kontrol edin:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl status neo4j<\/code><\/pre>\n<h3>G\u00fcvenlik Duvar\u0131 (UFW) Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>VPS&#8217;inize d\u0131\u015far\u0131dan eri\u015fime izin verirken g\u00fcvenli\u011fi sa\u011flamak \u00e7ok \u00f6nemlidir. Ubuntu&#8217;da basit bir g\u00fcvenlik duvar\u0131 olan UFW (Uncomplicated Firewall) genellikle varsay\u0131lan olarak bulunur. Neo4j&#8217;ye ve SSH&#8217;e eri\u015fim i\u00e7in gerekli portlar\u0131 a\u00e7mam\u0131z gerekiyor.<\/p>\n<p>\u00d6ncelikle, UFW&#8217;nin durumunu kontrol edin:<\/p>\n<pre><code class=\"language-bash\">sudo ufw status<\/code><\/pre>\n<p>E\u011fer UFW etkin de\u011filse, a\u015fa\u011f\u0131daki komutlarla gerekli portlar\u0131 a\u00e7\u0131n ve ard\u0131ndan etkinle\u015ftirin.<\/p>\n<p><strong>SSH Portu (22):<\/strong> Her zaman SSH ba\u011flant\u0131n\u0131z\u0131 a\u00e7\u0131k tutmal\u0131s\u0131n\u0131z. Aksi takdirde sunucunuza eri\u015fiminizi kaybedebilirsiniz.<\/p>\n<pre><code class=\"language-bash\">sudo ufw allow 22\/tcp comment 'Allow SSH'<\/code><\/pre>\n<p><strong>Neo4j Portlar\u0131:<\/strong><br \/>\n*   <strong>7474\/tcp:<\/strong> Neo4j Browser (HTTP) ve HTTP API eri\u015fimi i\u00e7in.<br \/>\n*   <strong>7687\/tcp:<\/strong> Bolt protokol\u00fc i\u00e7in (Neo4j s\u00fcr\u00fcc\u00fcleri bu portu kullan\u0131r).<\/p>\n<pre><code class=\"language-bash\">sudo ufw allow 7474\/tcp comment 'Allow Neo4j HTTP\/Browser'\nsudo ufw allow 7687\/tcp comment 'Allow Neo4j Bolt'<\/code><\/pre>\n<p>T\u00fcm kurallar\u0131 ekledikten sonra, UFW&#8217;yi etkinle\u015ftirin:<\/p>\n<pre><code class=\"language-bash\">sudo ufw enable<\/code><\/pre>\n<p>Bu i\u015flem size bir uyar\u0131 verecektir: &#8220;Command may disrupt existing ssh connections. Proceed with operation (y|n)?&#8221; <code>y<\/code> yaz\u0131p Enter tu\u015funa basarak onaylay\u0131n.<\/p>\n<p>UFW&#8217;nin etkinle\u015ftirildi\u011finden ve kurallar\u0131n do\u011fru bir \u015fekilde uyguland\u0131\u011f\u0131ndan emin olmak i\u00e7in tekrar durumunu kontrol edin:<\/p>\n<pre><code class=\"language-bash\">sudo ufw status verbose<\/code><\/pre>\n<p>Art\u0131k VPS&#8217;inizin g\u00fcvenlik duvar\u0131, sadece belirtilen portlardan gelen ba\u011flant\u0131lara izin verecek \u015fekilde yap\u0131land\u0131r\u0131lm\u0131\u015ft\u0131r.<\/p>\n<h3>Neo4j Web Aray\u00fcz\u00fcne Eri\u015fim ve \u0130lk Kullan\u0131m<\/h3>\n<p>T\u00fcm kurulum ve yap\u0131land\u0131rma ad\u0131mlar\u0131n\u0131 tamamlad\u0131\u011f\u0131n\u0131za g\u00f6re, Neo4j&#8217;nin web tabanl\u0131 y\u00f6netim aray\u00fcz\u00fc olan Neo4j Browser&#8217;a eri\u015febilirsiniz.<\/p>\n<p>Web taray\u0131c\u0131n\u0131z\u0131 a\u00e7\u0131n ve VPS&#8217;inizin IP adresini veya alan ad\u0131n\u0131 kullanarak a\u015fa\u011f\u0131daki adrese gidin:<\/p>\n<pre><code class=\"language-\">http:\/\/<VPS_IP_Adresi_veya_Alan_Ad\u0131>:7474<\/code><\/pre>\n<p>\u00d6rne\u011fin, VPS&#8217;inizin IP adresi <code>192.168.1.100<\/code> ise, <code>http:\/\/192.168.1.100:7474<\/code> adresine gitmelisiniz.<\/p>\n<p>Kar\u015f\u0131n\u0131za Neo4j Browser&#8217;\u0131n giri\u015f ekran\u0131 gelecektir. Varsay\u0131lan kullan\u0131c\u0131 ad\u0131 ve \u015fifre \u015funlard\u0131r:<\/p>\n<p>*   <strong>Kullan\u0131c\u0131 Ad\u0131:<\/strong> <code>neo4j<\/code><br \/>\n*   <strong>\u015eifre:<\/strong> <code>neo4j<\/code><\/p>\n<p>\u0130lk kez giri\u015f yapt\u0131\u011f\u0131n\u0131zda, Neo4j sizden varsay\u0131lan \u015fifreyi de\u011fi\u015ftirmenizi isteyecektir. Bu, g\u00fcvenlik a\u00e7\u0131s\u0131ndan kritik bir ad\u0131md\u0131r. G\u00fc\u00e7l\u00fc bir \u015fifre belirleyin ve g\u00fcvenli bir yerde saklay\u0131n.<\/p>\n<p>\u015eifrenizi de\u011fi\u015ftirdikten sonra, Neo4j Browser&#8217;\u0131n ana aray\u00fcz\u00fcne y\u00f6nlendirileceksiniz. Buradan Cypher sorgular\u0131 yazabilir, veritaban\u0131n\u0131z\u0131 ke\u015ffedebilir ve y\u00f6netebilirsiniz.<\/p>\n<p>Basit bir Cypher sorgusu ile ilk d\u00fc\u011f\u00fcm\u00fcn\u00fcz\u00fc olu\u015ftural\u0131m:<\/p>\n<pre><code class=\"language-cypher\">CREATE (p:Person {name: 'Alice', age: 30}) RETURN p;<\/code><\/pre>\n<p>Bu sorgu, <code>Person<\/code> etiketine sahip, <code>name<\/code> \u00f6zelli\u011fi &#8216;Alice&#8217; ve <code>age<\/code> \u00f6zelli\u011fi 30 olan bir d\u00fc\u011f\u00fcm olu\u015fturur ve olu\u015fturulan d\u00fc\u011f\u00fcm\u00fc geri d\u00f6nd\u00fcr\u00fcr.<\/p>\n<p>\u015eimdi olu\u015fturdu\u011funuz d\u00fc\u011f\u00fcm\u00fc sorgulayal\u0131m:<\/p>\n<pre><code class=\"language-cypher\">MATCH (p:Person) RETURN p;<\/code><\/pre>\n<p>Bu sorgu, <code>Person<\/code> etiketine sahip t\u00fcm d\u00fc\u011f\u00fcmleri bulur ve geri d\u00f6nd\u00fcr\u00fcr. Neo4j Browser, bu d\u00fc\u011f\u00fcmleri ve ili\u015fkileri g\u00f6rsel olarak sergileyecektir.<\/p>\n<h3>Neo4j Kullan\u0131c\u0131 Y\u00f6netimi ve G\u00fcvenlik \u0130pu\u00e7lar\u0131<\/h3>\n<p>Neo4j, varsay\u0131lan <code>neo4j<\/code> kullan\u0131c\u0131s\u0131 ile birlikte gelir. Bu kullan\u0131c\u0131n\u0131n \u015fifresini de\u011fi\u015ftirmek ilk ve en \u00f6nemli g\u00fcvenlik ad\u0131m\u0131d\u0131r. Ancak, daha geli\u015fmi\u015f g\u00fcvenlik uygulamalar\u0131 da mevcuttur.<\/p>\n<h4>Kullan\u0131c\u0131 Olu\u015fturma ve Yetkilendirme<\/h4>\n<p>\u00dcretim ortamlar\u0131nda, her uygulaman\u0131n veya kullan\u0131c\u0131n\u0131n kendi ayr\u0131 kimlik bilgileriyle Neo4j&#8217;ye ba\u011flanmas\u0131 en iyi pratiktir.<\/p>\n<p>Yeni bir kullan\u0131c\u0131 olu\u015fturmak i\u00e7in Neo4j Browser&#8217;da a\u015fa\u011f\u0131daki Cypher komutunu kullanabilirsiniz:<\/p>\n<pre><code class=\"language-cypher\">CREATE USER myappuser SET PASSWORD 'my_secure_password_for_app' CHANGE NOT REQUIRED;<\/code><\/pre>\n<p>Bu komut, <code>myappuser<\/code> ad\u0131nda yeni bir kullan\u0131c\u0131 olu\u015fturur ve belirtilen \u015fifreyi atar. <code>CHANGE NOT REQUIRED<\/code> ifadesi, kullan\u0131c\u0131n\u0131n ilk giri\u015fte \u015fifre de\u011fi\u015ftirmesinin zorunlu olmad\u0131\u011f\u0131n\u0131 belirtir.<\/p>\n<p>Kullan\u0131c\u0131lara belirli roller atayarak yetkilendirme yapabilirsiniz. Neo4j, <code>admin<\/code>, <code>architect<\/code>, <code>publisher<\/code>, <code>reader<\/code> gibi yerle\u015fik rollere sahiptir.<\/p>\n<p>\u00d6rne\u011fin, <code>myappuser<\/code> kullan\u0131c\u0131s\u0131na <code>reader<\/code> rol\u00fc atayal\u0131m:<\/p>\n<pre><code class=\"language-cypher\">GRANT ROLE reader TO myappuser;<\/code><\/pre>\n<p>Daha fazla ayr\u0131nt\u0131l\u0131 yetkilendirme (belirli d\u00fc\u011f\u00fcmlere, ili\u015fkilere veya \u00f6zelliklere eri\u015fim k\u0131s\u0131tlamalar\u0131) i\u00e7in Neo4j&#8217;nin g\u00fcvenlik belgelerine ba\u015fvurman\u0131z \u00f6nerilir.<\/p>\n<h4>Di\u011fer G\u00fcvenlik \u0130pu\u00e7lar\u0131<\/h4>\n<p>*   <strong>SSL\/TLS \u015eifrelemesi:<\/strong> \u00dcretim ortamlar\u0131nda, Neo4j ile istemciler aras\u0131ndaki ileti\u015fimi \u015fifrelemek i\u00e7in SSL\/TLS kullanmal\u0131s\u0131n\u0131z. Bu, <code>neo4j.conf<\/code> dosyas\u0131nda yap\u0131land\u0131r\u0131labilir (genellikle 7473 ve 7687 portlar\u0131 i\u00e7in).<br \/>\n*   <strong>Ters Proxy (Reverse Proxy):<\/strong> Neo4j Browser&#8217;a ve HTTP API&#8217;ye do\u011frudan eri\u015fim yerine, bir Nginx veya Apache gibi bir ters proxy sunucusu arkas\u0131na alabilirsiniz. Bu, ek bir g\u00fcvenlik katman\u0131 sa\u011flar, SSL\/TLS sonland\u0131rmas\u0131n\u0131 y\u00f6netmenize olanak tan\u0131r ve hatta tek bir alan ad\u0131 alt\u0131nda birden fazla hizmeti bar\u0131nd\u0131rman\u0131za yard\u0131mc\u0131 olabilir. Bu durumda, <code>dbms.connectors.http.listen_address<\/code> ve <code>dbms.connectors.bolt.listen_address<\/code> ayarlar\u0131n\u0131 <code>127.0.0.1<\/code> olarak geri ayarlayarak sadece yerel eri\u015fime izin verebilirsiniz.<br \/>\n*   <strong>D\u00fczenli Yedeklemeler:<\/strong> Veri kayb\u0131n\u0131 \u00f6nlemek i\u00e7in Neo4j veritaban\u0131n\u0131z\u0131n d\u00fczenli yedeklerini almal\u0131s\u0131n\u0131z. Neo4j, \u00e7evrimi\u00e7i yedekleme (Enterprise Edition) veya \u00e7evrimd\u0131\u015f\u0131 yedekleme ara\u00e7lar\u0131 sunar.<br \/>\n*   <strong>Log \u0130zleme:<\/strong> Neo4j loglar\u0131n\u0131 (<code>\/var\/log\/neo4j\/neo4j.log<\/code>) d\u00fczenli olarak izleyerek olas\u0131 g\u00fcvenlik ihlallerini veya performans sorunlar\u0131n\u0131 erken tespit edebilirsiniz.<\/p>\n<h3>Sorun Giderme ve Yayg\u0131n Hatalar<\/h3>\n<p>Kurulum ve yap\u0131land\u0131rma s\u00fcrecinde veya Neo4j&#8217;yi kullan\u0131rken baz\u0131 sorunlarla kar\u015f\u0131la\u015fabilirsiniz. \u0130\u015fte yayg\u0131n sorunlar ve olas\u0131 \u00e7\u00f6z\u00fcmleri:<\/p>\n<h4>Neo4j Ba\u015flam\u0131yor veya Hata Veriyor<\/h4>\n<p>*   <strong>Log Dosyalar\u0131n\u0131 Kontrol Edin:<\/strong> Neo4j&#8217;nin log dosyas\u0131, sorun giderme i\u00e7in en \u00f6nemli kaynakt\u0131r.<\/p>\n<pre><code class=\"language-bash\">sudo tail -f \/var\/log\/neo4j\/neo4j.log<\/code><\/pre>\n<p>    Bu komut, log dosyas\u0131n\u0131n sonunu s\u00fcrekli olarak g\u00f6sterir ve Neo4j&#8217;yi ba\u015flatmaya \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131zda ortaya \u00e7\u0131kan hatalar\u0131 g\u00f6rmenizi sa\u011flar.<br \/>\n*   <strong>Java S\u00fcr\u00fcm\u00fc Uyumsuzlu\u011fu:<\/strong> Neo4j&#8217;nin gerektirdi\u011fi Java s\u00fcr\u00fcm\u00fcn\u00fcn (OpenJDK 11 veya 17) kurulu oldu\u011fundan ve <code>JAVA_HOME<\/code> ortam de\u011fi\u015fkeninin do\u011fru ayarland\u0131\u011f\u0131ndan emin olun.<br \/>\n*   <strong>Bellek Yetersizli\u011fi:<\/strong> <code>neo4j.conf<\/code> dosyas\u0131ndaki bellek ayarlar\u0131n\u0131n (heap size, pagecache size) VPS&#8217;inizin toplam RAM&#8217;ini a\u015fmad\u0131\u011f\u0131ndan emin olun. E\u011fer VPS&#8217;inizde yeterli bellek yoksa, bu de\u011ferleri azaltmay\u0131 deneyin.<br \/>\n*   <strong>Port \u00c7ak\u0131\u015fmalar\u0131:<\/strong> Neo4j&#8217;nin kullanmaya \u00e7al\u0131\u015ft\u0131\u011f\u0131 portlar\u0131n (7474, 7687) ba\u015fka bir servis taraf\u0131ndan kullan\u0131lmad\u0131\u011f\u0131ndan emin olun.<\/p>\n<pre><code class=\"language-bash\">sudo lsof -i :7474\n    sudo lsof -i :7687<\/code><\/pre>\n<p>    Bu komutlar, belirtilen portlar\u0131 hangi s\u00fcre\u00e7lerin kulland\u0131\u011f\u0131n\u0131 g\u00f6sterir.<br \/>\n*   <strong>Diskte Yetersiz Alan:<\/strong> Veritaban\u0131 dosyalar\u0131 i\u00e7in yeterli disk alan\u0131 oldu\u011fundan emin olun.<\/p>\n<h4>Web Aray\u00fcz\u00fcne Eri\u015filemiyor (7474 Portu)<\/h4>\n<p>*   <strong>Neo4j Servisi \u00c7al\u0131\u015f\u0131yor mu?:<\/strong> Neo4j servisinin \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olun: <code>sudo systemctl status neo4j<\/code><br \/>\n*   <strong>G\u00fcvenlik Duvar\u0131 (UFW):<\/strong> UFW&#8217;nin 7474\/tcp portuna izin verdi\u011finden emin olun: <code>sudo ufw status verbose<\/code><br \/>\n*   <strong><code>neo4j.conf<\/code> Ayarlar\u0131:<\/strong> <code>\/etc\/neo4j\/neo4j.conf<\/code> dosyas\u0131nda <code>dbms.connectors.http.listen_address=0.0.0.0:7474<\/code> sat\u0131r\u0131n\u0131n ba\u015f\u0131ndaki <code>#<\/code> i\u015faretinin kald\u0131r\u0131ld\u0131\u011f\u0131ndan ve do\u011fru ayarland\u0131\u011f\u0131ndan emin olun. De\u011fi\u015fiklik yapt\u0131ysan\u0131z servisi yeniden ba\u015flat\u0131n.<br \/>\n*   <strong>VPS Sa\u011flay\u0131c\u0131s\u0131 G\u00fcvenlik Duvar\u0131:<\/strong> Baz\u0131 VPS sa\u011flay\u0131c\u0131lar\u0131n\u0131n kendi y\u00f6netim panelinde ek bir g\u00fcvenlik duvar\u0131 (Security Group) olabilir. Bu g\u00fcvenlik duvar\u0131n\u0131n da 7474 ve 7687 portlar\u0131na izin verdi\u011finden emin olun.<\/p>\n<h4>Bolt Protokol\u00fcne Ba\u011flan\u0131lam\u0131yor (7687 Portu)<\/h4>\n<p>*   Yukar\u0131daki web aray\u00fcz\u00fc eri\u015fimi i\u00e7in belirtilen ad\u0131mlar\u0131 (servis durumu, UFW, <code>neo4j.conf<\/code> ayarlar\u0131) 7687 portu i\u00e7in de kontrol edin.<\/p>\n<h4>\u015eifre Unutma<\/h4>\n<p>*   <code>neo4j<\/code> kullan\u0131c\u0131s\u0131n\u0131n \u015fifresini unuttuysan\u0131z, Neo4j&#8217;yi durdurup yap\u0131land\u0131rma dosyas\u0131nda bir de\u011fi\u015fiklik yaparak \u015fifreyi s\u0131f\u0131rlayabilirsiniz. Ancak bu i\u015flem, g\u00fcvenlik a\u00e7\u0131s\u0131ndan dikkatli yap\u0131lmas\u0131 gereken bir ad\u0131md\u0131r. Genellikle, <code>dbms.security.auth_enabled=false<\/code> ayar\u0131n\u0131 ge\u00e7ici olarak yap\u0131p Neo4j&#8217;yi ba\u015flatarak \u015fifreyi s\u0131f\u0131rlay\u0131p sonra tekrar <code>true<\/code> yapma yoluna gidilir. Ancak bu, veritaban\u0131n\u0131 k\u0131sa bir s\u00fcre i\u00e7in korumas\u0131z b\u0131rak\u0131r. Daha g\u00fcvenli y\u00f6ntemler i\u00e7in Neo4j dok\u00fcmantasyonuna bak\u0131n\u0131z.<\/p>\n<h4>Performans Sorunlar\u0131<\/h4>\n<p>*   <strong>Bellek Ayarlar\u0131:<\/strong> <code>neo4j.conf<\/code> dosyas\u0131ndaki <code>dbms.memory.heap.max_size<\/code> ve <code>dbms.memory.pagecache.size<\/code> de\u011ferlerini VPS&#8217;inizin kaynaklar\u0131na g\u00f6re optimize edin.<br \/>\n*   <strong>Disk I\/O:<\/strong> VPS&#8217;inizin disk performans\u0131 d\u00fc\u015f\u00fckse, bu da Neo4j performans\u0131n\u0131 etkileyebilir. SSD tabanl\u0131 depolama kullan\u0131ld\u0131\u011f\u0131ndan emin olun.<br \/>\n*   <strong>Sorgu Optimizasyonu:<\/strong> Karma\u015f\u0131k veya optimize edilmemi\u015f Cypher sorgular\u0131 performans sorunlar\u0131na yol a\u00e7abilir. Cypher sorgular\u0131n\u0131z\u0131 <code>PROFILE<\/code> veya <code>EXPLAIN<\/code> anahtar kelimeleriyle analiz ederek darbo\u011fazlar\u0131 tespit edin.<br \/>\n*   <strong>\u0130ndeksler:<\/strong> S\u0131k\u00e7a sorgulanan d\u00fc\u011f\u00fcm \u00f6zellikleri \u00fczerinde indeksler olu\u015fturmak (\u00f6rne\u011fin <code>CREATE INDEX FOR (n:Person) ON (n.name)<\/code>) sorgu performans\u0131n\u0131 b\u00fcy\u00fck \u00f6l\u00e7\u00fcde art\u0131rabilir.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Bu kapsaml\u0131 rehberde, Ubuntu tabanl\u0131 bir VPS \u00fczerine Neo4j grafik veritaban\u0131n\u0131n nas\u0131l kurulaca\u011f\u0131n\u0131, temel yap\u0131land\u0131rmalar\u0131n\u0131n nas\u0131l yap\u0131laca\u011f\u0131n\u0131 ve g\u00fcvenlik duvar\u0131 ayarlar\u0131n\u0131n nas\u0131l d\u00fczenlenece\u011fini ad\u0131m ad\u0131m inceledik. Java Development Kit&#8217;in kurulumundan Neo4j deposunun eklenmesine, temel bellek ve eri\u015fim ayarlar\u0131ndan g\u00fcvenlik duvar\u0131 kurallar\u0131na kadar her a\u015famay\u0131 detayl\u0131 bir \u015fekilde ele ald\u0131k. Ayr\u0131ca, Neo4j Browser \u00fczerinden ilk eri\u015fimi ve basit bir Cypher sorgusu ile veritaban\u0131yla etkile\u015fime ge\u00e7meyi g\u00f6sterdik.<\/p>\n<p>Neo4j&#8217;nin g\u00fcc\u00fc, veriler aras\u0131ndaki karma\u015f\u0131k ili\u015fkileri ve ba\u011flant\u0131lar\u0131 anlamada yatmaktad\u0131r. Bu kurulum rehberi sayesinde, kendi Neo4j sunucunuzu \u00e7al\u0131\u015f\u0131r hale getirerek grafik veritabanlar\u0131n\u0131n sundu\u011fu e\u015fsiz yeteneklerden faydalanmaya ba\u015flayabilirsiniz. \u0130ster sosyal a\u011f analizi, ister doland\u0131r\u0131c\u0131l\u0131k tespiti, ister \u00f6neri sistemleri geli\u015ftiriyor olun, Neo4j size verilerinizden daha derinlemesine i\u00e7g\u00f6r\u00fcler elde etme imkan\u0131 sunacakt\u0131r.<\/p>\n<p>Unutmay\u0131n ki, bu kurulum ba\u015flang\u0131\u00e7 seviyesi ve temel yap\u0131land\u0131rmalar\u0131 kapsamaktad\u0131r. \u00dcretim ortamlar\u0131 i\u00e7in daha ileri g\u00fcvenlik \u00f6nlemleri (SSL\/TLS, ters proxy, detayl\u0131 yetkilendirme) ve performans optimizasyonlar\u0131 (geli\u015fmi\u015f bellek ayarlar\u0131, indeksleme stratejileri, k\u00fcmeleme) gerekebilir. Neo4j&#8217;nin resmi dok\u00fcmantasyonu, Cypher k\u0131lavuzlar\u0131 ve topluluk kaynaklar\u0131, bu konularda size daha fazla bilgi sa\u011flayacakt\u0131r. Art\u0131k kendi Neo4j grafik veritaban\u0131n\u0131zla veri d\u00fcnyan\u0131zdaki gizli ba\u011flant\u0131lar\u0131 ke\u015ffetmeye haz\u0131rs\u0131n\u0131z!<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Ubuntu VPS \u00dczerine Neo4j Kurulumu: Kapsaml\u0131 Bir Rehber\nGiri\u015f: Neo4j ve \u0130li\u015fkisel Verilerin \u00d6tesi\nG\u00fcn\u00fcm\u00fcz\u00fcn h\u0131zla b\u00fcy\u00fcyen veri d\u00fcnyas\u0131n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1468],"tags":[],"class_list":{"0":"post-36489","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-ubuntu","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Ubuntu VPS \u00dczerine Neo4j Kurulumu: Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ubuntu VPS \u00dczerine Neo4j Kurulumu: Kapsaml\u0131 Bir Rehber\" \/>\n<meta property=\"og:description\" content=\"Ubuntu VPS \u00dczerine Neo4j Kurulumu: Kapsaml\u0131 Bir Rehber Giri\u015f: Neo4j ve \u0130li\u015fkisel Verilerin \u00d6tesi G\u00fcn\u00fcm\u00fcz\u00fcn h\u0131zla b\u00fcy\u00fcyen veri d\u00fcnyas\u0131n\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-18T19:40:57+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"19 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Ubuntu VPS \u00dczerine Neo4j Kurulumu: Kapsaml\u0131 Bir Rehber\",\"datePublished\":\"2025-12-18T19:40:57+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/\"},\"wordCount\":3294,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Ubuntu\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/\",\"name\":\"Ubuntu VPS \u00dczerine Neo4j Kurulumu: Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-12-18T19:40:57+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ubuntu VPS \u00dczerine Neo4j Kurulumu: Kapsaml\u0131 Bir Rehber\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Ubuntu VPS \u00dczerine Neo4j Kurulumu: Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/","og_locale":"tr_TR","og_type":"article","og_title":"Ubuntu VPS \u00dczerine Neo4j Kurulumu: Kapsaml\u0131 Bir Rehber","og_description":"Ubuntu VPS \u00dczerine Neo4j Kurulumu: Kapsaml\u0131 Bir Rehber Giri\u015f: Neo4j ve \u0130li\u015fkisel Verilerin \u00d6tesi G\u00fcn\u00fcm\u00fcz\u00fcn h\u0131zla b\u00fcy\u00fcyen veri d\u00fcnyas\u0131n","og_url":"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-12-18T19:40:57+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"19 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Ubuntu VPS \u00dczerine Neo4j Kurulumu: Kapsaml\u0131 Bir Rehber","datePublished":"2025-12-18T19:40:57+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/"},"wordCount":3294,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Ubuntu"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/","url":"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/","name":"Ubuntu VPS \u00dczerine Neo4j Kurulumu: Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-12-18T19:40:57+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-vps-uzerine-neo4j-kurulumu-kapsamli-bir-rehber\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Ubuntu VPS \u00dczerine Neo4j Kurulumu: Kapsaml\u0131 Bir Rehber"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/36489","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=36489"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/36489\/revisions"}],"predecessor-version":[{"id":36490,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/36489\/revisions\/36490"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=36489"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=36489"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=36489"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}