I'm in somewhat of the same boat, so I'm hoping someone more knowledgable comes along shortly!
I've been mucking about with XAMPP here lately a little bit; there are settings in the httpd.conf and my.ini/my.cnf (depends on the install, I gather) files that should dictate what interface and port the servers listen on. As an example, to make the Apache server bit of my Portable Apps XAMPP install listen only on the localhost aka loopback interface on port 80, I modified a line in httpd.conf to 'Listen 127.0.0.1:80'. I believe mysqld by default listens on port 3306, but there are ways to make it skip listening to the network and just respond to commands passed directly to it via unix pipes and such (via the 'skip_networking' configuration option), but thats where I'm pretty much at my limit on that sort of thing

Personally I'm kind of curious as to whether Apache/PHP would still work with the MySQL server on the same machine if the 'skip_networking' was turned on - for me on a local machine, run from a usb thumb drive, I'm not keen on having a server running on an open port if not necessary - even temporarily. I'll have to play with it some more - carefully.
HTH,
Monte