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

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

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

Prerequisites

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

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

आपके Dolt server पर कम से कम एक database होना चाहिए जो bd init से बनाया गया हो। Beadbox server पर सभी user databases discover करता है (information_schema जैसे system databases को exclude किया जाता है)।

Quick Start (local, बिना auth)

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

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

cd ~/Projects/myproject
bd dolt start

bd एक OS-assigned port पर Dolt शुरू करता है और उसे .beads/dolt-server.port में store करता है। Port terminal output में print होता है। अगर आप raw dolt sql-server चलाते हैं, तो यह default 3307 पर चलता है।

2. Beadbox खोलें

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

Tip: वैकल्पिक रूप से, localhost पर चल रहे Dolt servers को auto-detect करने के लिए <strong>Scan for servers</strong> पर क्लिक करें। अगर आपका server मिल जाता है, तो Beadbox host और port अपने आप भर देता है।

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

Host127.0.0.1 (पहले से भरा हुआ)
Portbd dolt start के terminal output में देखें, या .beads/dolt-server.port में देखें
Userroot (पहले से भरा हुआ)
Passwordखाली छोड़ें
TLSअनचेक

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

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

5. Databases चुनें

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

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

अगर आपके पास .beads/ वाली local project directory है, तो Beadbox उसके metadata.json को server connection details से update करता है। अगर आप बिना local project के किसी remote server से connect कर रहे हैं, तो Beadbox ~/.beadbox/servers/ में अपने metadata.json के साथ एक stub workspace बनाता है। दोनों ही स्थितियों में, workspace register हो जाता है और तुरंत खुल जाता है।

Connected हो गए। bd से CLI पर किए गए changes, या दूसरे team members जो उसी Dolt server पर लिख रहे हैं, उनके changes कुछ सेकंड में Beadbox में दिखेंगे (server mode 2-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 खो जाता है। हर बार launch पर दोबारा 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 लिखता है

Server connection details के साथ .beads/metadata.json लिखता है। Local projects के लिए, यह file project directory में होती है। Server-only connections (बिना local project) के लिए, यह ~/.beadbox/servers/ में जाती है।

{
  "dolt_mode": "server",
  "dolt_server_host": "127.0.0.1",
  "dolt_server_port": 13842,
  "dolt_database": "myproject",
  "dolt_server_user": "root",
  "database": "dolt"
}

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

2. Workspace register करता है

Workspace को ~/.beadbox/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:<port>
  • क्या Dolt चल रहा है? ps aux | grep dolt से check करें या project directory में dolt sql-server try करें।
  • सही port? अगर आपने bd dolt start से Dolt शुरू किया है, तो port .beads/dolt-server.port में store होता है। Current value के लिए वह file देखें। Raw dolt sql-server default 3307 पर चलता है।
  • 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 databases found on 127.0.0.1:<port>.
Verify the Dolt server has at least one database created with bd init.
  • Naming convention। Verify करें कि कम से कम एक project directory में bd init चलाया गया है। Database आपके Dolt server पर SHOW DATABASES में दिखना चाहिए।
  • Database है लेकिन दिख नहीं रहा? User account को शायद सभी databases देखने की permission नहीं है।
  • नया server? अगर आपने beads initialize किए बिना Dolt शुरू किया है, तो कोई beads database नहीं है। Project directory में bd init चलाएँ, फिर discovery दोबारा try करें।