Introduction to MySQL: A Tutorial
MySQL is a Relational DataBase Management System (RDBMS).
RDBMS means R--DB--MS.
- DB stands for Database, a repository for the information store.
- The data in a database is organized into tables, and each table is organized into rows and columns.
- Each row in a table is called a record. A record may contains several pieces (called fields) of information, and each column in a table is known as a field.
-MS stands for Management System, the software that allows you to insert, retrieve, modify, or delete records.
-R stands for Relational, indicates a particular kind of DBMS that is good at relating information stored in one table to information stored
in another table by looking for elements common to each of them. Relational DBMS has the advantage of efficient storage, and retrieval mechanisms for data,
and uses normalization process during design of RDBMS. Database normalization process is beyond the scope of this article, and several references are available.
MySQL operates using client/server architecture in which the server runs on the machine containing the databases and clients connect to the server over a network.
The server operating systems is usually a Linux (like Redhat 9.0 etc.) or Windows 2000 operating system. Typically mySQL is supported on Windows XP, Windows
Server 2003, Red Hat Fedora Linux, and Debian Linux, and others. As with any other client/server application, MySQL is a multi-user database system, meaning
several users can access the database simultaneously. Here:
-The server (MySQL server) listens for client requests coming in over the network and accesses database contents according to those requests
and provides that to the clients.
- Clients are programs that connect to the database server and issue queries in a pre-specified format. MySQL is compatible with the standards based
SQL (SQL stands for Structured Query Language) language. The client program may contact the server programmatically (meaning a program call the server during
execution) or manually. For example, when you are issuing commands over a telnet session to a MySQL server, you are issuing the requests to the server by typing
commands at your command prompt manually. On the other hand, if you have input some data (say your credit card information on the Internet towards purchase of
some goods) in a form, and the form is processed by using a server side program, then the MySQL server is contacted programmatically. This is often the case in
credit card approvals, member subscriptions etc.
a. Features of MySQL
1. Speed:Ofcourse, the speed at which a server side program runs depends primarily on the server hardware. Given that the server hardware is optimal, MySQL runs
very fast. It supports clustered servers for demanding applications.
2. Ease of use:MySQL is a high-performance, relatively simple database system. From the beginning, MySQL has typically been configured, monitored, and
managed from the command line. However, several MySQL graphical interfaces are available as described below:
- MySQL Administrator: This tool makes it possible for administrators to set up, evaluate, and tune their MySQL database server. This is intended as a
replacement for mysqladmin.
- MySQL Query Browser: Provides database developers and operators with a graphical database operation interface. It is especially useful for seeing multiple
query plans and result sets in a single user interface.
- Configuration Wizard: Administrators can choose from a predefined list of optimal settings, or create their own.
- MySQL System Tray: Provides Windows-based administrators a single view of their MySQL instance, including the ability to start and stop their database servers.
3. Cost:MySQL is available free of cost. MySQL is a "Open Source" database. MySQL is part of LAMP (Linux, Apache, MySQL, PHP / Perl / Python) environemtn, a
fast growing open source enterprise software stack. More and more companies are using LAMP as an alternative to expensive proprietary software stacks because of
its lower cost, reliability, and documentation.
4.Query Language Support:MySQL understands standards based SQL (Structured Query Language).
5.Capability :Many clients can connect to the server at the same time. Clients can use multiple database simultaneously. You can access MySQL using
several interfaces such as command-line clients, Web browsers.
6.Connectivity and security: MySQL is fully networked, and database can be accessed from anywhere on the Internet, so you can share your data with
anyone, anywhere. The connectivity could be achieved with Windows programs by using ODBC drivers. By using the ODBC connector to MySQL, any ODBC-aware client application
(for example, Microsoft Office, report writers, Visual Basic) can connect to MySQL.
7.Portability: MySQL runs on many varieties of UNIX, as well as on other non-UNIX systems, such as Windows and OS/2. MySQL runs on hardware from home
PCs to high-end server. MySQL can be installed on Windows XP, Windows Server 2003, Red Hat Fedora Linux, Debian Linux, and others.
b. MySQL Tools
1. A SQL server: This is an engine which provides access to your databases.
2. Client programs for accessing the server: A program allows you to enter queries directly and view results.
3. A client library for writing your own programs: You can write your own programs into the client library using C.
Recommended Hardware Requirements For Mysql Installation
- Pentium V processor
- 128 MB RAM
Note that MySQL can be installed on a platform with as little as 32 MB. However, for better performance it is recommended to have at least 128MB memory.
You can freely download MySQL from the website https://www.mysql.com
If setting up a MySQL is something you do not want to take on, consider checking out
Web Hosting Choice to find a suitable server
provider. In this case, the hosting provider sets up MySQL server and MySQLAdmin.