Jump to content
Sign in to follow this  
rexmage

importar CSV para SQL 600 mil registos

Recommended Posts

rexmage

Boas pessoal tenho 600 mil registos para importar de um ficheiro CSV para SQL.

Qual a forma mais eficiente de fazer isto ?

Fiz um script em PHP para ele fazer importação. O problema é que não importa mais do que uma determinada quantia variável ( umas vez importa 3000/9000 outras 2000/6000 etc).

Já pedi ao host para aumentar o tempo do SQL, mas mesmo assim passado mais algum tempo, ele pára de executar o script. Pode ser algum modo de segurança activado pelo próprio browser ( estava a usar o chrome)?

Alguém que tenha feito já importações de quantidades maiores de dados pode dar o seu feedback?

É que só importei ainda 100 mil e poucos e demorei 4 ou 5 dias, por isso queria uma forma mais rápida de o fazer.

Obrigado!


<?PHP echo "Bo0m"; ?>

Share this post


Link to post
Share on other sites
HappyHippyHippo

quando dizes " passado mais algum tempo" não será exactamente 30 segundos ?

isso é o limite de tempo de execução do PHP.

podes :

- configurarar o script PHP a poder ser executado durante um tempo mais prolongado : http://php.net/manual/en/function.set-time-limit.php

- criar uma página que executa pedidos AJAX que pede a um script no servidor que sejam inseridos os registos de X a X+Y, onde a cada pedido, o X será o X + Y + 1 do pedido anterior


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
rexmage

Olá HappyHippyHippo,

Sim eram 30 segundos mas eu pedi ao host para aumentar o tempo de ciclo. Depois disso, ele continua a rebentar estranhamente.

Relativamente à segunda hipotesse, eu já tinha pensado em fazer um script que corre-se X a X. Mas porquê em ajax ? Existe alguma razão específica ?

Obrigado


<?PHP echo "Bo0m"; ?>

Share this post


Link to post
Share on other sites
HappyHippyHippo

o link que te apresentei demonstra como alterar o tempo limite de configuração sem qualquer tipo de intervenção do teu host provider.

a escolha do uso do AJAX é simples : automatismo.

é fácil criar uma página que basta carregar num botão e ter tudo a correr automáticamente. quando tens uma resposta do servidor, efectua a seguinte


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
rexmage

Sim foi mesmo esse o meu caso.

Tive de pedir para me aumentarem o tempo de execução, mas ficou resolvido. Agora vou tentar outro método que o hippo falou, parece-me uma boa alternativa colocar por intervalos


<?PHP echo "Bo0m"; ?>

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.