É melhor perguntar no StackOverflow ... Você menciona inserções do MySQL, mas não vejo nenhum código SQL em sua pergunta. Normalmente, quando você insere grandes quantidades de dados em um banco de dados:
1) você não faz uma solicitação por linha 2) você COMMIT de vez em quando, caso contrário, o DB tem que manter todos os seus dados em um buffer temporário. 3) Mas você não compromete para cada linha, já que isso é caro, normalmente você insere dados por lotes de milhares de linhas.
O MySQL e outros DBMS também possuem maneiras de ingerir grandes tabelas a partir do arquivo (veja LOAD DATA
em SQL ou o comando mysqlimport
) para que seu script possa criar esse arquivo intermediário e depois chamar o MySQL para carregá-lo de uma só vez.