Copiar ou restaurar só algumas tabelas de uma base de dados

Nem sempre vale a pena copiar a base de dados inteira. Antes de actualizar um plugin, de apagar encomendas antigas ou de mexer numa tabela, chega a cópia só das tabelas que vai tocar. Faz-se de duas maneiras: no phpMyAdmin, escolhendo as tabelas, ou na linha de comandos, com o nome delas à frente.

No phpMyAdmin

1 No cPanel abra o phpMyAdmin e escolha a base de dados.
2 No separador Structure, marque as caixas das tabelas que quer. Por baixo da lista, em “com as seleccionadas”, escolha Export.
3 Em alternativa, abra o separador Export, escolha o método Custom e, na caixa das tabelas, seleccione só as que interessam.
4 Deixe o formato em SQL. Se vai restaurar para uma base que já tem estas tabelas, marque a opção de acrescentar o DROP TABLE; senão a importação esbarra nas tabelas existentes.
5 Grave o ficheiro no seu computador. O artigo exportar com o phpMyAdmin explica o resto do ecrã.

Na linha de comandos (SSH ou Terminal do cPanel)

Com acesso a um terminal, o nome das tabelas vai a seguir ao da base de dados. Os nomes abc_util e abc_base são exemplos: use os seus, com o prefixo da conta.

O que quer O comando
Só duas tabelas mysqldump -u abc_util -p abc_base wp_posts wp_postmeta > posts.sql
Tudo menos uma tabela mysqldump -u abc_util -p --ignore-table=abc_base.wp_options abc_base > resto.sql
Só a estrutura, sem dados mysqldump -u abc_util -p --no-data abc_base > estrutura.sql
Restaurar o ficheiro mysql -u abc_util -p abc_base < posts.sql

O -p pede a palavra-passe no terminal, sem a deixar escrita no histórico. A cópia completa, com --single-transaction e compressão, está em copiar com mysqldump e restaurar.

Restaurar um ficheiro destes substitui as tabelas que ele traz. Por omissão a cópia começa por apagar cada tabela (DROP TABLE) e voltar a criá-la. Tudo o que mudou nessas tabelas desde a cópia perde-se. Se tem dúvidas, restaure primeiro para uma base de ensaio que criou no cPanel e compare.

Um bom hábito: ponha a data no nome do ficheiro (por exemplo posts-2026-10-10.sql) e guarde-o fora da pasta pública do site. Um ficheiro destes tem os dados todos da tabela, palavras-passe cifradas de utilizadores incluídas, e não deve ficar à vista de quem adivinhe o endereço.

Tabelas ligadas andam em grupo. Numa loja, as encomendas vivem em várias tabelas ao mesmo tempo. Restaurar uma sem as outras deixa dados incoerentes: encomendas sem linhas, produtos sem preço. Copie e restaure o grupo inteiro, tabela principal e auxiliares juntas.
Precisa de uma tabela de ontem, não de hoje? As cópias diárias da conta guardam a base inteira, e pode restaurá-la de lá. Veja restaurar os seus dados com o JetBackup. Para uma cópia sua, fora do painel: fazer e guardar a sua própria cópia.

Quer ajuda a escolher o que copiar antes de uma alteração grande? Diga-nos a aplicação e a tabela.

Abrir um pedido de suporte

VEJA TAMBÉM

Exportar uma base de dados com o phpMyAdmin

Copiar com mysqldump e pg_dump, e restaurar a cópia

Importar com o phpMyAdmin, e o limite de tamanho que o trava

Fazer e guardar a sua própria cópia, e testar que funciona

PRODUTO RECOMENDADO

Alojamento de sites com cPanel

Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde 321,75 MT/mês (plano de 3 anos, com cupão)

Ver planos
  • 0 Utilizadores acharam útil
Esta resposta foi útil?