Dolt Server से कनेक्ट करना

Beadbox एक running Dolt SQL server से connect हो सकता है, जिससे CLI से इस्तेमाल होने वाले beads databases पर multi-writer access और team workflows मिलते हैं।

Beadbox 0.9.12+ ज़रूरी है Settings > About में या यहाँ version चेक करें /api/version.

Prerequisites

शुरू करने से पहले, आपको तीन चीज़ें चाहिए:

ComponentMinimum Versionचेक करें
beads CLI (bd)0.56.x+bd --version
Dolt serverचल रहा है और connections accept कर रहा हैdolt sql-server आपके project में
Beadbox0.9.12+Settings > About

आपके Dolt server पर कम से कम एक database होना चाहिए जो beads_ naming convention follow करता हो। beads यही create करता है जब आप Dolt mode में bd init चलाते हैं। Beadbox इस prefix का इस्तेमाल करके beads databases ढूँढता है और बाकी को ignore करता है।

Quick Start (local, बिना auth)

सबसे तेज़ तरीक़ा: अपनी मशीन पर Dolt server बिना authentication के।

1. Dolt server शुरू करें

cd ~/Projects/myproject
dolt sql-server

Dolt by default port 3307 पर listen करता है।

2. Beadbox खोलें

Workspace selector में Add by server पर क्लिक करें (या पहली बार launch कर रहे हैं तो welcome screen पर Advanced card ढूँढें)।

3. Connection details दर्ज करें

Host127.0.0.1 (पहले से भरा हुआ)
Port3307 (पहले से भरा हुआ)
Userroot (पहले से भरा हुआ)
Passwordखाली छोड़ें
TLSअनचेक

4. "Discover Databases" पर क्लिक करें

Beadbox server से connect होता है और beads_* pattern से match करने वाले सभी databases ढूँढने के लिए SHOW DATABASES चलाता है।

5. Databases चुनें

Discovery screen server पर मिले हर beads database को list करती है। जो workspaces के रूप में add करने हैं उन्हें चेक करें। हर एक को एक local directory path मिलता है।

6. "Add Workspaces" पर क्लिक करें

Beadbox local .beads/ directory बनाता है जिसमें आपके server की ओर point करने वाला metadata.json होता है, workspace register करता है, और उसे खोलता है।

Connected हो गए। bd से CLI पर किए गए changes, या दूसरे team members जो उसी Dolt server पर लिख रहे हैं, उनके changes कुछ सेकंड में Beadbox में दिखेंगे (server mode 1-second intervals पर changes poll करता है)।

Authentication के साथ connect करना

अगर आपके Dolt server को username और password चाहिए:

  1. Quick Start के वही steps follow करें, लेकिन User और Password fields में अपने Dolt server credentials भरें।
  2. अगर TLS ज़रूरी है (remote servers के लिए आम), तो Use TLS checkbox check करें।
  3. Discover Databases पर क्लिक करें और discovery जारी रखें।

Passwords कैसे handle होते हैं

  • Passwords सिर्फ़ memory में रहते हैं। Beadbox कभी आपका password disk पर नहीं लिखता।
  • Beadbox restart होने पर password खो जाता है। हर बार दोबारा enter करने से बचने के लिए, अपने shell profile में BEADS_DOLT_PASSWORD सेट करें (Password persist करना देखें)।
  • Internal रूप से, Beadbox हर subprocess invocation पर BEADS_DOLT_PASSWORD environment variable के ज़रिए bd CLI को password pass करता है।

Hosted Dolt और Remote Servers

Remote machine, cloud VM, या Hosted Dolt पर चल रहे Dolt servers के लिए:

  1. Host: अपने server का hostname या IP दर्ज करें।
  2. Port: अपने provider द्वारा specified port इस्तेमाल करें। Hosted Dolt आम तौर पर 3306 इस्तेमाल करता है।
  3. User/Password: अपने provider के credentials दर्ज करें।
  4. TLS: "Use TLS" check करें (Hosted Dolt के लिए ज़रूरी और किसी भी remote connection के लिए recommended)।
  5. Discover Databases पर क्लिक करें और सामान्य रूप से आगे बढ़ें।

