I am thinking to use MySQL with my new Java project, it contains some code that creates database locally and store data in it.

It is all fine on my machine as I have all requisites installed like MySQL server but what will happen when I give this developed software to users, they will probably have not installed MySQL.

I am new with MySQL so not sure how it works, I am sure this is a bit stupid question and there must be some way around.

there is no need to install mysql on client system but it must be connected with the server

yeah but the situation is like this that server is installed just on my developer machine but how will my end software find a server, as i am not managing a server online to handle my software queries

Your clients need access to a mysql server, either on their local machines or a server in their own network or a server which is accessible through the internet. So either you setup a mysql server on each client machine, or you set up a server in their network, or you open your developer machine for mysql queries from the outside. for that purpose you can use dyndns.org or selfip.com if you don't have a fixed IP address.

Your clients need access to a mysql server, either on their local machines or a server in their own network or a server which is accessible through the internet. So either you setup a mysql server on each client machine, or you set up a server in their network, or you open your developer machine for mysql queries from the outside. for that purpose you can use dyndns.org or selfip.com if you don't have a fixed IP address.

great, this reply really answered my question. I have one more question, what if I do not want to set up a server for my clients queries, i just want to handle them locally on client machine, as it does not create or use any big database and I also want the database to reside only on the client machine. So what other database can I use if I do not want to set up server for my clients?

Google for "mysql java alternative". It all depends on your requirements. With mysql you have a full-fledged SQL DB. Which parts do you not need? Maybe you might even be happy with a simple hash table in text format?

Try H2 if you want a local embedded database for use with Java.

I switched to JavaDb and presently it is looking good. Thanks