Oracle tem um limite de 1000, que eu já bati antes. MySQL não parece se importar. A melhor solução é não usar uma cláusula IN para um conjunto de dados tão grande. De onde vêm os ids? Se for do mesmo banco de dados, veja se você pode usar uma subconsulta que pesquise com base em um parâmetro, por exemplo, userid para encontrar os IDs vinculados. Isso será muito mais eficiente, pois o MySQL pode fazer uma junção internamente usando índices.