Core MySQL

Leon Atkinson

  • 出版商: Prentice Hall PTR
  • 出版日期: 2001-12-15
  • 定價: USD $44.99
  • 售價: $399
  • 語言: 英文
  • 頁數: 752
  • 裝訂: Paperback
  • ISBN: 0130661902
  • ISBN-13: 9780130661906

立即出貨 (庫存=1)

買這商品的人也買了...

產品描述

The comprehensive, code-rich MySQL guide for expert developers.

  • Contains in-depth explanations and example code for designing and building enterprise-level systems
  • Includes advanced coverage of security, data storage, optimization, distributed databases, and other complex topics
  • Presented by leading open-source expert Leon Atkinson—author of the best-selling Core PHP Programming

Experienced developers worldwide are choosing MySQL as a low-cost, open-source foundation for their key Web applications. Now, here's a book that gives them all the code and insight they need to build enterprise-class MySQL applications—fast.

Core MySQL starts by introducing the fundamentals of MySQL: SQL queries, database design, normalization, transactions, and concurrency. It then systematically reviews each of MySQL's most important features, and presents efficient techniques for interacting with MySQL databases directly from C, Java, PHP, Perl, Python, and other programming environments. Coverage includes:

  • Installing and interacting with MySQL—including a detailed introduction to MySQL's SQL implementation
  • Data types, variables, column types, built-in functions, and command-line utilities
  • Comprehensive coverage of using MySQL's C API
  • MySQL administration, backup, and disaster recovery
  • Application optimization and security
  • Distributed database development
  • Extending MySQL with added functionality
  • Building databases that can be transitioned to other database platforms

Thoroughly reviewed by MySQL lead developer Michael Widenius, Core MySQL gives professionals exactly what they've been searching for: an authoritative, thorough, example-rich guide to enterprise-class MySQL application development.

Table of Contents

Acknowledgments.
Introduction.

I. MYSQL AND THE RELATIONAL MODEL.

1. Introduction to MySQL.

How People Use Databases. Why Databases Are Better than Files. Databases Are Not a Cure-All. Why MySQL? MySQL History.


2. Installing MySQ.

Downloading Installation Files. By Linux RPM. Windows. Compiling from Source. Granting Privileges.


3. Interacting with MySQL.

Client/Server over TCP/IP. Command-Line Utilities. Graphical Clients. ODBC. Web Interfaces.


4. Database Concepts.

History. Terminology. Database Management Systems. Flat File Databases. Hierarchical Databases. Relational Databases. Object Databases. Object-Relational Databases.


5. The Relational Model.

Relational Algebra. Tables, Rows, and Columns. Keys. Relationships. Relational Operations. Is MySQL a Real RDBMS?


6. Structured Query Language.

SQL Is a 4GL. Data Definition. Inserting Rows. Updating Rows. Deleting Rows. Queries. Joins. Ordering. Grouping. Limiting. Altering a Table.


7. Database Design.

Requirements Specifications. Design Specification. Diagramming. Modeling Languages. ER Diagrams. Creating a Diagram. Implementing the Design. Testing. Lifecycle Planning.


8. Normalization.

Why Normalize? First Normal Form. Second Normal Form. Third Normal Form. Boyce-Codd Normal Form. Fourth Normal Form. Denormalization.


9. Transactions and Concurrency.

Transactions. Locking. Sequences.

II. MYSQL REFERENCE.


10. DATA TYPES, VARIABLES, AND EXPRESSIONS.

Data Types. Variables. Operators. Expressions. Names with Spaces.


11. Column and Index Types.

Numeric. Strings. Time Values. Column Type Aliases. Indexes.


12. Built-in Functions.

Debugging and Configuration. Flow Control. Grouping. Mathematical. Strings. Time. Miscellaneous. Procedures.


13. SQL Statements.

Comments. Alter Table. Analyze Table. Backup Table. Begin WORK. Change Master. Check Table. Commit. Create Database. Create Function. Create Index. Create Table. Delete. Describe. Drop Database. Drop Function. Drop Index. Drop Table. Explain. Flush. Grant. Insert. Kill. Lock Tables. Load Data Infile. Load Table. Optimize Table. Purge Master Logs. Rename Table. Repair Table. Replace. Reset Master. Reset Slave. Restore Table. Revoke. Rollback. Select. Set. Set Transaction. Show Columns. Show Create Table. Show Databases. Show Grants. Show Index. Show Logs. Show Processlist. Show Status. Show Table Status. Show Tables. Show Variables. Slave. Truncate. Unlock Tables. Update. Use.


14. Command-Line Utilities.

Environment Variables. Option Files. comp_err. isamchk. make_binary_distribution. msql2mysql. my_print_defaults. myisamchk. myisamlog. myisampack. mysql. mysql_install_db. mysqlaccess. mysqladmin. mysqlbinlog. mysqlbug. mysqlc. mysqld. mysqld-max. mysqld-nt. mysqld-opt. mysqld_multi. mysqldump. mysqldumpslow. mysqlhotcopy. mysqlimport. mysqlshow. pack_isam. perror. replace. safe_mysqld.


15. C API.

Types. Client Functions. Array Functions. Character Set Functions. File Functions. Error Functions. Hash Functions. List Functions. Memory Management Functions. Options Functions. Password Functions. String Functions. Thread Functions.

III. WRITING MYSQL CLIENTS.


16. programming the C API.

Preparing a Program. Getting Data. Manipulating Data.


17. JDBC.

Preparing a Program. Getting Data. Manipulating Data.


18. VBScript and ODBC.

Preparing a Program. Getting Data. Manipulating Data.


19. PHP.

Preparing a Program. Getting Data. Manipulating Data.


20. Perl.

Preparing a Program. Getting Data. Manipulating Data.


21. Python.

Preparing a Program. Getting Data. Manipulating Data.


22. MySQL++ API.

Preparing a Program. Getting Data. Manipulating Data.

IV. ADVANCED TOPICS.


23. Database Administration.

Responsibilities. Making Data Available. Maintaining Database Integrity. Preparing for Disaster. Supporting Users. Writing and Enforcing Standards.


24. Physical Storage.

Database/Table Model. Dedicated Partitions. Table Types. Columns. Table Locks. Indexes. File Descriptors. System Memory. Log Files.


25. Coping with Disaster.

Checking and Repairing Tables. Backups and Recovery.


26. Optimization.

Before Optimizing. Benchmarking. Design Optimization. Optimizations within Applications. Optimizing Queries. Optimizing SQL Statements. Maintaining Tables. Tuning Server Configuration. Recompiling MySQL.


27. Security.

Permissions Scheme. Setting Permissions. Ensuring Security.


28. Transitioning.

Switching Database Servers. Translating Unsupported Features to MySQL. Using ANSI Mode. Unique MySQL Features.


29. Distributed Databases.

The Distributed Database Concept. Delayed Synchronization. MySQL's Replication Functionality. Running Multiple Servers.


30. Object Mapping.

The Object-Oriented Model. Serializing Objects. Object-Relational Mapping.


31. Adding Functionality.

Debugging Library. Adding Character Sets. Functions. Procedures.

V. APPENDICES.


A. Online Resources.

Official Mailing Lists. Unofficial Mailing Lists. Mailing List Archives. Web Sites.


B. Further Reading.
C. Business and Legal Concerns.

MySQL's License. GNU GENERAL PUBLIC LICENSE. Stability. Support.


D. Reserved Words.
E. MySQL Error Codes.
F. SQL Style Guide.

General. Identifiers. Tables. Statements.


G. Example Database Design.

Diagrams. SQL Schema.