Importar uma base de dados com o phpMyAdmin, e o limite de tamanho que o trava

Crie uma base vazia, abra-a no phpMyAdmin, vá ao separador Importar, escolha o ficheiro (.sql, .zip ou .gz) e clique em Executar. Se o ficheiro for maior do que o tamanho máximo que o ecrã indica por cima do campo de ficheiro, a importação não arranca: é o limite que trava quase toda a gente.

Passo a passo

1 Se ainda não tem a base, crie-a com o seu utilizador. Veja criar um utilizador e dar-lhe os privilégios.
2 No cPanel, abra o phpMyAdmin e clique no nome da base vazia na coluna da esquerda.
3 Clique em Importar. Repare no tamanho máximo escrito perto do campo do ficheiro.
4 Escolha o ficheiro. O phpMyAdmin lê ficheiros comprimidos (.gz e .zip) sem os descomprimir primeiro. O conjunto de caracteres fica em utf-8.
5 Clique em Executar e espere pela mensagem verde de importação concluída. Depois confira se as tabelas aparecem na coluna da esquerda.

Quando falha, e o que fazer

Sintoma Causa Solução
O ficheiro é recusado por tamanho É maior do que o limite do phpMyAdmin. Comprima em .gz ou .zip (o SQL comprime muito bem) ou divida o ficheiro. Em último caso, importe por SSH.
A página pára ou dá tempo esgotado a meio A importação demorou mais do que o servidor deixa uma página correr. Divida o ficheiro em partes ou use SSH. Não volte a carregar às cegas: veja primeiro quantas tabelas ficaram.
#1273 Unknown collation A cópia vem de um MySQL 8. Troque utf8mb4_0900_ai_ci por utf8mb4_unicode_ci no ficheiro.
#1227 Access denied, com DEFINER O ficheiro cria vistas ou rotinas com o utilizador antigo. Apague as cláusulas DEFINER=... do ficheiro.
#1062 Duplicate entry A base não estava vazia. Esvazie-a primeiro. Veja esvaziar sem apagar.
O limite é do phpMyAdmin do painel, e em regra não muda quando altera a versão do PHP ou os limites do seu site. Não perca tempo a mexer em .user.ini para o aumentar. Se o ficheiro for grande, mude de método em vez de tentar mudar o limite.

Antes de carregar em Executar

Três verificações poupam muitas voltas. Primeiro, confirme que está dentro da base certa: a importação vai para a base aberta, e a partir da página inicial o phpMyAdmin tenta criar as bases que o ficheiro mencionar. Segundo, abra o ficheiro e procure as linhas CREATE DATABASE e USE: o nome da base no seu cPanel leva o prefixo da conta, por isso apague essas linhas. Terceiro, se vai importar para uma base que já tem dados, exporte primeiro o que lá está, para poder voltar atrás.

O caminho seguro para ficheiros grandes é o SSH: mysql -u utilizador -p nome_da_base < copia.sql. Veja importar uma base grande por SSH.

A importação não termina ou o erro não é nenhum destes? Diga-nos o erro exacto e o tamanho do ficheiro e vamos ver.

Abrir um pedido de suporte

VEJA TAMBÉM

Importar uma base grande por SSH

Exportar uma base de dados com o phpMyAdmin

Conjuntos de caracteres: utf8mb4 e os pontos de interrogação

PRODUTO RECOMENDADO

Alojamento de sites com cPanel

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

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