JDBC es solo una especificación de interfaz. No agrega ninguna sobrecarga de TCP/IP. Si hay sobrecarga es causado por el controlador JDBC. También hay controladores JDBC en memoria o bases de datos de archivos y no usan TCP/IP en absoluto.
El controlador MYSQL JDBC es un controlador JDBC de tipo 4. Eso significa que no usa ningún código nativo para acceder a la base de datos. Si Java no tiene un método para acceder a los zócalos de Unix, el controlador no puede usarlos tampoco. [1]
Si realmente desea utilizar un socket unix, quizás sea posible utilizar el controlador ODBC de MySQL que parece ser compatible con los sockets Unix y luego utilizar un puente JDBC-ODBC para acceder desde Java.
Puede exportar la API C de MySQL http://dev.mysql.com/doc/refman/5.0/en/c.html a Java usando Swig http://www.swig.org/. Si tiene tiempo y vale la pena :) – Joset
Creo que está tomando el mismo enfoque que yo, si no quiere que el servidor mysql esté expuesto a la web ... use iptables y tal bloquear el puerto, pero las aplicaciones locales todavía pueden acceder bajo el firewall. – ppostma1
Creo que lo que el poster original quería era un conector JDBC de MySQL que pudiera usar el socket local de Unix en lugar de TCP. Como otros señalaron, el conector estándar JDBC hace muchas cosas inteligentes y, a menos que haya confirmado que la conexión de red es un cuello de botella, se arriesga a una optimización prematura. No veo una forma estándar de usar sockets en el conector JDBC de MySQL para hacer esto. – mdoar