Unanswered: Best way to run Database on "local intranet"?
Hello. I have built a database using PHP and MySql. I had planned to just have it web based, but then I had some frightening thoughts. What if the office internet access is down? What if the domain name expires? What if the hosting company is down or just splits?
This database is a vital part of how the company will work so I need reliability. I was thinking it might be best to run the db on a local pc on the office network. Does this make any sense? The computer that is available has XP Corporate installed on it and basically is just used to retrieve files from it's "Public Folders."
Should I run the database locally? If so, how should I do it? Do I have to install Apache, MySql, PHP manually? Or is there a single click WAMP program I can use? And if I do run it locally, how can other computers across the network access it? Can I restrict access to it so that only local machines can use it (so no one from the web can hack it)?
I am looking for the best solution to set this DB up which is dependable and reliable. Please help a noobie out!
If you need reliability then there's a good chance that any reasonably good hosting company will be a better, more reliable solution than anything you can do yourself.
It all comes down to what you need to do however. Do you need to be able to access your DB information remotely i.e. from over the Internet or do you just need to access it from within the office? If the answer is just within the office then just use IIS 5.1/PHP/MySQL on a local PC in the office. IIS comes free with Win XP Pro but you have to be aware that XP Pro can only support 10 Concurrent Connections because it is it only designed as a development platform and not as a end user solution. IIS is a damn sight easier to use than Apache especially if you don't know what your doing.
With regards to people being able to access the network, again it comes down to whether you need to access it remotely. If you don't need access from outside the office then it is fairly easy to restrict access both in MySQL (see GRANT PRIVILEGES at www.mysql.com) and within IIS to only certain IP addresses. If you know what your internal IP addresses are i.e. 192.168.0.* then you can limit access to only the IP addresses being used.
If you do need access remotely there could be many factors surrounding the security that would need looking into.
In short, personally I would summarize by saying that if it were me and I needed 24 hour almost guaranteed access then get an external host to do it for you. They're much more experience, invest thousands in Firewalls, data backup etc and if you do a bit of research and pick a good host they won't do a runner overnight so you don't have anything to worry about there. For what will probably amount to £200 per year you will have piece of mind.
Thanks alot. Some good info there. I don't need to access the network outside of the office. I probably should have made that clear. If I did need access, I could just use VNC or something. I'm kind of hoping that a 1 click WAMP solution would work, but I don't know much about them or even if that's a realistic idea. And I don't know how I'd be able to access it on other computers in the office.