I'm the author of node-mysql-native driver, from my point of view the differences are
- no prepared statements support (yet) in node-mysql
- according to my benchmarks node-mysql is 10-20% slower than node-mysql-native
- node-mysql has much wider adoption, more tests and users. If you need stability, better use it
- node-mysql-libmysqlclient is 2 to 3 times faster on fast queries. However, if you have a lot of slow queries and use connection pools it could be even slower than native JS driver because libmysqlclient async calls are based on nodejs thread pool and not on event loop.
update
As of 11/07/2013
- (2). no longer valid (mysql-native is a bit slower than node-mysql)
- have this alternative to node-mysql, on some benchmarks it's 2-3 times faster, has same API + support for prepared statements, SSL and compression. Also implements simple subset of server side protocol - see for example MySQL -> Postgres proxy.
- node-mariasql is also a very good option (if it's ok to use binary addon) - fast, stable, async, prepared statements support, compression and SSL.