• Just to point out,

    GRANT ALL ON *.* to fooUser@'<IP Address/Host name of the machine from where you are trying to access MYSQL Server' IDENTIFIED BY '<Password>';

    essentially creates a user with full permissions (except for GRANT permissions) on your MySQL server. I would still recommend security best practices and only grant necessary rights to your linked server account (i.e if you're only going to read, GRANT SELECT instead of GRANT ALL).