Archive

Archive for the ‘MySQL Introduction’ Category

MySQL Primer

September 14, 2009 Leave a comment

logo-mysql

  

  

MySQL Origin:

MySQL was originally developed by Michael Widenius and David Axmark beginning in 1994, founders of a Swedish company MySQL AB. It was first released internally on 23 May 1995. Windows version was released on 8 January 1998 for Windows 95 and NT. Sun Microsystems acquired MySQL AB on 26 February 2008. MySQL AB yet holds the copyright to most of the codebase. In April 2009, Oracle Corporation entered into an agreement to purchase Sun Microsystems, current owners of the MySQL intellectual property. The deal was unanimously approved by Sun’s board of directors, and it is anticipated to close soon, subject to Sun stockholder approval, certain regulatory approvals and customary closing conditions.

MySQL is written in C and C++. MySQL runs on more than 20 different system platforms, including AIX, BSDi, FreeBSD, HP-UX, i5/OS, Linux, Mac OS X, NetBSD, Novell NetWare, OpenBSD, OpenSolaris, eComStation, OS/2 Warp, QNX, IRIX, Solaris, Symbian, SunOS, SCO OpenServer, SCO UnixWare, Sanos, Tru64 and Microsoft Windows; giving you the kind of flexibility that puts you in control. In addition, an ODBC interface called MyODBC allows additional programming languages that support the ODBC interface to communicate with a MySQL database, such as ASP or ColdFusion. The MySQL server and official libraries are mostly implemented in ANSI C/ANSI C++.

To administer MySQL databases one can use the included command-line tool (commands: mysql and mysqladmin). Also downloadable from the MySQL site are GUI administration tools: MySQL Administrator, MySQL Migration Toolkit and MySQL Query Browser. The GUI tools are now included in one package called MySQL GUI Tools. In addition to the these tools developed by MySQL AB, there are several other commercial and non-commercial tools available. Examples include Navicat Free Lite Edition, AnySQL Maestro Freeware Edition or SQLyog Community Edition, they are free desktop based GUI tools, and phpMyAdmin, a free Web-based administration interface implemented in PHP. 

  

MySQL Introduction:

MySQL is a relational database management system (RDBMS) which can be used to store, sort, arrange, and display information. MySQL stands for “My Structured Query Language”. The program runs as a server providing multi-user access to a number of database instances. The project’s source code is available under terms of the GNU General Public License, as well as under a variety of proprietary agreements. MySQL is commonly used by free software projects which require a full-featured database management system, such as WordPress, phpBB etc. It is also used in very high-scale World Wide Web products including Google and Facebook. Several high-traffic web sites (Flickr,Facebook,Wikipedia, Nokia, Auctionmarts and YouTube) use MySQL for data storage and logging of user data.

MySQL is an open-source database system with which we can do the following things:

  • Design the structure of the tables (called schema) and how they relate to one another
  • Add, edit and delete data
  • Sort and manipulate data
  • Query the database (that is, ask questions about the data)
  • Produce listings based on queries

To interact with MySQL, we enter commands on a command line. These commands, such as CREATE, INSERT, UPDATE, etc. are based on a more general language called SQL (Structured Query Language). SQL has a long and colorful history, starting at IBM in the 70’s (based on the research of E.F. Codd who developed the relational data model in 1970), and later through the work of a small company called Relational Software, Inc. In 1979, this group produced the first commercially available relational database system and implemented SQL as its query language. They called the product Oracle.

The MySQL database has become the world’s most popular open source database because of its consistent fast performance, high reliability and ease of use. Not only is MySQL the world’s most popular open source database, it’s also become the database of choice for a new generation of applications built on the LAMP stack (Linux, Apache, MySQL, PHP / Perl / Python.) MySQL represents the most impressive market success, exceeded only perhaps by Apache, in free and open source software. In terms of installed base, MySQL has left the technically impressive rival PostgreSQL behind. It has marginalized mSQL, SQLite, and SAP DB. It has started to challenge the proprietary database companies on their own turf. Nobody can say why licensing costs for proprietary databases have dropped sharply in recent years, but one suspects that it’s due to MySQL’s competition.

  • MySQL AB claims an installed base of five million systems, the largest of any database engine.
  • The mysql.com domain sees almost as much traffic as ibm.com.
  • Six hundred attendees flocked to the recent MySQl conference.
  • MySQL AB has recently been heavily marketing, its own publishing outlet,MySQL Press.

Many of the applications that a Web developer wants to use can be made easier by the use of a standardized database to store, organize, and access information. MySQL can easily be integrated into Perl programs by using the Perl DBI (DataBase Independent interface) module. DBI is an Application Program Interface (API) that allows Perl to connect to and query a number of SQL databases (among them MySQL, mSQL, PostgreSQL, Oracle, Sybase, and Informix).

  

  

Architecture: Read more…