A reality of the modern world is that people need to have the ability to access their data at a moment’s notice. Gone are the days that a Database Administrator (DBA) spent his or her time between a desktop workstation and database server(s). Today, the typical DBA is responsible for one or more production databases located within an organization’s network or on a third-party site known as “the Cloud”. Moreover, 24x7 support often comes with the territory. For that, DBAs require tools that will allow them to perform administrative tasks wherever they may be. Many early Cloud Database-as-a-Service (DBaaS) providers offered a Web interface for this purpose. Lately, the trend has been towards applications specifically targeted to mobile devices, since that is what people always have with them. Another advantage is that OS-based applications can provide a richer user experience than Web-based ones.
Navicat, the company best known for their Navicat Premium multi-database management application, has now introduced its own Cloud-based service along with a dedicated application for iOS devices. In this review, I’ll be taking a look at both these offerings: first, Navicat Cloud, then the Cloud via the Navicat iOS app.
Navicat Cloud Review
What is Navicat Cloud?
Although the Cloud is nothing new, Navicat Cloud was specifically designed for storing your connection settings, queries, models, and virtual group information. Storing them in one place allows you to synchronize across multiple devices, which I think is a great idea since most people own more than one mobile device. Any changes in the Cloud are instantly reflected in your administration tool so you always have real-time access.
Keeping Your Data Safe
Cloud Storage has come under fire recently after numerous high profile security breaches. Understandably, this has made company owners squeamish about leaving their data in someone else’s hands. That’s what makes Navicat Cloud a sensible alternative. Since it only stores your connection settings, queries, model files, and virtual groups, your database passwords and data are never stored on Navicat Cloud, so it remains under your own control at all times.
Accessing Navicat Cloud
There are two ways to connect to the Navicat Cloud service, depending on the type of device you are using. For desktop computers, Navicat Cloud has been integrated into all existing database administration products, including Navicat for MySQL, PostgreSQL, Oracle, and Navicat Premium. They support the synching of connection settings, queries, models, and virtual groups on Windows, Mac OS, and Linux operating systems. Mobile devices running iOS now have a new application called Navicat iOS. It offers query and connection synching with support for models and virtual groups coming in a future version.
Connecting to Navicat Cloud from the Navicat Desktop
Navicat Cloud was integrated into Navicat Premium version 11.1. At the time of this writing the current version is 11.1.5. Its access point is located under File > Navicat Cloud… on the main menu:
Navicat Cloud Menu
Before you can use the service, you need to create your Navicat ID and password using the Create Navicat ID link on the Sign In screen. The ID does double duty as both your registered email and ID.
Once submitted, a confirmation email is sent to the email address that you provided. Click the Activate Now link in the email, and you’re ready to login to Navicat Cloud immediately, via the Sign In screen.
Navicat Cloud Sign In Screen
Moving Connection Settings to Navicat Cloud
I chose to migrate my connection settings to the Cloud first because you can’t do much of anything until you’ve established a connection to the database server. All that was required to store a connection on Navicat Cloud was to right-click a connection under My Connections and choose Move to Navicat Cloud from the popup menu.
Not only will that move the connection to Navicat Cloud, but all queries and virtual groups under the selected connection will be synced to the cloud as well.
Move Connection to Navicat Cloud
Sharing Virtual Groups
Virtual Group aims to provide a platform for logical grouping objects by categories, so that all objects are effectively preserved. Virtual Grouping can be applied on Connection, Table, View, Function, Query, Report, Backup, Schedule and Model.
To create a new group, right-click in the connection tree/object list and select New Group or Manage Group -> New Group from the popup menu.
Groups can be created on the Navicat Cloud in much the same way. Right-clicking on Navicat Cloud brings up a popup menu with a New Group command.
Navicat Cloud New Group
Viewing Your Usage
Navicat Cloud comes with a 150 units of free storage whereby each connection, query, model, and virtual group counts as one unit. Once you reach the storage limit, Navicat Cloud stops syncing and displays a warning message. You won’t lose any files or information and your files will be synced again automatically when storage space once again becomes available either by cleaning up stored objects or by purchasing additional storage units. Additional units should be for sale shortly.
You can check how much limit you have left on your Navicat Cloud account from the account profile on Navicat.
On the desktop version:
- Sign in to your Navicat Cloud account.
- Click on your name from the top right corner to open your account profile window.
- Click on View Details.
For the iOS version:
- Sign in to your Navicat Cloud account.
- Click on your avatar from the top left corner to open your account profile window.
- Click on USAGE.
Login Screen with Usage
Navicat iOS Review
Navicat iOS is the indispensable companion to Navicat Cloud because, while you can make use of the latter to share database components between home and office, it’s the iOS mobile app that gives you the freedom to access your MySQL databases from anywhere that you can receive an Internet connection. These days, that’s just about anywhere. To put it to the test, I downloaded Navicat iOS onto a 2nd generation iPad from a mall food court!
It may be purchased from the iTunes app store for $9.99. Upon logging into iTunes, I was delighted that it remembered that I had purchased it earlier, so I was able to download it again. That means that you don’t have to purchase the software each time that you want to add it to another device.
Right now, Navicat iOS only supports MySQL, but support for other databases is forthcoming.
It works on any iOS devices that run on iOS 6 or above.
Connecting to Navicat Cloud
When you first open the app, the left-hand pane shows that there are no connections. Therefore, we have to click on My Connections to create one.
Once you've entered the connection information, you can test it by pressing the Test Connection label. Hitting Done closes the dialog and displays your new connection under My Connections and optionally under Navicat Cloud if the connection already exists there. Tapping on the connection name under Navicat Cloud changes the color from black to green and indicates that the connection is now active. Tapping it again now displays links to users and databases.
Connections and Tables
Working with Table Data
Tapping on a database name opens a new menu consisting of Tables, Views, Functions, Events, and Queries - in other words, just all of the components of a MySQL database. The arrow beside each component shows that there is something to be opened by tapping on each menu item. In the case of tables, it lists them in the left panel. Finally, tapping on a table opens it in the main editor pane.
One cool feature is that you can edit data directly in the table without having to write a query. For large tables, you can whittle down the size using a filter. There's an ellipsis in the top right corner of the screen that when tapped, opens a submenu with some additional operations. One of these is a Filter command that lets you cut down on the number of rows displayed. It uses SQL WHERE conditions that are built using a GUI tool.
Queries also come with a GUI Builder. At first it shows the SELECT, FROM, WHERE, and ORDER BY clauses, but only the FROM line is editable, as conveyed by its blue font. Once you select at least one table or view, the other clauses also turn blue to indicate that they are now editable. In no time, I had a fairly impressive query to run. For you SQL experts, you are free to write your queries right in the editor. It features full syntax highlighting, which can be turned off in the Preferences if you like.
After each run, you can look at messages, as well as stats on the execution; these are actually broken down into two parts: Stats and Status. I was reflecting on how the iOS stats and status were reminiscent of the SQL Explain command when I discovered that the Query editor actually does have the Explain command!
Managing Table Schemas
So far we've looked at features for working with data. Now let’s turn our attention to those that aid in defining table structures.
I quickly learned that the way to access a table's structural elements is by swiping the name. That brings out a menu on the left. I tried out the Edit command to see what it could do. The first screen that came up is a list of fields and their properties. From there you can also add new fields, set indexes, foreign keys, as well as delete fields.
Table Schema Commands
At the bottom of that screen, there are five command icons: Fields, Indexes Foreign Keys, Triggers, and Options. I tried Fields to see what I could configure there.
Each field links to a property editor containing a number of attributes including the field name, data type, length, etc…
After playing around in Navicat iOS for a few days, I found it highly intuitive and well organized. For instance, I liked how certain editors would appear in a tabbed view, similar to a browser’s. That made it quite easy to navigate between screens without having to close each one before moving on to another.
I could definitely envision Navicat iOS playing a key role in my database administration toolset.
Viewing Cloud Objects in Navicat Premium
When I went back to using Navicat Premium, my new connection appeared in the list. Moreover, any queries, views, triggers, events and other components that I had created in Navicat iOS were synchronized with the desktop app.
Closing Navicat Cloud Connections
Closing a Navicat Cloud connection is accomplished the same as local ones; simply select it and choose Close Connection under File in the main menu or right-click the connection and select Close Connection from the popup menu.
Right-clicking the Navicat Cloud item will give you the option to “Close All Connections” at once.
Although distinct applications, I now see both Navicat Cloud and Navicat iOS as two sides of the same coin for most DBAs, unless you're one of those rare people who still do all of their work in the office. Right now, Navicat iOS is going for $9.99 on iTunes, which IMHO, is quite reasonable for this type of professional grade software. The Navicat Cloud service is free, but only for a certain number of units. Obviously, the more of an Enterprise operation you are running, the more likely you will eventually have to pony up for additional service units. Visit the Navicat site for more information the Cloud service and iOS app.