MySQL has become the defacto choice for a lot of Internet Service Providers when it comes to supplying their customers with a SQL database. The combination of PHP and MySQL has become quite popular among web developers over the last few years. For many, it?s the SQL of choice.
If you have worked with MySQL, you have probably heard of phpMyAdmin. Being one of the most often downloaded tools from Sourceforge (http://phpmyadmin.sourceforge.org), phpMyAdmin is a script written in PHP (duh!) for database management, such as MySQL users administration and types of database access. Although this is one of my favorite tools when it comes to working with MySQL databases, the fact that it was written in PHP bears certain limitations, especially when it comes to large databases.
Last evening we needed to move the database that the HTMLCenter?s forum uses to another server. Creating the export file was easy. I logged onto the shell of the server and told mysql to give me a mysqldump which came out to be 2.55 MB in size. Now the size causes certain problems. Since PHP is designed to run only a certain amount of time (standard: 30 seconds) and consume only a certain amount of memory (RAM) (standard: 8 MB) (both settings are set in the php.ini file), you either have to split the sql dump into smaller packages and import each one using phpMyAdmin, or you might be lucky and can import it through the shell.
Now the problems that arose with the account on the new server were: 1. no shell access and 2. phpMyAdmin can not input mysqldumps of that size ? because it had been configured to do so (performance and security issues). The ISP told us that we could connect remotely (from home or office) to the mysql server and that we could use a program such as MS Access to do the import. Since I don?t own a copy of Access I went ahead from here with the EMS MySQL Manager.
After I installed the package on my Windows 2000 desktop, I fired it up. Now the first thing that I learned from reading the ?Tip of the Day? was that I had to register a database with the program so I could connect to it. So I clicked File then Register Database and put in all parameters (host, user, password, database and port), tried the test connect and it worked!
The interface of the EMS MySQL Manager looks very similar to Microsoft Office and XP.. The program is very flat-looking and also very slow in my opinion. If you click around too fast, there is a clear delay in everything you do. That might be because my computer is ?just? an Athlon 600 with 256 MB RAM, but that should be sufficient for this program to run. The interface is very easy to get used to and if you are familiar with Microsoft Office and other Microsoft applications, you will feel at home in no time.
Anyway, once I connect to the database through the database explorer with a couple clicks left and right, I was able to browse through tables and check field properties, indexes and contens of the MySQL database online. Very straight forward, very neat looking. Information just where you want it.
Browsing around the program, I noticed that the EMS MySQL Manager comes with a fully functional database manager. So assuming that you have root access on the MySQL server you are connected to, and assuming that you set it up to allow remote connections, you can create and delete databases, create tables, flush the database, grant access to users, basically do just about anything you can do on a MySQL server with one or two clicks.
I was clicking around when I found a ?SQL Script? option. I went into the dialog, chose the file I had saved the database dump from my old MySQL server to and hit the ?Play button?, or ?Run?. And then the odyssey started, executing query one of 30252.
It worked, but it took quite a long time. Obviously, you won?t win a speed contest with the EMS MySQL Manager, it works slowly but surely. Assuming that you have access to the mysql command on the prompt, you would do such an import about 20 times faster, but if you are not familiar with that or ? as in our case ? you do not have access to it; this program is definitely one way to do it. One possible reason for the low speed might be my connection to the MySQL database server.
Overall, I am very pleased with the results that were obtained and the way the program completed the work. The only negative thing I noticed about the program was when temporarily my connection to the database server went down, it kept executing queries and I had to redo thos four or five queries later on. Since the program errored and obviously knew what was going on, a pause would have been more appropriate.
If you are interested in trying out EMS MySQL Manager there is a trial version of the program and I highly recommend that you try it. The download is only around 5 MB and the documentation online promises that you will get a fully functional trial version for 30 days.
There is nothing to lose by giving it a try, only ease in the workflow for you to gain. There are professional, lite and developer bundles available, the first two coming in packages of single (starting at $65) and site licenses (starting at $495). Please see the website for more detailed information about that.
The other option is tough. Installing an Apache webserver and a PHP binary on your desktop is not too hard in order to get phpMyAdmin to do all your work ? and did I mention that it?s free? However if you are not a tech-user, the EMS MySQL Manager is just what you are looking for.
Very easy interface. A complete suite to manage your MySQL database server.
Can get pricy if you need multiple licenses. Kept executing SQL Script when the connection was lost.
If you need a way to manage databases remotely, it won?t let you down!