Certainly, there is no inherent problem with having two DBMS programs running at once, other than the extra system resources they both consume, as long as they listen on different ports (which, by default, they do: MySQL uses Port 3306, while Postgres listens on Port 5432 - although, as a further proviso, I'll add that Postgres installs with it's actual TCP/IP socket closed, by default, so it isn't possible to log onto a Postgres database from anywhere other than localhost without editing the postgres.config file, amongst others: that's a side issue, though, so i'll say no more about it).
To get onto your Linux machine's MySQL database, you have to ensure that any firewall between them (and even XP has a "firewall", of sorts, these days, remember) allows connections via Port 3306, first of all. Next, add a user (I usually create a specific one, with only SELECT, INSERT, UPDATE and DELETE privilages) whose host IP address or name is known within the local network. Create this user within your MySQL DBM's own special "mysql" database, in the "user" table, with "host" entry equal to your Windows machine's IP address or hostname: something along the lines of:
GRANT SELECT,INSERT,DELETE,UPDATE TO myname@192.168.42.42 ON database.* IDENTIFIED BY 'meaningoflife';
Followed by a quick:
FLUSH PRIVILEGES;
(where you insert your own relevant data, instead of all that IP address and username/password nonsense, above. If you are on DHCP within a Unix environment, this may be aproblem, since your IP will be assigned dynamically on a default timeout of 30 minutes, if your sys admins haven't changed things. if you are on a Windows server network, it probably won't matter either way. Microsoft's implementation of the DHCP daemon defaults to a timeout of 7 days, and is actually only used by most Windows sys admins as a lazy way of building static IP networks.)
Once all that is done, and you've locked down everything else, WRT security to the connection between your Linux machine and the Windows machine, you can connect to your MySQL database using just about any software you choose - even Access, if you wish - although I'd only use that to import tables on a temporary basis for producing schema diagrams. There are many commercial and free client programs for MySQL available. A commercial offering such as Navicat may make sense - and you can try it out on a 30 day trial basis - or you can use MySQL's own Control Centre software, which isn't too bad.
That said, I actually tend to open the SSH port and login in using the commandline secure shell client PuTTY, in order to run MySQL's own commandline program, "mysql". I always run any root login via this route, anyway, since the extra inconvenience is far outweighed by the seldomness with which I need to make major table alterations, and it's always good to have to type in at least some of the SQL you are using on a daily basis: I tended to use the commandline tool in SQL Server, for the same reasons!
On a final note, this doesn't just apply to Windows clients, or course (after all, we're ALL using Berkley's TCP/IP stack :). You could just as easily apply the same steps to getting another Linux desktop client connected, or a Macintosh, or, in my case, my FreeBSD laptop.
HTH
Dan
|