MySQL User Guide
Contents |
[edit] Table of Contents
MySQL User Guide Part I Getting Started
MySQL User Guide Part II Using MySQL
MySQL User Guide Part III Advanced MySQL Usage
MySQL User Guide Part IV Advanced MySQL Administration
MySQL User Guide Part V Using the MySQL APIs
MySQL User Guide Part VI Tutorials
MySQL User Guide Part VII Appendixes
[edit] This is Not the MySQL Reference Manual
On the MySQL documentation web page (https://dev.mysql.com/doc/) you'll find the various versions of the MySQL Reference manual. At the time of writing there are four different versions, each one running to about 2,000 pages in PDF format. These manuals are meant to be the definitive reference books for each specific server version; they should provide the answer to any question you have about any version of MySQL.
The manuals are an excellent resource but they can be very intimidating for users who are new to MySQL, especially for those who have no previous experience with a Relational Database Management System (RDMS). Even for users familiar with other RDMSs, the wealth of information contained in the manuals makes it easy to lose sight of the forest for the trees. For this reason the focus of the MySQL User Guide is strictly circumscribed; as far as possible, this book aims to be OS-neutral and MySQL version-specific.
This book deals with MySQL version 5.0 [5.1 if it is GA] only. Concentrating on one server version makes for greater simplicity and using version 5.0 means we can take advantage of the improved feature set of the newest production version.
MySQL's popularity is partly due to the fact that it is supported on numerous operating systems (OSs). However, this also adds a level of complexity to the manual -- exactly the kind of thing we aim to reduce. For this reason, as far as is possible, this book ignores any OS-specific features of MySQL. For instance, mysqlhotcopy is a very useful utility but it is not supported under Windows or Mac OS X so will not be discussed here. Concentrating on features common to all OSs removes one of the distractions inherent in reading the MySQL manual.
In no way is this book meant to be a definitive treatment of MySQL but therein lies its strength. It should speed up the process of getting you up and running with MySQL. For those questions it doesn't answer, see the manual.
MySQL is a flexible RDMS useful in many circumstances. At one end of the spectrum it is suitable for enterprise applications and at the other it can also be used for simple desktop applications. Regardless of how you plan to use MySQL, the MySQL User Guide should prove to be a good introduction to MySQL.
[edit] Target Audience
When describing the nature of the MySQL User Guide in This is Not the MySQL Reference Manual we hinted at the kinds of readers that this book should appeal to; users new to databases in general and users new to MySQL in particular.
It is also probably a fair assumption that many of our readers, regardless of the OS they are using, will be more familiar working within a GUI environment than from the command line. There's no getting around the fact that being capable from the command line is an advantage when using MySQL. The primary tool for interacting with a MySQL server, mysql, is command-line based.
Mastering MySQL from the command line will allow you to operate in environments where there is no GUI, the majority of web servers for example. Besides, some command-line tools are unquestionably superior. There's no quicker way of creating a database than issuing the command, mysqladmin create db_name.
However, whenever possible we'll make use of MySQL Administrator and MySQL Query Browser, open source MySQL GUI Tools. Creating database objects is made especially easy using the Table Editor, a feature of the Query Browser also common to other GUI Tools. By pointing and clicking you can quickly build a table without knowing anything about data definition language (DDL). Not only will the table editor help you work more quickly, but it's a good way to learn MySQL's implementation of SQL. Any alterations made to a table using the graphical interface are shown as SQL statements, making it easy to learn the appropriate SQL command.
[edit] We Want Your Help
The idea for a MySQL User Guide came about as a response to the expressed needs of MySQL users and especially community comments about the manuals. This is your chance to help create an important piece of MySQL documentation -- The MySQL User Guide.
[edit] Contribution Checklist
If you do plan to contribute to the MySQL User Guide, pay special attention to the following sections:
Familiarity with these sections is essential to determining an appropriate topic at an appropriate level of complexity.
The MySQL User Guide is licensed under the GNU Free Documentation License (GFDL). For a copy of this license see GNU Free Documentation License.
[edit] Content of Contributions
The table of contents (TOC) can serve as a guide to the topics we would like to see covered in the MySQL User Guide. Parts I through III deal with introductory topics and later sections deal with more advanced topics. Some sections will be shorter or longer depending upon the nature of the topic.
We've tried to structure the MySQL User Guide in a format that will encourage a variety of submissions of different lengths at differing levels of difficulty. Some sections have already been completed by MySQL staff and can serve as examples of the kinds of submissions we are seeking. For example, Using mysqldump could serve as a template for a section on mysqlimport and Migrating a Spreadsheet to MySQL could serve as a guide to Migrating an Access Database to MySQL.
Depending upon your time and expertise you may wish to submit a short, narrowly focused section on a specific introductory topic or a complete chapter on something more advanced.
The TOC is meant as a guideline for possible submissions but you needn't feel constrained by the chapters or sections listed there. If you feel that a topic warrants inclusion but is not included in the TOC, please let us know.