El problema no es el sistema operativo. Así usases Solaris, Linux, Mac OS o IBM AIX, el problema es el mismo: el login del usuario en la base de datos, NO EN EL SISTEMA OPERATIVO.
Si has usado MS SQL Server en cualquiera de sus versiones probablemente no lo has notado (suelen poner el login de Windows por default en el server de la base), pero los motores de bases de datos exigen que inicies la sesión EN la base con un login específico. Cuando programas ODBC es posible que estés configurando la conexión para que acceda con un username predefinido. Ese username (suelen dejar al root, cosa no conveniente) es el que se está logueando al hacer la conexión..
El problema debe residir en que al instalar la base de datos y crearse el usuario (el
root se crea por default
siempre), se debe haber creado para loguearse al
localhost, es decir la propia máquina donde el server está corriendo. En el registro de MySQL debe entonces figurar "localhost" en la tabla de usuarios, en el usuario en cuestión, pero ninguna otra autorización.
Para verificar esto, ejecuta la siguiente sentencia EN LA MÁQUINA DEL SERVER:
Código:
SELECT * FROM MYSQL.USER;
Esto te mostrará la tabla de usuarios con sus permisos. En "Host" el usuario en cuestión debería aparecer una sola vez y decir "localhost". Para corregirlo hay que darle el permiso de conexión remota o especificar la IP desde la cual se logueará.
Si aparece con "%", entonces el problema que tienes es a nivel de conexión y no usuarios.