In the web hosting world there's rarely a "Holy Grail" in software. With all the choices available these days the software starts to blend together and it gets hard to discern which software is really better than the rest.
Similarly, web hosting customers often have a hard time differentiating between hosts because of the multitude of choices out there. Eventually, a customer's final decision boils down to the number of features offered and the price. Hosts need software that will allow them to offer great features while helping keep pricing down.
One piece of software for managing Microsoft SQL Server databases on the web stands out in both price and features. That software is myLittleTools' myLittleAdmin.
Introduction
When a host decides to offer Microsoft SQL Server databases as a feature, customers need a way to access their databases. Usually it's through one of the following ways:
MS SQL Enterprise Manager - Many hosts choose to have their customers use the free built-in desktop Enterprise Manager, which has become a familiar way to edit SQL Server. But using Enterprise Manager has several pitfalls.
- It creates a potential security risk for web hosts; port 1433 has to be open in order for customers to manage their database.
- It has to be installed on the user's machine, if the user can even acquire the software itself (which is included with the MS SQL installation CD or full download, but is not available separately).
- It also allows its users to see not only their database, but all databases on the SQL server. While users don't have access to databases other than their own, they already know one piece of the puzzle to getting some else's data... the database name.
Web-Based Tools - Web-based tools, on the other hand, offer more flexibility and control over what the user can and can't see. There are a number of free web-based tools out there such as ASPEnterpriseManager and Microsoft's Web Data Admin, but free tools often lead to poor support, few updates, and are usually incomplete tools as in the case of both ASPEnterpriseManager and Web Data Admin. You also run the risk of potential security compromises if the software isn't being constantly revised and updated by the community.
Payware web-based tools are often very expensive and finding a payware solution that is complete, usable, and affordable is quite a challenge. That is, until you look at myLittleTools' myLittleAdmin (visit them on the web at http://www.mylittletools.net/).
myLittleTools' myLittleAdmin
One feature that's sure to keep hosted customers using MS SQL happy, and the hosts who have to shell out the bucks for a good tool, is myLittleTools' myLittleAdmin, a web-based Microsoft SQL Server database management tool that brings the familiar Microsoft Enterprise Manager look and feel to your web browser (see Figure 1).
Figure 1. myLittleTools' myLittleAdmin Interface
There are two versions of myLittleAdmin. A less expensive web hosting
version, which allows you to use myLittleAdmin to access only one database
server and has a limited feature set that web hosts need, and an Enterprise
version, which has all the bells and whistles and allows connection to multiple
database servers through the one installation.
In this white paper, we'll be briefly discussing the installation and feature
set of the Enterprise version since this will give you a good idea of the
complete capabilities of this product. This product is so complex we could
easily cover 100 pages on it, but for the sake of time, we'll try to highlight
the product's strong points. We'll also show you why it's a much better choice
than the free Microsoft Web Data Admin.
Installation
Installation is a breeze. The software comes ready to be unzipped into your
web server web root and since it is Active Server Pages (ASP) based, it will
easily run on Microsoft platforms running Internet Information Server (IIS) with
ASP enabled. Web Data Admin, on the other hand, is confusing to configure
because it doesn't give you the option to put the app where you want it. It just
installs through an MSI package, and you're left trying to figure out how to
access it. I literally spent 20 minutes just trying to figure out how to move
the installation to another site.
Once extracted into the web folder of your choice, the only thing I needed to
do with myLittleAdmin was ensure the directory I extracted myLittleAdmin into
was configured as an application (see Figure 2).
Figure 2. Creating an Application in IIS
Then, off to tweaking the config file. The config file, contained in the
scripts/inc directory, contains all the settings for enabling/disabling the
features of myLittleAdmin. You have a ton of flexibility here as well as the
ability to offer varying levels of administrative privileges to allow, say, the
system administrator to have full control over just about all the system
features of MS SQL while giving the casual web user access to only their
database and a limited subset of features.
Features you have control of include turning on and off features for editing
databases, tables, views, stored procedures, users, roles, rules, logins,
different tools (such as query analyzer, backup wizard, csv import, etc), backup
devices, custom skins, and more.
Turning on or off privileges is as simple as putting a 1, 2, or 3 next to the
appropriate feature, where 1, 2 and 3 are the privilege levels used to access
myLittleAdmin.
Once you've modified the config file to your liking, that's it! All you need
to do now is browse to the myLittleAdmin path with your web browser and you're
ready to log in.
Using myLittleAdmin
Once you go to the myLittleAdmin main page in your web browser, you'll be
presented with a couple of different ways to log into the MS SQL server,
DSN-less or DSN (Figure 3). DSN-less gives you the most control over how you log
into your database. DSN allows you to log in with only the DSN name and a
username/password. In either case, you can also log in with a User Level
password that grants you extra privileges depending on how you set your config
file.
Figure
3. Logging into myLittleAdmin using the DNS-less Connection
Once you've logged in, the interface feels much like Microsoft's Enterprise
Manager, so if you've been using Enterprise Manager, you're already right at
home. You'll see a folder for databases, management, security, and tools (Figure
4).
Figure 4. The Main Menu
You'll notice if you click on any particular database, you'll get detailed
statistics on the database itself, including file MDF and log file sizes, backup
dates, total disk size, and so forth. This is great information for hosted
customers to have because it gives them basic information that might not be
available in the control panel you use for hosting. You'll also notice the many
things you can work with including tables, views, stored procedures, etc.
Databases
You can easily create a new database by clicking the Databases folder itself.
From this menu, you have several options. These include creating a new database,
renaming a database, viewing database info/space usage, generating SQL script
that you can use to recreate the database, backing up a database, detaching a
database, and deleting a database (Figure 5). This view can be turned on or off
for web hosted customers, say for example, if the database was created through a
control panel and you didn't want your customers to manage the creation/deletion
of databases unless it was through your control panel.
Figure 5. The databases menu
Tables
Clicking on the table menu brings up a list of tables in that database
(Figure 6). You have many options from here including creating a new table (the
yellow star at the top right), adding content to the table, searching for data
within the table, renaming the table, managing the table structure (to include
relationships, triggers, constraints, and indexes), creating the SQL code to
create the table, and deleting the table.
Figure 6. The table list
Viewing table content is simple. Click the content icon and you can instantly
see your data (Figure 7). From here you can add data, search for data, create
XML, CSV, and edit the table structure. And once you create an index on a table
with a primary key, you can then easily edit the data in the table as well
(Figure 8).
Figure 7. Table Content
Figure 8. Edit Table Data
Figure 9 shows how detailed you can get with your table structure. You can
edit table structure quickly and easily, including defining indexes,
relationships, triggers, and constraints. All very powerful features of MS SQL
2000 and also one of the places where free tools like Microsoft's Web Data Admin
fall short. They don't have this kind of flexibility or control to handle all
the intricacies involved in complex database work.
Figure 9. Managing Table Structure
Stored Procedures
Stored procedures are a powerful feature of MS SQL. Like just about
everything else in myLittleAdmin, stored procedures are a breeze to set up and
manage. You can easily edit, view, export as SQL, and delete stored procedures
through the stored procedure menu (Figure 10).
Figure 10. The Stored Procedure menu
Creating stored procedures are about as straightforward as it gets (Figure
11).
Figure 11. Creating a new Stored
Procedure
Managing DB Users
Managing users and their DB permissions can easily be done, just as it can in
Microsoft Enterprise Manager, but editing the particular user through the users
menu for the database (Figures 12 and 13). Managing Roles is just as simple
through a similar menu. Again, these features can be turned on or off depending
on your need. And just like Microsoft Enterprise Manager, you can also manage
system level users in the same way, separately from the database users.
Figure 12. Managing DB users
Figure
13. Managing Permissions
Query Analyzer
Arguably, Query Analyzer is one of the most powerful features of SQL Server,
and I'm glad to see it as part of myLittleAdmin (Figure 14). From here, all
sorts of queries can be run, just like in Microsoft's Enterprise Manager.
Figure 14. Query Analyzer
Management, Security, and Tools
Like Microsoft's Enterprise Manager, myLittleTools can help administrators by
giving insight to the system-level operation of their servers. myLittleAdmin
allows administrators to create, edit, and delete system users, create backup
devices and backup databases, attach databases, watch processes, and see the
locks on databases. Unfortunately, unlike Enterprise Manager, you cannot kill
processes through myLittleAdmin.
Some of the noteworthy features here include a nifty Generate Insert Scripts
features which allows you to easy create SQL code that takes the data in your
tables and creates an Insert script that you can then use to rebuild the table
and data, should you need it later.
You can also import data from an external database into your SQL database
using a CSV file of data exported from your external database. No doubt this
will come in handy for tons of folks who are trying to move their database from
one host to another.
Administrators can easily backup databases to devices they've set up in
myLittleAdmin and Restore them as necessary as well. I would have liked to have
seen the ability to restore a database from a local disk since I often have
customers asking me to restore their database for them and have to copy the DB
to the server before I can restore it.
Keep in mind, there are some features missing. Data Transformation Services
is not included. And administrative tasks are still missing like creating
Database Maintenance plans and viewing SQL Server logs.
Other things to consider
myLittleAdmin is skinnable. That means you can give it your own look and feel
to match your own web site. The code is open and written in ASP, so someone with
some good knowledge of ASP can make this tool look even better. You can
customize the icons, change the text, and so on.
myLittleTools' support is excellent! Prompt, courteous, and helpful. While
I've rarely had an occasion to ask for support, it's good knowing it's there
when I need it. They're also willing to listen to their customers for ideas and
feedback on their products.
Comparisons
It's difficult to compare myLittleAdmin to other web-based SQL management
tools. There just aren't any others out there I've reviewed that seem to come
close. As mentioned earlier, the free tool from Microsoft called Web Data Admin
is way behind myLittleAdmin. It was rather tedious to install and very limited
as far as features go. myLittleAdmin is definitely the choice if you're looking
for an editor that can do just about everything MS Enterprise Manager can.
Conclusion
A host is only as good as the features it offers. The power, flexibility, and
affordability of myLittleTools' myLittleAdmin for MS SQL Server makes this
product a must-have if you're going to be offering MS SQL Server hosting and
want to keep your customers happy. This product comes highly
recommended!