Connexion à un Serveur Dolt

Beadbox peut se connecter à un serveur Dolt SQL en fonctionnement, vous donnant un accès multi-écrivain et des workflows d'équipe sur les mêmes bases de données beads que vous utilisez depuis le CLI.

Nécessite Beadbox 0.15.0+ Vérifiez votre version dans Paramètres > À propos ou sur /api/version.

Prérequis

Avant de commencer, vous avez besoin de trois choses en fonctionnement :

ComposantVersion MinimumVérification
CLI beads (bd)0.58.0+bd --version
Serveur DoltEn fonctionnement et acceptant les connexionsdolt sql-server dans votre projet
Beadbox0.15.0+Paramètres > À propos

Votre serveur Dolt doit avoir au moins une base de données créée par bd init. Beadbox découvre toutes les bases de données utilisateur sur le serveur (les bases système comme information_schema sont exclues).

Démarrage Rapide (local, sans authentification)

Le chemin le plus rapide : un serveur Dolt sur votre propre machine sans authentification configurée.

1. Démarrez votre serveur Dolt

cd ~/Projects/myproject
bd dolt start

bd démarre Dolt sur un port attribué par le système d'exploitation et le stocke dans .beads/dolt-server.port. Le port est affiché dans la sortie du terminal. Si vous lancez dolt sql-server directement, le port par défaut est 3307.

2. Ouvrez Beadbox

Dans le sélecteur de workspace, cliquez sur Utiliser un workspace existant (ou trouvez la carte Avancé sur l'écran d'accueil s'il s'agit de votre premier lancement).

Tip: Vous pouvez aussi cliquer sur Scanner les serveurs pour détecter automatiquement les serveurs Dolt en cours d'exécution sur localhost. Si votre serveur est trouvé, Beadbox remplit l'hôte et le port pour vous.

3. Entrez les détails de connexion

Host127.0.0.1 (pré-rempli)
PortVérifiez la sortie de votre terminal depuis bd dolt start, ou consultez .beads/dolt-server.port
Utilisateurroot (pré-rempli)
Mot de passelaisser vide
TLSdécoché

4. Cliquez sur "Découvrir les Bases de Données"

Beadbox se connecte au serveur et exécute SHOW DATABASES pour trouver toutes les bases de données utilisateur.

5. Sélectionnez les bases de données

L'écran de découverte liste toutes les bases de données beads trouvées sur le serveur. Cochez celles que vous souhaitez ajouter comme workspaces. Chacune reçoit un chemin de répertoire local.

6. Cliquez sur "Ajouter les Workspaces"

Si vous avez un répertoire de projet local avec .beads/, Beadbox met à jour son metadata.json avec les détails de connexion au serveur. Si vous vous connectez à un serveur distant sans projet local, Beadbox crée un workspace stub dans ~/.beadbox/servers/ avec son propre metadata.json. Dans les deux cas, le workspace est enregistré et s'ouvre immédiatement.

Vous êtes connecté. Les modifications effectuées via bd en CLI ou par d'autres membres de l'équipe écrivant sur le même serveur Dolt apparaîtront dans Beadbox en quelques secondes (le mode serveur interroge les changements à intervalles de 2 secondes).

Connexion avec Authentification

Si votre serveur Dolt requiert un nom d'utilisateur et un mot de passe :

  1. Suivez les mêmes étapes que le Démarrage Rapide, mais remplissez les champs Utilisateur et Mot de passe avec les identifiants de votre serveur Dolt.
  2. Si TLS est requis (courant pour les serveurs distants), cochez la case Utiliser TLS.
  3. Cliquez sur Découvrir les Bases de Données et poursuivez la découverte.

Comment les mots de passe sont gérés

  • Les mots de passe sont conservés en mémoire uniquement. Beadbox n'écrit jamais votre mot de passe sur le disque.
  • Quand Beadbox redémarre, le mot de passe est perdu. Définissez BEADS_DOLT_PASSWORD dans votre profil shell pour éviter de le ressaisir à chaque lancement (voir Persister le Mot de Passe).
  • En coulisses, Beadbox transmet le mot de passe au CLI bd via la variable d'environnement BEADS_DOLT_PASSWORD à chaque invocation de sous-processus.

Dolt Hébergé et Serveurs Distants

