Today, Vikram shows us the basics of a database and are introduced to concepts like Database Management Systems and Relational Database Management Systems. We are also given a thorough overview of MySQL and its features. This excerpt comes from chapter one of MySQL: The Complete Reference, by Vikram Vaswani (McGraw-Hill/Osborne, ISBN 0-07-222477-0, 2004).
As a program that is used by millions in countries across the globe, it would be unusual indeed if MySQL did not include support for various languages and character sets. MySQL 4.0 supports a number of important character sets (including Latin, Chinese, and European character sets), with full Unicode support available from version 4.1.
Wide Application Support
MySQL exposes application programming interfaces (APIs) to many programming languages, thereby making it possible to write database-driven applications in the language of your choice. Currently, MySQL provides hooks to C, C++, ODBC (Open Database Connectivity), Java, PHP, Perl, Python, and Tcl (Tool Command Language). (Chapters 18 through 21 of this book discuss how to use this API to develop applications in C, Perl. and PHP.)
Enthusiastic Developer Community
As with most open-source projects, MySQL is supported by an active developer community, which is at least partly responsible for the software’s current popularity. High-volume, well-informed mailing lists and user groups assist in the rapid resolution of questions and problems, and a global network of committed MySQL users and developers provides knowledgeable advice, bug fixes, and third-party utilities.
Open Source Code
MySQL AB, the developer of MySQL, is a firm believer in the open-source movement, and MySQL software is freely available under the GPL (with some caveats—see the sidebar entitled “What Goes Around, Comes Around” for more information). Users are free to download and modify the source code of the application to meet their needs, and they can use it to power their applications free of cost. This open licensing policy has fuelled MySQL’s popularity, creating an active and enthusiastic global community of MySQL developers and users. This community plays an active role in keeping MySQL ahead of its competition, both by crash-testing the software for reliability on millions of installations worldwide and by extending the engine to stay abreast of the latest technologies and newest developments.
What Goes Around, Comes Around
It should be noted that the MySQL server and associated drivers are licensed under the GPL and, therefore, you are free to use and redistribute them in your own software applications, provided that your applications are also licensed under the GPL (or any other compatible open-source license approved by MySQL AB). In this case, the MySQL software is offered to you free of charge.
However, if your MySQL-powered application is not licensed under the GPL or an equivalent licensing scheme, and you do intend to redistribute it (whether internally or externally), you are required to purchase a commercial license for the same from MySQL AB.
MySQL AB earns revenue both from the sale of these licenses and by providing support, training, and consultation services for the MySQL database server.
Remember: this is chapter one of MySQL: The Complete Reference, by Vikram Vaswani (McGraw-Hill/Osborne, ISBN 0-07-222477-0, 2004). Vikram is the founder of Melonfire, and has had numerous articles featured on Dev Shed. Buy this book now.