neotheone 0 Denunciar post Postado Março 22, 2008 Estou com uma tabela que possui + ou - 63 mil registros (17 megas e uns quebrados) o phpMyAdmin não permite + que 2 megas, ele trava, como importar uma tabela desse tamanho para o banco? Se tiver que dividir em 2 tabelas, como seria? brigaduu! Compartilhar este post Link para o post Compartilhar em outros sites
kaplan 0 Denunciar post Postado Março 22, 2008 Estou com uma tabela que possui + ou - 63 mil registros (17 megas e uns quebrados) o phpMyAdmin não permite + que 2 megas, ele trava, como importar uma tabela desse tamanho para o banco? Se tiver que dividir em 2 tabelas, como seria? brigaduu! Se eu não me engano no phpmyadmin tem como escolher a importação por quantidade de registro, seria ideal você exportar em varias partes Agora uma outra pergunta pq você não se conecta com o MySqlAdministrator e faz esta exposrtação? Compartilhar este post Link para o post Compartilhar em outros sites
giesta 29 Denunciar post Postado Março 22, 2008 EXPORTAR DO BANCO ORIGINAL: select * from tabela_A into outfile '/home/giesta/txt_out/tabela.txt' IMPORTAR : load data INFILE '/home/giesta/txt_out/tabela.txt' into table tabela_B obviamente você troca o "/home.." por um caminho no seu pc Compartilhar este post Link para o post Compartilhar em outros sites
lsteffler 0 Denunciar post Postado Abril 11, 2008 Boa Noite! Giesta será que você poderia me ajudar? Eu tenho uma lista de aniverdariantes (500) mais ou menos no excel em duas colunas nome e data e preciso puxar isso pra uma tabela aniversariantes no banco mysql... criei a tabela aniversariantes com os campos id, nome, data tentei salvar como txt e executar como citou acima mas ele só registra o id. load data INFILE 'c:/teste/niver.txt' into table aniversariantes Se puder me ajudar como fazer, ficou muitíssimo grato! Abraços! Compartilhar este post Link para o post Compartilhar em outros sites
giesta 29 Denunciar post Postado Abril 11, 2008 o mysql importa por padrao com tabulaçao(TAB) e o xls exporta por padrao como CSV(ponto e virgula) , por isso mto provavelmente ele soh consegue ler a primeira coluna entao ou você manda o excel exporta direito ou você muda os parametros de importaçao do mysql http://dev.mysql.com/doc/refman/5.0/en/load-data.html o site acima deve resolver seus problemas Compartilhar este post Link para o post Compartilhar em outros sites
Wagner Bianchi 0 Denunciar post Postado Abril 11, 2008 Bom. . .se sua tabela tiver mais de 16MB, você terá que modificar o tamanho da diretiva do my.ini chamada max_allowed_packet para bem maior para que o phpMyAdmin permita fazer esta importação que, na verdade, não é o phpMyAdmin, é o MySQL mesmo!! Observe isso, http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
giesta 29 Denunciar post Postado Abril 12, 2008 Duas coisas: o que controla o tamanho limite da importacao no phpmyadmin eh o seguinte pedaço de codigo do import.php e as variaveis a q ele se refere, por padrao eh 2 megas // We can not read all at once, otherwise we can run out of memory $memory_limit = trim(@ini_get('memory_limit')); // 2 MB as default if (empty($memory_limit)) { $memory_limit = 2 * 1024 * 1024; } // In case no memory limit we work on 10MB chunks if ($memory_limit = -1) { $memory_limit = 10 * 1024 * 1024; } 2- Eh possivel importar arquivos de texto de qualquer tamanho(ate onde eu sei/testei) o max_allowed_packet refere-se ao tamanho maximo de uma SQL (nunca vi alguem escrever um sql de 16 megas) ou o tamanho maximo de uma LINHA a ser inserida no banco e nao do arquivo a ser importado, quem tiver duvida faça o teste. Compartilhar este post Link para o post Compartilhar em outros sites
Wagner Bianchi 0 Denunciar post Postado Abril 12, 2008 Legal giesta...boa discussão! Caso você precise de mais detalhes sobre aquilo que eu postei anteriormente, acesse esse link e leia com atenção, por favor, o terceiro parágrafo: http://dev.mysql.com/doc/refman/5.0/en/packet-too-large.html . When a MySQL client or the mysqld server receives a packet bigger than max_allowed_packet bytes, it issues a Packet too large error and closes the connection. With some clients, you may also get a Lost connection to MySQL server during query error if the communication packet is too large. Both the client and the server have their own max_allowed_packet variable, so if you want to handle big packets, you must increase this variable both in the client and in the server. NÃO É O PHPMYADMIN que controla o que o SERVIDOR MYSQL fará ou não, ele'somente é mais um front para o SGBD como qualquer outro, o mais utilizado, acredito, pela sua facilidade. Outra, não é a SQL ou mesmo o comando SQL que tem todo esse tamanho, e sim a quantidade de dados que deverá ser primeiro colocada na memória e posterior inserção nas páginas de dados que alimentam as tabelas de um banco de dados contido no SGBD MySQL. Geralmente, instituições financeiras manipulam muito mais dados que 16MB em seus processos, por exemplo, de folha de pagamento...têm processos que rodam 4 dias até. http://forum.imasters.com.br/public/style_emoticons/default/blush.gif Forte abraço e acho que merecemos continuar esse papo! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites