<!-- CANARY: REQ=REQ-DOCS-001; FEATURE="Docs"; ASPECT=Documentation; STATUS=TESTED; OWNER=docs; UPDATED=2026-01-15 -->
<p>Effective database operations require a robust suite of tools for administration, monitoring, data management, and troubleshooting. Geode provides comprehensive database tools and utilities that enable database administrators, DevOps engineers, and developers to manage graph database instances efficiently at enterprise scale.</p>
<p>From backup and recovery to performance monitoring, schema validation to data migration, Geode’s database tools cover the full spectrum of operational needs. This guide explores the essential tools, their usage patterns, and best practices for maintaining healthy, high-performance graph database deployments.</p>
<h3 id="database-administration-tools" class="position-relative d-flex align-items-center group">
<span>Database Administration Tools</span>
<button type="button"
class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1"
data-share-target="database-administration-tools"
aria-haspopup="dialog"
aria-label="Share link: Database Administration Tools">
<i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i>
<span class="visually-hidden">Share link</span>
</button>
</h3><div id="headingShareModal" class="heading-share-modal" role="dialog" aria-modal="true" aria-labelledby="headingShareTitle" hidden>
<div class="hsm-dialog" role="document">
<div class="hsm-header">
<h2 id="headingShareTitle" class="h6 mb-0 fw-bold">Share this section</h2>
<button type="button" class="hsm-close" aria-label="Close">
<i class="fa-solid fa-xmark"></i>
</button>
</div>
<div class="hsm-body">
<label for="headingShareInput" class="form-label small text-muted mb-1 text-uppercase fw-bold" style="font-size: 0.7rem; letter-spacing: 0.5px;">Permalink</label>
<div class="input-group mb-4 hsm-url-group">
<input id="headingShareInput" type="text" class="form-control font-monospace" readonly aria-readonly="true" style="font-size: 0.85rem;" />
<button class="btn btn-primary hsm-copy" type="button" aria-label="Copy" title="Copy">
<i class="fa-duotone fa-clipboard" aria-hidden="true"></i>
</button>
</div>
<div class="small fw-bold mb-2 text-muted text-uppercase" style="font-size: 0.7rem; letter-spacing: 0.5px;">Share via</div>
<div class="hsm-share-grid">
<a id="share-twitter" class="btn btn-outline-secondary w-100" target="_blank" rel="noopener noreferrer">
<i class="fa-brands fa-twitter me-2"></i>Twitter
</a>
<a id="share-linkedin" class="btn btn-outline-secondary w-100" target="_blank" rel="noopener noreferrer">
<i class="fa-brands fa-linkedin me-2"></i>LinkedIn
</a>
<a id="share-facebook" class="btn btn-outline-secondary w-100" target="_blank" rel="noopener noreferrer">
<i class="fa-brands fa-facebook me-2"></i>Facebook
</a>
</div>
</div>
</div>
</div>
<style>
.heading-share-modal {
position: fixed;
inset: 0;
display: flex;
justify-content: center;
align-items: center;
background: rgba(0, 0, 0, 0.6);
z-index: 1050;
padding: 1rem;
backdrop-filter: blur(4px);
-webkit-backdrop-filter: blur(4px);
}
.heading-share-modal[hidden] { display: none !important; }
.hsm-dialog {
max-width: 420px;
width: 100%;
background: var(--bs-body-bg, #fff);
color: var(--bs-body-color, #212529);
border: 1px solid var(--bs-border-color, rgba(0,0,0,0.1));
border-radius: 1rem;
box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
overflow: hidden;
animation: hsm-fade-in 0.2s ease-out;
}
@keyframes hsm-fade-in {
from { opacity: 0; transform: scale(0.95); }
to { opacity: 1; transform: scale(1); }
}
[data-bs-theme="dark"] .hsm-dialog {
background: #1e293b;
border-color: rgba(255,255,255,0.1);
color: #f8f9fa;
}
.hsm-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: 1rem 1.5rem;
border-bottom: 1px solid var(--bs-border-color, rgba(0,0,0,0.1));
background: rgba(0,0,0,0.02);
}
[data-bs-theme="dark"] .hsm-header {
background: rgba(255,255,255,0.02);
border-color: rgba(255,255,255,0.1);
}
.hsm-close {
background: transparent;
border: none;
color: inherit;
opacity: 0.5;
padding: 0.25rem 0.5rem;
border-radius: 0.25rem;
font-size: 1.2rem;
line-height: 1;
transition: opacity 0.2s;
}
.hsm-close:hover {
opacity: 1;
}
.hsm-body {
padding: 1.5rem;
}
.hsm-url-group {
display: flex !important;
align-items: stretch;
}
.hsm-url-group .form-control {
flex: 1;
min-width: 0;
margin: 0;
background: var(--bs-secondary-bg, #f8f9fa);
border-color: var(--bs-border-color, #dee2e6);
border-top-right-radius: 0;
border-bottom-right-radius: 0;
height: 42px;
}
.hsm-url-group .btn {
flex: 0 0 auto;
margin: 0;
margin-left: -1px;
border-top-left-radius: 0;
border-bottom-left-radius: 0;
height: 42px;
display: flex;
align-items: center;
justify-content: center;
padding: 0 1.25rem;
z-index: 2;
}
[data-bs-theme="dark"] .hsm-url-group .form-control {
background: #0f172a;
border-color: #334155;
color: #e2e8f0;
}
.hsm-share-grid {
display: flex;
flex-direction: column;
gap: 0.5rem;
}
.hsm-share-grid .btn {
display: flex;
align-items: center;
justify-content: center;
font-size: 0.9rem;
padding: 0.6rem;
border-color: var(--bs-border-color);
width: 100%;
}
[data-bs-theme="dark"] .hsm-share-grid .btn {
color: #e2e8f0;
border-color: #475569;
}
[data-bs-theme="dark"] .hsm-share-grid .btn:hover {
background: #334155;
border-color: #cbd5e1;
}
</style>
<script>
(function(){
const modal = document.getElementById('headingShareModal');
if(!modal) return;
const input = modal.querySelector('#headingShareInput');
const copyBtn = modal.querySelector('.hsm-copy');
const twitter = modal.querySelector('#share-twitter');
const linkedin = modal.querySelector('#share-linkedin');
const facebook = modal.querySelector('#share-facebook');
const closeBtn = modal.querySelector('.hsm-close');
let lastFocus=null;
let trapBound=false;
function buildUrl(id){ return window.location.origin + window.location.pathname + '#' + id; }
function isOpen(){ return !modal.hasAttribute('hidden'); }
function hydrate(id){
const url=buildUrl(id);
input.value=url;
const enc=encodeURIComponent(url);
const text=encodeURIComponent(document.title);
if(twitter) twitter.href=`https://twitter.com/intent/tweet?url=${enc}&text=${text}`;
if(linkedin) linkedin.href=`https://www.linkedin.com/sharing/share-offsite/?url=${enc}`;
if(facebook) facebook.href=`https://www.facebook.com/sharer/sharer.php?u=${enc}`;
}
function openModal(id){
lastFocus=document.activeElement;
hydrate(id);
if(!isOpen()){
modal.removeAttribute('hidden');
}
requestAnimationFrame(()=>{ input.focus(); });
trapFocus();
}
function closeModal(){
if(!isOpen()) return;
modal.setAttribute('hidden','');
if(lastFocus && typeof lastFocus.focus==='function') lastFocus.focus();
}
function copyCurrent(){
try{ navigator.clipboard.writeText(input.value).then(()=>feedback(true),()=>fallback()); }
catch(e){ fallback(); }
}
function fallback(){ input.select(); try{ document.execCommand('copy'); feedback(true);}catch(e){ feedback(false);} }
function feedback(ok){ if(!copyBtn) return; const icon=copyBtn.querySelector('i'); if(!icon) return; const prev=copyBtn.getAttribute('data-prev')||icon.className; if(!copyBtn.getAttribute('data-prev')) copyBtn.setAttribute('data-prev',prev); icon.className= ok ? 'fa-duotone fa-clipboard-check':'fa-duotone fa-circle-exclamation'; setTimeout(()=>{ icon.className=prev; },1800); }
function handleShareClick(e){ e.preventDefault(); const btn=e.currentTarget; const id=btn.getAttribute('data-share-target'); if(id) openModal(id); }
function bindShareButtons(){
document.querySelectorAll('.h-share').forEach(btn=>{
if(!btn.dataset.hShareBound){ btn.addEventListener('click', handleShareClick); btn.dataset.hShareBound='1'; }
});
}
bindShareButtons();
if(document.readyState==='loading'){
document.addEventListener('DOMContentLoaded', bindShareButtons);
} else {
requestAnimationFrame(bindShareButtons);
}
document.addEventListener('click', function(e){
const shareBtn=e.target.closest && e.target.closest('.h-share');
if(shareBtn && !shareBtn.dataset.hShareBound){ handleShareClick.call(shareBtn, e); }
}, true);
document.addEventListener('click', e=>{
if(e.target===modal) closeModal();
if(e.target.closest && e.target.closest('.hsm-close')){ e.preventDefault(); closeModal(); }
if(copyBtn && (e.target===copyBtn || (e.target.closest && e.target.closest('.hsm-copy')))) { e.preventDefault(); copyCurrent(); }
});
document.addEventListener('keydown', e=>{ if(e.key==='Escape' && isOpen()) closeModal(); });
function trapFocus(){
if(trapBound) return;
trapBound=true;
modal.addEventListener('keydown', f=>{ if(f.key==='Tab' && isOpen()){ const focusable=[...modal.querySelectorAll('a[href],button,input,textarea,select,[tabindex]:not([tabindex="-1"])')].filter(el=>!el.hasAttribute('disabled')); if(!focusable.length) return; const first=focusable[0]; const last=focusable[focusable.length-1]; if(f.shiftKey && document.activeElement===first){ f.preventDefault(); last.focus(); } else if(!f.shiftKey && document.activeElement===last){ f.preventDefault(); first.focus(); } } });
}
if(closeBtn) closeBtn.addEventListener('click', e=>{ e.preventDefault(); closeModal(); });
})();
</script><p><strong>Server Administration</strong>:</p>
<p>The core administrative tools manage server lifecycle, configuration, and health:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Server lifecycle management</span>
</span></span><span class="line"><span class="cl">geode serve <span class="c1"># Start database server</span>
</span></span><span class="line"><span class="cl">geode shutdown <span class="c1"># Graceful shutdown</span>
</span></span><span class="line"><span class="cl">geode restart <span class="c1"># Restart with updated config</span>
</span></span><span class="line"><span class="cl">geode status <span class="c1"># Health check and status</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Configuration management</span>
</span></span><span class="line"><span class="cl">geode config show <span class="c1"># Display current configuration</span>
</span></span><span class="line"><span class="cl">geode config <span class="nb">set</span> <span class="nv">key</span><span class="o">=</span>value <span class="c1"># Update configuration</span>
</span></span><span class="line"><span class="cl">geode config reload <span class="c1"># Reload configuration without restart</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># User and permission management</span>
</span></span><span class="line"><span class="cl">geode user create --username admin --password-file pass.txt
</span></span><span class="line"><span class="cl">geode user grant --username dev --role read_only
</span></span><span class="line"><span class="cl">geode user revoke --username dev --role write
</span></span><span class="line"><span class="cl">geode user list <span class="c1"># List all users</span>
</span></span></code></pre></div><p><strong>Database Initialization</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Create new database instance</span>
</span></span><span class="line"><span class="cl">geode init --path /var/lib/geode --graph production
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Initialize with specific configuration</span>
</span></span><span class="line"><span class="cl">geode init --path /var/lib/geode <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --graph production <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --config /etc/geode/config.yaml
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Validate existing database</span>
</span></span><span class="line"><span class="cl">geode validate --path /var/lib/geode
</span></span></code></pre></div>
<h3 id="backup-and-recovery-tools" class="position-relative d-flex align-items-center group">
<span>Backup and Recovery Tools</span>
<button type="button"
class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1"
data-share-target="backup-and-recovery-tools"
aria-haspopup="dialog"
aria-label="Share link: Backup and Recovery Tools">
<i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i>
<span class="visually-hidden">Share link</span>
</button>
</h3><p>Geode provides comprehensive backup and restore capabilities with support for full, incremental, and point-in-time recovery:</p>
<p><strong>Full Backups</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Create full backup</span>
</span></span><span class="line"><span class="cl">geode backup create --output /backups/full-<span class="k">$(</span>date +%Y%m%d<span class="k">)</span>.tar.gz
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Create backup with compression</span>
</span></span><span class="line"><span class="cl">geode backup create --output /backups/backup.tar.gz --compress gzip
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Create backup with encryption</span>
</span></span><span class="line"><span class="cl">geode backup create <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --output /backups/backup.tar.gz.enc <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --encrypt <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --key-file /etc/geode/backup.key
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Verify backup integrity</span>
</span></span><span class="line"><span class="cl">geode backup verify --input /backups/full-20240124.tar.gz
</span></span></code></pre></div><p><strong>Incremental Backups</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Create incremental backup since specific date</span>
</span></span><span class="line"><span class="cl">geode backup create <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --output /backups/incremental-<span class="k">$(</span>date +%Y%m%d<span class="k">)</span>.tar.gz <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --incremental <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --since 2024-01-20
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Create incremental backup since last full backup</span>
</span></span><span class="line"><span class="cl">geode backup create <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --output /backups/incremental.tar.gz <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --incremental <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --since-last-full
</span></span></code></pre></div><p><strong>Restore Operations</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Restore from full backup</span>
</span></span><span class="line"><span class="cl">geode restore --input /backups/full-20240124.tar.gz --path /var/lib/geode
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Restore with point-in-time recovery</span>
</span></span><span class="line"><span class="cl">geode restore <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --input /backups/full-20240124.tar.gz <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --path /var/lib/geode <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --until <span class="s2">"2024-01-24 15:30:00"</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Restore to alternate location</span>
</span></span><span class="line"><span class="cl">geode restore <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --input /backups/full-20240124.tar.gz <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --path /var/lib/geode-restored
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Decrypt and restore</span>
</span></span><span class="line"><span class="cl">geode restore <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --input /backups/backup.tar.gz.enc <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --path /var/lib/geode <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --decrypt <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --key-file /etc/geode/backup.key
</span></span></code></pre></div><p><strong>Automated Backup Scheduling</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># cron job for daily backups</span>
</span></span><span class="line"><span class="cl"><span class="m">0</span> <span class="m">2</span> * * * geode backup create --output /backups/daily-<span class="k">$(</span>date +<span class="se">\%</span>Y<span class="se">\%</span>m<span class="se">\%</span>d<span class="k">)</span>.tar.gz
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Weekly full backup + daily incrementals</span>
</span></span><span class="line"><span class="cl"><span class="m">0</span> <span class="m">2</span> * * <span class="m">0</span> geode backup create --output /backups/full-<span class="k">$(</span>date +<span class="se">\%</span>Y<span class="se">\%</span>m<span class="se">\%</span>d<span class="k">)</span>.tar.gz
</span></span><span class="line"><span class="cl"><span class="m">0</span> <span class="m">2</span> * * 1-6 geode backup create --output /backups/inc-<span class="k">$(</span>date +<span class="se">\%</span>Y<span class="se">\%</span>m<span class="se">\%</span>d<span class="k">)</span>.tar.gz --incremental
</span></span></code></pre></div>
<h3 id="data-import-and-export-tools" class="position-relative d-flex align-items-center group">
<span>Data Import and Export Tools</span>
<button type="button"
class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1"
data-share-target="data-import-and-export-tools"
aria-haspopup="dialog"
aria-label="Share link: Data Import and Export Tools">
<i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i>
<span class="visually-hidden">Share link</span>
</button>
</h3><p><strong>Import Utilities</strong>:</p>
<p>Geode supports multiple import formats for migrating data from external sources:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Import from JSON</span>
</span></span><span class="line"><span class="cl">geode import --format json --input data.json
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Import from CSV with schema</span>
</span></span><span class="line"><span class="cl">geode import csv <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --nodes users.csv <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --relationships follows.csv <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --schema schema.yaml
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Import from GraphML</span>
</span></span><span class="line"><span class="cl">geode import --format graphml --input graph.xml
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Bulk load from directory</span>
</span></span><span class="line"><span class="cl">geode bulk-load --input /data/import/ --workers <span class="m">8</span> --batch-size <span class="m">10000</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Import with transaction batching</span>
</span></span><span class="line"><span class="cl">geode import csv <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --nodes products.csv <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --batch-size <span class="m">5000</span> <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --commit-interval <span class="m">10000</span>
</span></span></code></pre></div><p><strong>CSV Import Configuration</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-yaml" data-lang="yaml"><span class="line"><span class="cl"><span class="c"># schema.yaml</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="nt">nodes</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- <span class="nt">label</span><span class="p">:</span><span class="w"> </span><span class="l">User</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">file</span><span class="p">:</span><span class="w"> </span><span class="l">users.csv</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">id_column</span><span class="p">:</span><span class="w"> </span><span class="l">user_id</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">properties</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">string</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">email</span><span class="p">:</span><span class="w"> </span><span class="l">string</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">created_at</span><span class="p">:</span><span class="w"> </span><span class="l">timestamp</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="nt">relationships</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- <span class="nt">type</span><span class="p">:</span><span class="w"> </span><span class="l">FOLLOWS</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">file</span><span class="p">:</span><span class="w"> </span><span class="l">follows.csv</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">from_column</span><span class="p">:</span><span class="w"> </span><span class="l">follower_id</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">to_column</span><span class="p">:</span><span class="w"> </span><span class="l">followee_id</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">properties</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">since</span><span class="p">:</span><span class="w"> </span><span class="l">timestamp</span><span class="w">
</span></span></span></code></pre></div><p><strong>Export Utilities</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Export to JSON</span>
</span></span><span class="line"><span class="cl">geode <span class="nb">export</span> --format json --output graph.json
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Export specific labels</span>
</span></span><span class="line"><span class="cl">geode <span class="nb">export</span> <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --format json <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --output users.json <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --labels User,Account
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Export to CSV</span>
</span></span><span class="line"><span class="cl">geode <span class="nb">export</span> csv <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --nodes users.csv <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --relationships follows.csv
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Export to GraphML</span>
</span></span><span class="line"><span class="cl">geode <span class="nb">export</span> --format graphml --output graph.xml
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Export query results</span>
</span></span><span class="line"><span class="cl">geode <span class="nb">export</span> <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --format json <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --output recent_users.json <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --query <span class="s2">"MATCH (u:User) WHERE u.created_at > '2024-01-01' RETURN u"</span>
</span></span></code></pre></div>
<h3 id="schema-management-tools" class="position-relative d-flex align-items-center group">
<span>Schema Management Tools</span>
<button type="button"
class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1"
data-share-target="schema-management-tools"
aria-haspopup="dialog"
aria-label="Share link: Schema Management Tools">
<i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i>
<span class="visually-hidden">Share link</span>
</button>
</h3><p><strong>Schema Inspection</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Display current schema</span>
</span></span><span class="line"><span class="cl">geode schema show
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Export schema definition</span>
</span></span><span class="line"><span class="cl">geode schema <span class="nb">export</span> --output schema.gql
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Show schema statistics</span>
</span></span><span class="line"><span class="cl">geode schema stats
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Validate schema integrity</span>
</span></span><span class="line"><span class="cl">geode schema validate
</span></span></code></pre></div><p><strong>Schema Documentation</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Generate schema documentation</span>
</span></span><span class="line"><span class="cl">geode schema docs --output /docs/schema/
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Generate entity-relationship diagrams</span>
</span></span><span class="line"><span class="cl">geode schema diagram --output schema.png --format png
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Generate interactive HTML documentation</span>
</span></span><span class="line"><span class="cl">geode schema docs --format html --output /docs/
</span></span></code></pre></div><p><strong>Schema Migrations</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Create migration file</span>
</span></span><span class="line"><span class="cl">geode migration create --name add_user_indexes
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Apply pending migrations</span>
</span></span><span class="line"><span class="cl">geode migration apply
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Rollback last migration</span>
</span></span><span class="line"><span class="cl">geode migration rollback
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Show migration status</span>
</span></span><span class="line"><span class="cl">geode migration status
</span></span></code></pre></div>
<h3 id="monitoring-and-diagnostics-tools" class="position-relative d-flex align-items-center group">
<span>Monitoring and Diagnostics Tools</span>
<button type="button"
class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1"
data-share-target="monitoring-and-diagnostics-tools"
aria-haspopup="dialog"
aria-label="Share link: Monitoring and Diagnostics Tools">
<i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i>
<span class="visually-hidden">Share link</span>
</button>
</h3><p><strong>Health Checks</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Comprehensive health check</span>
</span></span><span class="line"><span class="cl">geode health check
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Check specific subsystems</span>
</span></span><span class="line"><span class="cl">geode health check --storage
</span></span><span class="line"><span class="cl">geode health check --network
</span></span><span class="line"><span class="cl">geode health check --memory
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># JSON output for monitoring systems</span>
</span></span><span class="line"><span class="cl">geode health check --format json
</span></span></code></pre></div><p><strong>Performance Monitoring</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Display current metrics</span>
</span></span><span class="line"><span class="cl">geode metrics show
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Export metrics to Prometheus format</span>
</span></span><span class="line"><span class="cl">geode metrics <span class="nb">export</span> --format prometheus --output /var/lib/prometheus/geode.prom
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Monitor query performance</span>
</span></span><span class="line"><span class="cl">geode monitor queries --min-duration 1000ms
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Monitor slow queries in real-time</span>
</span></span><span class="line"><span class="cl">geode monitor slow-queries --threshold 5s
</span></span></code></pre></div><p><strong>Diagnostic Reports</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Generate diagnostic bundle</span>
</span></span><span class="line"><span class="cl">geode diagnostics collect --output /tmp/geode-diagnostics.tar.gz
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Include system information</span>
</span></span><span class="line"><span class="cl">geode diagnostics collect <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --output diagnostics.tar.gz <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --include-logs <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --include-config <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --include-stats
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Analyze diagnostic bundle</span>
</span></span><span class="line"><span class="cl">geode diagnostics analyze --input diagnostics.tar.gz
</span></span></code></pre></div>
<h3 id="index-management-tools" class="position-relative d-flex align-items-center group">
<span>Index Management Tools</span>
<button type="button"
class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1"
data-share-target="index-management-tools"
aria-haspopup="dialog"
aria-label="Share link: Index Management Tools">
<i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i>
<span class="visually-hidden">Share link</span>
</button>
</h3><p><strong>Index Operations</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># List all indexes</span>
</span></span><span class="line"><span class="cl">geode index list
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Show index statistics</span>
</span></span><span class="line"><span class="cl">geode index stats
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Rebuild index</span>
</span></span><span class="line"><span class="cl">geode index rebuild --name user_email_idx
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Rebuild all indexes</span>
</span></span><span class="line"><span class="cl">geode index rebuild --all
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Analyze index usage</span>
</span></span><span class="line"><span class="cl">geode index analyze --output index_report.html
</span></span></code></pre></div><p><strong>Index Optimization</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Identify missing indexes</span>
</span></span><span class="line"><span class="cl">geode index suggest --query-log /var/log/geode/queries.log
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Find unused indexes</span>
</span></span><span class="line"><span class="cl">geode index unused --days <span class="m">30</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Optimize index storage</span>
</span></span><span class="line"><span class="cl">geode index optimize --name product_search_idx
</span></span></code></pre></div>
<h3 id="maintenance-tools" class="position-relative d-flex align-items-center group">
<span>Maintenance Tools</span>
<button type="button"
class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1"
data-share-target="maintenance-tools"
aria-haspopup="dialog"
aria-label="Share link: Maintenance Tools">
<i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i>
<span class="visually-hidden">Share link</span>
</button>
</h3><p><strong>Database Maintenance</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Vacuum deleted records</span>
</span></span><span class="line"><span class="cl">geode vacuum
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Compact storage files</span>
</span></span><span class="line"><span class="cl">geode compact --aggressive
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Analyze and update statistics</span>
</span></span><span class="line"><span class="cl">geode analyze
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Rebuild internal structures</span>
</span></span><span class="line"><span class="cl">geode rebuild --verify
</span></span></code></pre></div><p><strong>Data Integrity</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Check database consistency</span>
</span></span><span class="line"><span class="cl">geode check --full
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Verify referential integrity</span>
</span></span><span class="line"><span class="cl">geode check --relationships
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Repair detected issues</span>
</span></span><span class="line"><span class="cl">geode repair --auto
</span></span></code></pre></div>
<h3 id="query-analysis-tools" class="position-relative d-flex align-items-center group">
<span>Query Analysis Tools</span>
<button type="button"
class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1"
data-share-target="query-analysis-tools"
aria-haspopup="dialog"
aria-label="Share link: Query Analysis Tools">
<i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i>
<span class="visually-hidden">Share link</span>
</button>
</h3><p><strong>Query Profiling</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Analyze query performance</span>
</span></span><span class="line"><span class="cl">geode query analyze --input slow_queries.log
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Generate query execution plan</span>
</span></span><span class="line"><span class="cl">geode query explain --query <span class="s2">"MATCH (n)-[r]->(m) RETURN n, r, m"</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Profile specific query</span>
</span></span><span class="line"><span class="cl">geode query profile --query-file complex_query.gql
</span></span></code></pre></div><p><strong>Query Optimization</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Suggest query optimizations</span>
</span></span><span class="line"><span class="cl">geode query optimize --input query.gql
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Analyze query patterns</span>
</span></span><span class="line"><span class="cl">geode query patterns --log /var/log/geode/queries.log --days <span class="m">7</span>
</span></span></code></pre></div>
<h3 id="connection-management-tools" class="position-relative d-flex align-items-center group">
<span>Connection Management Tools</span>
<button type="button"
class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1"
data-share-target="connection-management-tools"
aria-haspopup="dialog"
aria-label="Share link: Connection Management Tools">
<i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i>
<span class="visually-hidden">Share link</span>
</button>
</h3><p><strong>Connection Monitoring</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># List active connections</span>
</span></span><span class="line"><span class="cl">geode connections list
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Show connection details</span>
</span></span><span class="line"><span class="cl">geode connections show --id <connection-id>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Terminate connection</span>
</span></span><span class="line"><span class="cl">geode connections <span class="nb">kill</span> --id <connection-id>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Monitor connection pool</span>
</span></span><span class="line"><span class="cl">geode connections pool-stats
</span></span></code></pre></div>
<h3 id="migration-tools" class="position-relative d-flex align-items-center group">
<span>Migration Tools</span>
<button type="button"
class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1"
data-share-target="migration-tools"
aria-haspopup="dialog"
aria-label="Share link: Migration Tools">
<i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i>
<span class="visually-hidden">Share link</span>
</button>
</h3><p><strong>Data Migration</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Migrate from Neo4j</span>
</span></span><span class="line"><span class="cl">geode migrate from-neo4j <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --source bolt://localhost:7687 <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --username neo4j <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --password-file neo4j_pass.txt
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Migrate from PostgreSQL with foreign data wrapper</span>
</span></span><span class="line"><span class="cl">geode migrate from-postgres <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --connection <span class="s2">"postgresql://localhost/mydb"</span> <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --mapping migration_mapping.yaml
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Migrate with transformation</span>
</span></span><span class="line"><span class="cl">geode migrate <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --source data.json <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --transform transform_rules.js <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --output migrated_data.json
</span></span></code></pre></div>
<h3 id="replication-and-clustering-tools" class="position-relative d-flex align-items-center group">
<span>Replication and Clustering Tools</span>
<button type="button"
class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1"
data-share-target="replication-and-clustering-tools"
aria-haspopup="dialog"
aria-label="Share link: Replication and Clustering Tools">
<i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i>
<span class="visually-hidden">Share link</span>
</button>
</h3><p><strong>Cluster Management</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Initialize cluster</span>
</span></span><span class="line"><span class="cl">geode cluster init --nodes <span class="m">3</span> --quorum <span class="m">2</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Add node to cluster</span>
</span></span><span class="line"><span class="cl">geode cluster add-node --host new-node.example.com
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Remove node from cluster</span>
</span></span><span class="line"><span class="cl">geode cluster remove-node --id node-2
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Show cluster status</span>
</span></span><span class="line"><span class="cl">geode cluster status
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Rebalance data across nodes</span>
</span></span><span class="line"><span class="cl">geode cluster rebalance
</span></span></code></pre></div><p><strong>Replication Control</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Setup replication</span>
</span></span><span class="line"><span class="cl">geode replication setup <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --primary primary.example.com <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> --replica replica.example.com
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Monitor replication lag</span>
</span></span><span class="line"><span class="cl">geode replication status
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Promote replica to primary</span>
</span></span><span class="line"><span class="cl">geode replication promote --node replica-1
</span></span></code></pre></div>
<h3 id="best-practices" class="position-relative d-flex align-items-center group">
<span>Best Practices</span>
<button type="button"
class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1"
data-share-target="best-practices"
aria-haspopup="dialog"
aria-label="Share link: Best Practices">
<i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i>
<span class="visually-hidden">Share link</span>
</button>
</h3><ol>
<li>
<p><strong>Automate Backups</strong>: Schedule regular automated backups with retention policies. Test restore procedures regularly.</p>
</li>
<li>
<p><strong>Monitor Continuously</strong>: Use monitoring tools to track health metrics, performance trends, and resource utilization.</p>
</li>
<li>
<p><strong>Document Operations</strong>: Maintain runbooks documenting tool usage, configurations, and troubleshooting procedures.</p>
</li>
<li>
<p><strong>Use Configuration Files</strong>: Store tool configurations in version-controlled files rather than command-line flags.</p>
</li>
<li>
<p><strong>Test in Staging</strong>: Validate tool operations in staging environments before running in production.</p>
</li>
<li>
<p><strong>Audit Tool Access</strong>: Log all administrative tool usage for security and compliance auditing.</p>
</li>
<li>
<p><strong>Capacity Planning</strong>: Use diagnostic and monitoring tools to inform capacity planning decisions.</p>
</li>
</ol>
<h3 id="troubleshooting" class="position-relative d-flex align-items-center group">
<span>Troubleshooting</span>
<button type="button"
class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1"
data-share-target="troubleshooting"
aria-haspopup="dialog"
aria-label="Share link: Troubleshooting">
<i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i>
<span class="visually-hidden">Share link</span>
</button>
</h3><p><strong>Common Issues</strong>:</p>
<ul>
<li><strong>Backup Failures</strong>: Check disk space, permissions, and network connectivity for remote backups</li>
<li><strong>Import Errors</strong>: Validate input file format, check schema compatibility, review error logs</li>
<li><strong>Slow Exports</strong>: Consider filtering data, increasing batch sizes, or using parallel workers</li>
<li><strong>Migration Issues</strong>: Verify source database connectivity, check transformation rules, review mapping configuration</li>
</ul>
<p><strong>Diagnostic Commands</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Check logs</span>
</span></span><span class="line"><span class="cl">geode logs tail --lines <span class="m">100</span> --level error
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Verify system requirements</span>
</span></span><span class="line"><span class="cl">geode system-check
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Test connectivity</span>
</span></span><span class="line"><span class="cl">geode ping --host primary.example.com:3141
</span></span></code></pre></div>
<h3 id="related-topics" class="position-relative d-flex align-items-center group">
<span>Related Topics</span>
<button type="button"
class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1"
data-share-target="related-topics"
aria-haspopup="dialog"
aria-label="Share link: Related Topics">
<i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i>
<span class="visually-hidden">Share link</span>
</button>
</h3><ul>
<li>Development Tooling and DevOps Integration</li>
<li>CLI Reference and Commands</li>
<li>Backup and Recovery Strategies</li>
<li>Monitoring and Observability</li>
<li>Database Administration</li>
<li>Performance Tuning</li>
<li>Migration and Integration</li>
</ul>
<h3 id="further-reading" class="position-relative d-flex align-items-center group">
<span>Further Reading</span>
<button type="button"
class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1"
data-share-target="further-reading"
aria-haspopup="dialog"
aria-label="Share link: Further Reading">
<i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i>
<span class="visually-hidden">Share link</span>
</button>
</h3><ul>
<li>Database Administration Guide</li>
<li>Backup and Recovery Best Practices</li>
<li>Import/Export Format Specifications</li>
<li>Schema Management Documentation</li>
<li>Monitoring and Alerting Setup</li>
<li>Disaster Recovery Planning</li>
</ul>
Related Articles
Editor Plugins
Editor and IDE integrations for Geode
GQL Language Server Protocol Implementation Guide
Complete guide to Geode's GQL Language Server Protocol (LSP) implementation, providing IDE integration, autocomplete, syntax highlighting, and …
Advanced REPL Features Guide
Complete guide to Geode's advanced REPL features including syntax highlighting, fuzzy search, result pagination, session persistence, scripting, …