Ask Tourang a technical question
If you access the internet using a DSL or cable connection, or even a modem, it is highly recommended and in some cases necessary to install a “firewall” on your computer. What's a firewall? In simple terms it's the doorman who stands by the door checking people's id cards. It then decides who to let it in and who to send back home.
So why would you want to send those poor people back home? well without a good firewall, hackers can get into your computer, read your emails, send emails, change or delete your files just like they are sitting behind your computer. Hackers are equipped with applications that are continously scanning the internet for “exposed” computers. Once they find their target, they hook into your computer and gain control of it.
There are many firewalls on the net that you can purchase or download for free. The one I have found to be very reliable is called “Zonealarm”. You can download it for free. There is also a Pro version of it that you can purchase that gives you anti-virus software and a few more goodies.
Once downloaded, you can install it quickly and all of a sudden you are protected from all the intruders. One thing to note is that the doorman checks the traffic both ways. First it checks the IP addresses of the incoming traffic and asks you if you want to allow access. Second it checks the outgoing traffic where your local applications are trying to access the internet and asks your permission. You set a checkbox telling Zonealarm that it should alway remember your answers. So after installing Zonealarm if you see messages pop up asking you about traffic, don't be “alarmed”.
Latest Questions and Answers:
Database on a laptop
Q: If there is a private in-house server having a program with data in it, how can this be replicated on to a PC in the same network, so that the data can be accessed independently of the server?
For instance, if the server contains a large database program, I would like to instal that database on a laptop (which is on the same network), to be able to then take the laptop to another location (outside of the network) and work on the database.
A: Dear Farhad,
This is a loaded question. Normally client/server applications have a database, a server that usually has direct access to the database and a client that communicates with the server. The end user usually interacts with the client piece to read and save data in the database. In your case, you talked about a server that I assume has direct access to a database (either a Microsoft SQL Server database, an Oracle database, IBM's DB2 or any other database). But you did not mention anything about the client part of this system.
In any case, it's possible to duplicate your database on your laptop using tools provided by your database application. For example Microsoft SQL Server has it's own duplication utilities, and so do others. But from what I can decipher, this won't solve your problem since just having direct access to your database won't be enough for you interact with it. Unless you are an expert in databases and know how to modify database tables and data by hand! Therefore, a more complete solution would be to install both the client and the server applications on your laptop as well. Then you can use the client to communicate with the server which will modify your database.
But here is the bigger problem. What happens if you do all this and go offline with your laptop and happily modify your database? well once you connect back to your network, your local laptop database is out of sync with the database on your network. This is what is traditionally called offline synchronization. You will have to have some tools to update the network database from your laptop. By the time you get back from your trip, Joe might have been playing with the tool on the network, changing data and you might have changed the same data on your laptop sitting on the plane. How do you merge these two sets of data? (unless you are the president and you are going to overwrite Joe's data once you get back 🙂
So, in short this is not an easy problem to solve. Usually it takes careful planning and good programmers to achieve such a system. In some cases, manufacturer of server applications advertise that their system comes with offline synchronization.
Farhad's follow up Q: Let me try to be nore explicit.
The server has a SQL database, which serves a network of PCs, including a laptop. It is a private server and the database is exclusively for the network, nobody else uses it.
You say (and I agree) that the solution is: “to install both the client and the server applications on your laptop as well.” But exactly HOW do you instal this application from the server to the client?
The question of synchronization with the server, on returning with the laptop, is simple. Is it not? Especially, if Joe has not been working on the database in the meantime. Over-writing is also an option. You also state: “Usually it takes careful planning and good programmers to achieve such a system.” This is the reason I'm turning to you!
Does the above make it any clearer and is there a way to instal the database on the laptop?
Thank for your very kind attention.
A: Hello Farhad,
Normally when you purchase a server application, the CDs come with installation tools and utilities. The installation CDs allow you to both install the server and the client. In your case, probably your system administrator has installed the server on the network and someone (could be the administrator as well) has installed the client on your machine. If you want to have the whole system on your laptop, 4 things have to happen:
1. The Microsoft SQL Server database has to be installed on your laptop. You need to locate the CDs for SQL Server installation and install them.
2. The database on your server has to be replicated on your laptop. As I mentioned before, SQL Server come with replication utilities. You can use these utilities to replicate the database on your laptop (provided you have enough memory and hard disk space on your laptop).
3. You need to find the installation CDs for the server and install the server on your laptop.
4. You need to use the same CDs to install the client application on your laptop.
Now, if you can overwrite network database when you get back, then it's simple. Use the same SQL Server replication utilities to overwrite the network database.
Here is a reference to SQL Server replication.
I hope this helps.
Email your computer questions (all kinds of questions are welcome — even personal ones, not!)
About Tourang Birangi
— Bachelor of Science, 1984, Electrical and Electronic Engineering
— Worked for 6 years, developing and designing process control circuit
boards in Denver, Colorado.
— 5 years of firmware development with Motorola microprocessors.
— Master of Science, 1995, Computer and Information Sciences, Cleveland State University
— 15 years of software design and development, architecture, object
oriented programming (including close to 10 years of C, C++, Java).
J2EE design and development on both Windows and Linux operationg
systems. Experience with Websphere, JBoss, Weblogic application
— Recent work with C# and .Net.