Eu não sei muito sobre o DataReader, mas parece que você precisa encontrar esse vazamento. Sugiro primeiro definir manualmente o tamanho do pool em sua string de conexão usando:atributos Max e Min Pool Size, consulte para obter detalhes:http://dev.mysql.com/doc/refman/5.0/en/connector-net-connection-options.html
Eu também sugeriria monitorar a abertura e o fechamento da conexão com o pool definido como desativado para ver o que realmente acontece com o ciclo de vida da conexão. Você pode usar no console mysql
show processlist;
Para ver as conexões atuais e
show global status;
Para monitorar todos os atributos db. Eu também sugeriria ler este artigo do mysql explicando o "problema de conexão demais"
http://dev.mysql.com/doc /refman/5.5/en/too-many-connections.html
Certifique-se de que a configuração do mysql esteja alinhada com a configuração do seu aplicativo para garantir que você não permita muitas conexões do que o servidor realmente permite.
Saúde,