Hi Dw.

I'm a bit stuck with a lot of confusion here.

I'm developing a client/server applications which communicates to each other, my project is a multi-thread based and I'm currently using MS Access and database but I have hit a very challenging problem as this was the wrong database to use at first due to its limitations.

My program uses signals(predefined messages) to perform the appropriate task to make a very simple example to login to your account you need to fill in the username and password and click login button.

The client will send: LOGIN:<txtusername.Text>:<txtpassword.Tex> using LOGIN as signal a server first check the signal and go to appropriate code for that signal so that it will perform the desired task. As to this sample, the application will try to login.

Now there is another part which keep sending the data retrieval signal after or in every 600 interval. So by doing so this courses the server to reach the maximum MS Access database connection limit by just one client, so I was adviced to move to MySQL server.

But upon doing some research I get confused more and more. First I think I need a proper explanation or clarification of the differences between:

MySQL
MySQL Server
MySQL Client

And to what each do, I mean its purpose and which one exactly I can use.

Upon the research I found out that MySQL consist of both Server and Client. Now if I download and use this will I have to add it client to my Client app, add its server to my server side app?

If I have MySQL Server would I still need my Server application?

I'm a bit lost with MySQL and I've just decided to get some more clarification on this and that does this comes with its own database?

What is the difference from these to that, that comes with WAMP server/LAMP server?

How can I adopt this to my application, what is it limitation, how many simultaneous activities can it handles because my application as I've said is currently multi-thread and will have extremely high traffic volume 24/7 where the data will be retrieved,updated,created now and then as clients uses the application, what more to look for.

I have the thread where I was advised to change to MySQL and you can see what problem we were talking about at: https://www.daniweb.com/programming/software-development/threads/504300/prevent-socket-clients-from-freezing-gui

MySQL server is the database part that stores the information and lets you retrieve it. The MySQL client library is the interface between your program and the server, making it easy for you to communicate with the MySQL server.

WAMP/LAMP installations come with both, a MySQL server version and the client library needed to communicate with it. What is different is that you need the .NET client library to be used with your VB.NET application, the (W/L)AMP have different ones to be used with PHP, Python, etc.

.NET client library you are referring to MySQL .Net connector?

Ok thanks. I've downloaded and installed MySQL server v5 32bit, its only has 2 command line apps, one named Shell and another is client. Is this the right tool and how can I create, locate database or there's another tool I need to download despite the .Net connector?

This is because when I try to run any or the command line that was installed, they just flush and closes.

You can use the mysql.exe command line tool, download mysql workbench or any third party tool to administer your database. Personally I'm a fan of Navicat, but it isn't free. IIRC Toad is a respected free tool.

Ok thank. So I guess I will need both of my apps which is client and server. The server app should/can be installed on the same machine with the MySQL server, and it will directly communicate with MySQL server for database access, accessing it with local domain/ip. Am I right?

I've saw that mysql.exe command line tool under bin folder. I opened it and typed help and it showed many options. What must I do first, followed by what with this?

Because when I tried to create a user it said something with privileges, when I tried creating a database it produced another error with ''@'localhost' which I think means there's no user to create database under.

Also when I installed mysql server it was installed inside the Canon Programs File folder. Canon is my Printer and I don't know why it didn't create its own folder as it uses the Canon folder.

This question has already been answered. Start a new discussion instead.