Conectando a um Servidor Dolt
O Beadbox pode se conectar a um servidor Dolt SQL em execução, oferecendo acesso multi-escritor e fluxos de trabalho em equipe sobre os mesmos bancos de dados beads que você usa pelo CLI.
Requer Beadbox 0.9.12+ Verifique sua versão em Configurações > Sobre ou em /api/version.
Pré-requisitos
Antes de começar, você precisa de três coisas funcionando:
| Componente | Versão Mínima | Verificar |
|---|---|---|
CLI beads (bd) | 0.56.x+ | bd --version |
| Servidor Dolt | Em execução e aceitando conexões | dolt sql-server no seu projeto |
| Beadbox | 0.9.12+ | Configurações > Sobre |
Seu servidor Dolt deve ter pelo menos um banco de dados seguindo a convenção de nomenclatura beads_. Isso é o que o beads cria quando você executa bd init com modo Dolt. O Beadbox usa esse prefixo para descobrir bancos de dados beads e ignorar os não relacionados.
Início Rápido (local, sem autenticação)
O caminho mais rápido: um servidor Dolt na sua própria máquina sem autenticação configurada.
1. Inicie seu servidor Dolt
cd ~/Projects/myproject
dolt sql-serverO Dolt escuta na porta 3307 por padrão.
2. Abra o Beadbox
No seletor de workspace, clique em Adicionar por servidor (ou encontre o cartão Avançado na tela de boas-vindas se for sua primeira execução).
3. Insira os detalhes da conexão
| Host | 127.0.0.1 (pré-preenchido) |
| Porta | 3307 (pré-preenchido) |
| Usuário | root (pré-preenchido) |
| Senha | deixe vazio |
| TLS | desmarcado |
4. Clique em "Descobrir Bancos de Dados"
O Beadbox se conecta ao servidor e executa SHOW DATABASES para encontrar todos os bancos de dados que correspondem ao padrão beads_*.
5. Selecione os bancos de dados
A tela de descoberta lista todos os bancos de dados beads encontrados no servidor. Marque os que você quer adicionar como workspaces. Cada um recebe um caminho de diretório local.
6. Clique em "Adicionar Workspaces"
O Beadbox cria o diretório local .beads/ com um metadata.json apontando para seu servidor, registra o workspace e o abre.
Você está conectado. Alterações feitas pelo bd no CLI ou por outros membros da equipe escrevendo no mesmo servidor Dolt aparecerão no Beadbox em alguns segundos (o modo servidor faz polling de alterações em intervalos de 1 segundo).
Conectando com Autenticação
Se seu servidor Dolt requer usuário e senha:
- Siga os mesmos passos do Início Rápido, mas preencha os campos Usuário e Senha com as credenciais do seu servidor Dolt.
- Se TLS for necessário (comum para servidores remotos), marque a caixa Usar TLS.
- Clique em Descobrir Bancos de Dados e prossiga com a descoberta.
Como as senhas são tratadas
- As senhas ficam apenas na memória. O Beadbox nunca grava sua senha em disco.
- Quando o Beadbox reinicia, a senha é perdida. Para evitar digitá-la a cada inicialização, defina BEADS_DOLT_PASSWORD no perfil do seu shell (veja Persistindo a Senha).
- Por baixo dos panos, o Beadbox passa a senha para o CLI bd através da variável de ambiente BEADS_DOLT_PASSWORD em cada invocação de subprocesso.
Dolt Hospedado e Servidores Remotos
Para servidores Dolt rodando em uma máquina remota, VM na nuvem ou Hosted Dolt:
- Host: Insira o hostname ou IP do seu servidor.
- Porta: Use a porta especificada pelo seu provedor. Hosted Dolt geralmente usa 3306.
- Usuário/Senha: Insira as credenciais do seu provedor.
- TLS: Marque "Usar TLS" (obrigatório para Hosted Dolt e recomendado para qualquer conexão remota).
- Clique em Descobrir Bancos de Dados e prossiga normalmente.
Persistindo a Senha
O Beadbox mantém as senhas apenas na memória, então elas são perdidas ao reiniciar. Para qualquer servidor que requer autenticação (local ou remoto), você pode pular a reentrada da senha configurando-a no perfil do seu shell:
export BEADS_DOLT_PASSWORD="your-password-here"O Beadbox reconhece isso automaticamente para todos os workspaces em modo servidor. O campo de senha da interface tem precedência se ambos estiverem definidos.
Como Funciona
Quando você adiciona um workspace de servidor, o Beadbox faz três coisas:
1. Grava metadados de conexão
Ele cria um .beads/metadata.json no diretório local do projeto com os detalhes da conexão do servidor:
{
"dolt_mode": "server",
"dolt_server_host": "127.0.0.1",
"dolt_server_port": 3307,
"dolt_database": "beads_myproject",
"dolt_server_user": "root",
"database": "dolt"
}Quando TLS está habilitado, uma chave "dolt_server_tls": true é adicionada. Este arquivo diz ao bd para conectar a um servidor remoto em vez de usar um banco de dados local embutido. A senha é intencionalmente omitida deste arquivo.
2. Registra o workspace
O diretório local é adicionado ao ~/.beads/registry.json para que o Beadbox e o bd possam encontrá-lo em futuras execuções.
3. Passa credenciais em tempo de execução
Toda vez que o Beadbox invoca um comando bd para este workspace, ele define BEADS_DOLT_PASSWORD no ambiente do subprocesso. A senha existe apenas na memória do processo.
Solução de Problemas
Conexão recusada
Error: connect ECONNREFUSED 127.0.0.1:3307- O Dolt está rodando? Verifique com ps aux | grep dolt ou tente dolt sql-server no diretório do projeto.
- Porta correta? O Dolt usa a porta 3307 por padrão, mas você pode ter configurado uma porta diferente.
- Firewall? Em servidores remotos, certifique-se de que a porta está aberta para conexões de entrada.
Acesso negado
Error: Access denied for user 'root'- Senha necessária? Seu servidor Dolt pode ter autenticação habilitada. Insira a senha no formulário de conexão.
- Usuário errado? Verifique se o nome de usuário corresponde a um usuário Dolt com acesso de leitura.
- Senha errada? As senhas não são salvas entre sessões. Digite-a novamente após reiniciar o Beadbox.
Falha no handshake TLS
Error: TLS handshake failed- Divergência na opção TLS. Se o servidor requer TLS, marque "Usar TLS". Se não suporta TLS, desmarque. Ter isso errado em qualquer direção causa falha no handshake.
- Certificados autoassinados. Se seu servidor Dolt usa um certificado autoassinado, você pode precisar adicionar a CA ao repositório de confiança do sistema. O CLI bd usa o pool de CA raiz do sistema e rejeitará certificados não confiáveis.
Nenhum banco de dados encontrado
No beads databases found on 127.0.0.1:3307.
Databases must follow the beads_* naming pattern.- Convenção de nomenclatura. O Beadbox só descobre bancos de dados cujos nomes começam com beads_. Se seu banco tem outro nome, renomeie-o ou crie um novo com bd init usando modo Dolt.
- Banco de dados existe mas não aparece? A conta de usuário pode não ter permissão para ver todos os bancos de dados.
- Servidor novo? Se você acabou de iniciar o Dolt sem inicializar o beads, não existem bancos de dados beads ainda. Execute bd init em um diretório de projeto com modo Dolt configurado, depois tente a descoberta novamente.