- Shopping Bag ( 0 items )
From Barnes & NobleThe Barnes & Noble Review
While some database projects will always need high-end database engines like Oracle or DB2, you'd be amazed how many will run just fine on open source, low-cost, or no-cost database servers. Check this out: Recently, Yahoo! moved its Yahoo! Finance services onto MySQL: news headlines, stock charts, insider trading reports, and more. As reported in InfoWorld, the MySQL server is handling 40 million record tables without a hiccup. One server handled over a quarter of a billion queries in just a month and a half. Not too shabby.
If you're a developer or database professional, you've noticed that money's tighter these days (is that an understatement, or what?) If you've never been asked to build solutions on open source database platforms, chances are you will be -- soon. If you're an independent consultant, maybe you ought to be recommending MySQL: no excessive database licensing fees is a definite competitive advantage. In either case, now's the time to master MySQL -- and Leon Atkinson's Core MySQL is the book to start with.
Atkinson, the widely praised author of Core PHP, is also the creator of the open source FreeTrade e-commerce toolkit, which is built with MySQL and PHP. He knows MySQL backwards and forwards, and the book also benefits from a thorough tech review by Michael Widenius, the lead developer of MySQL.
Atkinson begins by reviewing the basics of databases and SQL, then walks through installing MySQL on both Linux and Windows systems, granting yourself privileges, and interacting with MySQL. (If it's the command line that's been scaring you off, there are two GUI-based clients: MySQL GUI, written by a member of the MySQL development team, and MySQL Maker, a shareware tool for navigating through your databases and tables.)
After you walk through the basics of MySQL's SQL dialect for querying, inserts, updates, and table creation, Atkinson focuses on database design: requirements specification, design specification, entity-relationship diagramming, modeling, implementation, and testing. This is about as helpful an overview of the topic as we've seen. What's more, it's supplemented by an appendix that presents the schema for Atkinson's own FreeTrade e-commerce application -- a great source of ideas for your own designs, and a great model for documenting them.
There's a full chapter on normalizing a MySQL database (including examples of when to denormalize for performance reasons). You'll learn about MySQL's support for concurrency, as well as its recently added (and long-awaited) support for transactions.
Part 2 of Core MySQL presents a comprehensive MySQL reference. You'll find systematic coverage of data types, variables, expressions, column and index types, built-in functions, and SQL statements -- including MySQL's extended (nonstandard) SQL statements. There's a full chapter on MySQL's command-line utilities and their option files, including coverage of mysqladmin for administration, mysqldump for extracting data from a database, mysqlhotcopy for making a safe copy of an active database.
You have multiple options for writing applications that interface with MySQL servers. There's MySQL's C API, which lets you manipulate the server directly -- as well as the newer MySQL++ library for C++. There's JDBC, which lets you write Java code that communicates with your database. There's the combination of Microsoft's VBScript and ODBC. There's Atkinson's first love, PHP. There's Perl's DBI library and Python's MySQLdb module. Choose your poison: Atkinson covers each of these alternatives in its own chapter.
If you're a DBA, you'll appreciate the book's chapters on database administration, and on disaster avoidance and recovery. If you're an enterprise developer, you'll appreciate Atkinson's attention to optimization via efficient database and query design. If you're planning to build one of those Yahoo!-size distributed applications, you'll welcome his step-by-step introduction to synchronization and replication. (And if you're not sure you'll be staying with MySQL forever, you'll be grateful for Atkinson's coverage of how to build databases that are easy to transition away from MySQL if the need ever arises.)
Core MySQL will empower you to make the most of MySQL -- whether you want MySQL to be your next database, your first database, or your only database. (Bill Camarda)
Bill Camarda is a consultant, writer, and web/multimedia content developer with nearly 20 years' experience in helping technology companies deploy and market advanced software, computing, and networking products and services. He served for nearly ten years as vice president of a New Jerseybased marketing company, where he supervised a wide range of graphics and web design projects. His 15 books include Special Edition Using Word 2000 and Upgrading & Fixing Networks For Dummies®, Second Edition.