MariaDB: Utilização avançada

Como configurar, otimizar, exportar ou importar dados MariaDB

👋 Bem-vindo à documentação da Stackhero

A Stackhero disponibiliza um serviço MariaDB cloud pronto a utilizar, concebido para cargas de trabalho em produção. Beneficie de:

  • Ligações e transferências de dados ilimitadas.
  • Interface web phpMyAdmin integrada para gestão da base de dados.
  • Atualizações com um clique para uma manutenção facilitada.
  • Elevada performance e forte segurança numa infraestrutura privada e dedicada.

Lance uma instância MariaDB totalmente gerida em poucos minutos. A Stackhero trata da configuração, atualizações e segurança, para que se possa concentrar na sua aplicação. Saiba mais sobre o alojamento MariaDB cloud.

Na Stackhero, não está limitado por um número fixo de ligações simultâneas que o seu servidor pode suportar. Tem a flexibilidade de ajustar este valor diretamente no seu dashboard Stackhero.

Embora possa ser tentador definir um limite de ligações muito elevado, é aconselhável escolher um número que corresponda ao seu uso real. Cada ligação consome memória (RAM), por isso, definir o limite demasiado alto pode levar ao esgotamento dos recursos do sistema e até a um possível crash.

Se a sua base de dados utiliza o motor de armazenamento InnoDB, pode ativar a opção "InnoDB Optimizations" no seu dashboard. Isto pode ajudar a melhorar o desempenho para workloads baseados em InnoDB.

Para bases de dados que utilizam o motor MyISAM, ativar a opção "MyISAM Optimizations" também pode trazer benefícios.

Se não tiver a certeza de qual a melhor opção para a sua configuração, normalmente é seguro ativar ambas inicialmente. Posteriormente, ao monitorizar o uso de recursos e o desempenho, pode decidir desativar uma ou ambas para poupar memória (RAM).

A query cache do MariaDB é uma funcionalidade útil que pode ser ativada diretamente no dashboard Stackhero. De um modo geral, recomenda-se mantê-la ativa. No entanto, se a sua base de dados realiza mais operações de escrita do que de leitura, ou se pretende minimizar o consumo de memória, pode considerar desativá-la.

As ferramentas de linha de comando do MariaDB, como mysql e mysqldump, são essenciais para tarefas como importação ou exportação de dados.

Executar estas ferramentas dentro de um contentor Docker pode simplificar a configuração, especialmente se quiser evitar instalar software diretamente no seu computador.

Se o Docker não faz parte do seu workflow, não há qualquer problema! Pode experimentar o Code-Hero na Stackhero como alternativa. O Code-Hero é uma plataforma de desenvolvimento completa que funciona diretamente no seu browser, sem necessidade de instalações locais. Pode saber mais sobre as suas funcionalidades e começar em apenas alguns minutos visitando Code-Hero na Stackhero.

Para começar com o Docker, pode lançar um contentor MariaDB com o seguinte comando:

docker run -it -v $(pwd):/mnt mariadb:<MARIADB_VERSION> /bin/bash

Substitua <MARIADB_VERSION> pela versão específica de MariaDB de que necessita. Se a sua aplicação utiliza a versão 10.11.6-0 do MariaDB na Stackhero, por exemplo, pode usar a versão 10.11.6 (basta omitir o sufixo -0).

Assim que o contentor estiver em execução, pode testar a ligação com:

mysql -u root -p -h <XXXXXX>.stackhero-network.com -P <PORT>

Quando inicia o contentor, o seu diretório atual é montado em /mnt dentro do contentor (graças ao $(pwd):/mnt). Isto significa que qualquer ficheiro no seu diretório atual do computador ficará disponível em /mnt dentro do contentor. Por exemplo, se quiser fazer backup de uma base de dados MariaDB para a sua máquina, pode executar este comando dentro do contentor para guardar o backup como /mnt/<DATABASE>.sql:

mysqldump -u root -p -h <XXXXXX>.stackhero-network.com -P <PORT> <DATABASE> > /mnt/<DATABASE>.sql

Pode utilizar a CLI mysqldump a partir do seu computador para exportar uma base de dados. Para detalhes passo a passo, consulte a secção acima.

Para exportar uma base de dados da sua instância Stackhero para o seu computador, utilize o seguinte comando:

mysqldump -u root -p -h <XXXXXX>.stackhero-network.com -P <PORT> <DATABASE> > <DATABASE>.sql

Certifique-se de substituir <XXXXXX>.stackhero-network.com, <PORT> e <DATABASE> pelos seus próprios dados. Após pressionar Enter, o mysqldump irá pedir-lhe a password do utilizador root. Em seguida, irá exportar todas as tabelas da sua base de dados para o ficheiro <DATABASE>.sql.

Para importar uma base de dados do seu computador para a sua instância Stackhero, utilize:

mysql -u root -p -h <XXXXXX>.stackhero-network.com -P <PORT> <DATABASE> < yourDump.sql

Basta substituir yourDump.sql pelo ficheiro SQL que pretende importar para a sua instância Stackhero.