Password persist करना

Beadbox passwords सिर्फ़ memory में रखता है, इसलिए restart पर खो जाते हैं। Authentication वाले किसी भी server (local या remote) के लिए, password दोबारा enter करने से बचने के लिए इसे अपने shell profile में सेट करें:

export BEADS_DOLT_PASSWORD="your-password-here"

Beadbox इसे सभी server-mode workspaces के लिए automatically pick कर लेता है। अगर दोनों सेट हैं तो UI password field को priority मिलती है।

कैसे काम करता है

जब आप server workspace add करते हैं, Beadbox तीन काम करता है:

1. Connection metadata लिखता है

Local project directory में .beads/metadata.json बनाता है जिसमें server connection details होती हैं:

{
  "dolt_mode": "server",
  "dolt_server_host": "127.0.0.1",
  "dolt_server_port": 3307,
  "dolt_database": "beads_myproject",
  "dolt_server_user": "root",
  "database": "dolt"
}

TLS enable होने पर, "dolt_server_tls": true key add होती है। यह file bd को बताती है कि local embedded database की जगह remote server से connect करना है। Password जानबूझकर इस file में नहीं है।

2. Workspace register करता है

Local directory को ~/.beads/registry.json में add करता है ताकि Beadbox और bd भविष्य में launch होने पर उसे ढूँढ सकें।

3. Runtime पर credentials pass करता है

हर बार Beadbox इस workspace के लिए bd command invoke करता है, subprocess environment में BEADS_DOLT_PASSWORD set करता है। Password सिर्फ़ process memory में रहता है।

Troubleshooting

Connection refused

Error: connect ECONNREFUSED 127.0.0.1:3307
  • क्या Dolt चल रहा है? ps aux | grep dolt से check करें या project directory में dolt sql-server try करें।
  • सही port? Dolt default 3307 है, लेकिन आपने अलग port configure किया हो सकता है।
  • Firewall? Remote servers पर, सुनिश्चित करें कि port inbound connections के लिए खुला है।

Access denied

Error: Access denied for user 'root'
  • Password ज़रूरी है? आपके Dolt server पर authentication enable हो सकता है। Connection form में password दर्ज करें।
  • ग़लत user? Verify करें कि username किसी ऐसे Dolt user से match करता है जिसके पास read access है।
  • ग़लत password? Passwords sessions के बीच save नहीं होते। Beadbox restart करने के बाद दोबारा enter करें।

TLS handshake failure

Error: TLS handshake failed
  • TLS checkbox mismatch। अगर server TLS माँगता है, "Use TLS" check करें। अगर TLS support नहीं करता, uncheck करें। किसी भी direction में ग़लत होना handshake failure का कारण बनता है।
  • Self-signed certificates। अगर आपका Dolt server self-signed certificate इस्तेमाल करता है, तो CA को system trust store में add करना पड़ सकता है। bd CLI system root CA pool इस्तेमाल करता है और untrusted certificates reject करता है।

कोई database नहीं मिला

No beads databases found on 127.0.0.1:3307.
Databases must follow the beads_* naming pattern.
  • Naming convention। Beadbox सिर्फ़ उन databases को discover करता है जिनका नाम beads_ से शुरू होता है। अगर आपके database का नाम कुछ और है, उसे rename करें या Dolt mode में bd init से नया बनाएँ।
  • Database है लेकिन दिख नहीं रहा? User account को शायद सभी databases देखने की permission नहीं है।
  • नया server? अगर आपने beads initialize किए बिना Dolt शुरू किया है, तो कोई beads database नहीं है। Dolt mode configure किए project directory में bd init चलाएँ, फिर discovery दोबारा try करें।