Pour les serveurs Dolt fonctionnant sur une machine distante, une VM cloud ou Hosted Dolt :

  1. Host : Entrez le nom d'hôte ou l'IP de votre serveur.
  2. Port : Utilisez le port spécifié par votre fournisseur. Hosted Dolt utilise généralement 3306.
  3. Utilisateur/Mot de passe : Entrez les identifiants de votre fournisseur.
  4. TLS : Cochez "Utiliser TLS" (obligatoire pour Hosted Dolt et recommandé pour toute connexion distante).
  5. Cliquez sur Découvrir les Bases de Données et poursuivez normalement.

Persister le Mot de Passe

Beadbox conserve les mots de passe en mémoire uniquement, ils sont donc perdus au redémarrage. Pour tout serveur nécessitant une authentification (local ou distant), vous pouvez éviter de ressaisir le mot de passe en le définissant dans votre profil shell :

export BEADS_DOLT_PASSWORD="your-password-here"

Beadbox le détecte automatiquement pour tous les workspaces en mode serveur. Le champ mot de passe de l'interface a priorité si les deux sont définis.

Comment Ça Marche

Quand vous ajoutez un workspace serveur, Beadbox fait trois choses :

1. Écrit les métadonnées de connexion

Il écrit un .beads/metadata.json avec les détails de connexion au serveur. Pour les projets locaux, ce fichier se trouve dans le répertoire du projet. Pour les connexions serveur uniquement (sans projet local), il est placé dans ~/.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"
}

Quand TLS est activé, une clé "dolt_server_tls": true est ajoutée. Ce fichier indique à bd de se connecter à un serveur distant au lieu plutôt que d'en démarrer un automatiquement localement. Le mot de passe est intentionnellement absent de ce fichier.

2. Enregistre le workspace

Le workspace est ajouté au ~/.beadbox/registry.json pour que Beadbox et bd puissent le retrouver aux prochains lancements.

3. Transmet les identifiants à l'exécution

Chaque fois que Beadbox invoque une commande bd pour ce workspace, il définit BEADS_DOLT_PASSWORD dans l'environnement du sous-processus. Le mot de passe n'existe qu'en mémoire du processus.

Dépannage

Connexion refusée

Error: connect ECONNREFUSED 127.0.0.1:<port>
  • Dolt est-il en marche ? Vérifiez avec ps aux | grep dolt ou essayez dolt sql-server dans le répertoire du projet.
  • Bon port ? Si vous avez démarré Dolt via bd dolt start, le port est stocké dans .beads/dolt-server.port. Vérifiez ce fichier pour la valeur actuelle. dolt sql-server lancé directement utilise le port 3307 par défaut.
  • Pare-feu ? Sur les serveurs distants, assurez-vous que le port est ouvert pour les connexions entrantes.

Accès refusé

Error: Access denied for user 'root'
  • Mot de passe requis ? Votre serveur Dolt a peut-être l'authentification activée. Entrez le mot de passe dans le formulaire de connexion.
  • Mauvais utilisateur ? Vérifiez que le nom d'utilisateur correspond à un utilisateur Dolt avec un accès en lecture.
  • Mauvais mot de passe ? Les mots de passe ne sont pas sauvegardés entre les sessions. Ressaisissez-le après avoir redémarré Beadbox.

Échec du handshake TLS

Error: TLS handshake failed
  • Incohérence de la case TLS. Si le serveur requiert TLS, cochez "Utiliser TLS". S'il ne supporte pas TLS, décochez-la. Une erreur dans un sens ou dans l'autre provoque un échec du handshake.
  • Certificats auto-signés. Si votre serveur Dolt utilise un certificat auto-signé, vous devrez peut-être ajouter l'autorité de certification au magasin de confiance de votre système. Le CLI bd utilise le pool d'autorités racines du système et rejettera les certificats non approuvés.

Aucune base de données trouvée

No databases found on 127.0.0.1:<port>.
Verify the Dolt server has at least one database created with bd init.
  • Convention de nommage. Vérifiez que bd init a été exécuté dans au moins un répertoire de projet. La base de données devrait apparaître dans SHOW DATABASES sur votre serveur Dolt.
  • La base existe mais n'est pas visible ? Le compte utilisateur n'a peut-être pas la permission de voir toutes les bases de données.
  • Serveur tout neuf ? Si vous venez de démarrer Dolt sans initialiser beads, il n'y a pas encore de bases de données beads. Exécutez bd init dans un répertoire de projet, puis relancez la découverte.