Edit(2): Now using db-mysql with generic-pool module. The error rate has dropped significantly and hovers at 13% but the throughput is still around 100 req/
100 connections is the default setting for MySQL maximum number of connections.
So somehow your connections aren't being reused for different requests. Probably you already have one query running on each connection.
Maybe the nodejs MySQL library you are using will not queue queries on the same MySQL connection but try to open an other connection and fail.