MariaDB: Automatize com a CLI

Inicie o MariaDB, recupere as suas credenciais e altere a sua configuração programaticamente com a Stackhero CLI

👋 Bem-vindo à documentação da Stackhero!

A Stackhero oferece uma solução MariaDB cloud pronta para uso que proporciona uma série de benefícios, incluindo:

  • Conexões e transferências ilimitadas.
  • Interface web phpMyAdmin incluída.
  • Atualizações fáceis com apenas um clique.
  • Desempenho ótimo e segurança robusta alimentados por uma VM privada e dedicada.

Poupe tempo e simplifique a sua vida: leva apenas 5 minutos para experimentar a solução de MariaDB cloud hosting da Stackhero!

Este guia mostra-lhe como criar um serviço MariaDB, ler as suas credenciais e atualizar a sua configuração totalmente a partir da linha de comandos, sem necessidade de clicar no dashboard. É ideal para scripts, pipelines de CI e agentes de IA.

Vamos utilizar a Stackhero CLI para todas as tarefas. Se ainda não o fez, pode instalá-la com:

curl -fsSL https://www.stackhero.io/install.sh | sh

A forma mais simples de começar é iniciar sessão através do seu navegador. Quando executa o comando de login, a CLI abre uma página web onde pode aprovar o acesso. Não é necessário introduzir passwords ou códigos 2FA diretamente na CLI.

stackhero login

Após iniciar sessão, as suas credenciais ficam guardadas localmente e serão utilizadas automaticamente nos próximos comandos da CLI.

Para ambientes totalmente automatizados, como scripts ou pipelines de CI, poderá preferir um token de acesso não interativo. Pode criar um a partir do seu dashboard (Conta > Access tokens) e exportá-lo como variável de ambiente. A CLI, assim como qualquer script que execute, irá detetá-lo automaticamente.

export STACKHERO_TOKEN="usr-xxxxxx:your-token"

De seguida, irá querer listar os serviços store MariaDB disponíveis na sua conta. A CLI aceita diretamente o nome do store (mariadb), pelo que não é necessário procurar ou copiar IDs.

# Listar os serviços store MariaDB (adicione --organization se gerir mais do que um)
stackhero services-store-list --name="mariadb"

Pode referir-se ao nome do store mariadb nos comandos seguintes, ou escolher um ID específico svs-xxxxxx da lista, se preferir.

# Listar tamanhos de instância para o seu serviço store (utilize a coluna NAME para --instance)
stackhero instances-store-list --service-store=mariadb

# Listar regiões disponíveis (nomes como "europe")
stackhero regions-list

Segue-se um exemplo de script que cria um stack, adiciona o seu serviço MariaDB, aguarda que este inicie, recupera a sua configuração (incluindo as credenciais geradas) e depois aplica uma nova configuração.

#!/bin/bash
set -e

export STACKHERO_TOKEN="usr-xxxxxx:your-token"

serviceStore="mariadb"   # O nome do serviço store MariaDB (ver passo 2)
instance="..."                # Um tamanho de instância do passo 3
region="europe"               # Um nome de região do passo 3

# Criar um stack para o seu serviço (utiliza a sua organização por defeito; adicione --organization se necessário)
stackId=$(stackhero --format=script stack-create \
  --name="My MariaDB stack")
echo "Stack criado: ${stackId}"

# Adicionar MariaDB ao stack (os nomes são resolvidos automaticamente)
serviceId=$(stackhero --format=script service-add \
  --stack="My MariaDB stack" \
  --service-store="${serviceStore}" \
  --instance="${instance}" \
  --region="${region}")
echo "Serviço adicionado: mariadb"

# Aguardar que o serviço esteja totalmente operacional (pode demorar alguns minutos)
stackhero service-wait-for --service="mariadb"

# Recuperar a configuração do serviço, incluindo as credenciais geradas
stackhero service-configuration-get --service="mariadb" --format=json

O comando service-configuration-get devolve a configuração completa do seu serviço, incluindo passwords geradas automaticamente e detalhes de ligação. O resultado é em formato JSON, facilitando a utilização em scripts e automação.

stackhero service-configuration-get --service=svc-xxxxxx --format=json

Pode consultar um exemplo de esquema de configuração e depois aplicar as suas próprias definições. Ao atualizar a configuração, o serviço pode reiniciar para aplicar as alterações.

# Ver o esquema de configuração e um exemplo para o seu serviço
stackhero service-configuration-example --service=svc-xxxxxx

# Aplicar uma configuração personalizada (o serviço reinicia se necessário)
stackhero service-configuration-set \
  --service=svc-xxxxxx \
  --configuration='{ "...": "..." }'

# Aguardar que a nova configuração seja aplicada
stackhero service-wait-for --service=svc-xxxxxx

E está feito. Acabou de ver todo o ciclo de vida: iniciar um serviço, recuperar as suas credenciais e reconfigurá-lo, tudo de forma automatizada e scriptável. Para saber mais, consulte a documentação completa da CLI, que também cobre a autenticação não interativa com STACKHERO_TOKEN demonstrada aqui.