MySQL ADMINISTRATION AND DEVELOPMENT – GTLP7

Course Description

MySQL®is the open source community’s most popular Relational Database Management System (RDBMS) offering, and is a key part of LAMP – Linux™, Apache™, MySQL®, PHP/Perl/Python®. Many Fortune 500 companies adopt MySQL to reap the benefits of an open source, platform-independent RDMS, such as simplifying conversion from other platforms and lowering database Total Cost of Ownership by 90%. This class encourages the student to explore database fundamentals, as well as MySQL features. Students learn the basics of MySQL use and the programming of stored routines and triggers. Students also participate in database design discussions, perform administrative functions, learn about optimization and performance tuning, and explore various APIs.  This course covers MySQL 5.0.

^^

Duration

4 days

^^

Target Audience

This course is designed for application and web developers, or system administrators.

^^

Course Prerequisites

Prior experience installing software and programming in any language, such as HTML, is recommended but not required. HTML skills are taught in the following courses:

^^

Suggested Follow on Courses

Please contact us for further details.

^^

Course Content

1. INTRODUCTION TO DATABASE CONCEPTS AND MYSQL

  1. Features of a Relational Database
  2. Where does SQL Fit in?
  3. Database Access
  4. Why MySQL?
  5. The History of MySQL

2. INSTALLATION, CONFIGURATION AND UPGRADING

  1. MySQL Software
  2. MySQL Software Features
  3. Preparing to Install MySQL
  4. Available Client Software
  5. After the Download
  6. Configuring the Server
  7. Starting the Server
  8. The Initial User Accounts
  9. Verifying Server Operation
  10. Upgrading
  11. Copying a Database between
  12. Architectures
  13. Environment Variables

3. DATABASE DESIGN

  1. Developing the Design of a Database
  2. Database Entities
  3. The Primary Key
  4. Foreign Key Relationships
  5. Data Models and Normalization
  6. Second Normal Form (2NF)
  7. Third Normal Form (3NF) and Beyond
  8. Translating a Data Model into a
  9. Database Design

4. USING THE MYSQL COMMAND-LINE TOOL

  1. Running the mysql Client
  2. Customizing the mysql Prompt
  3. mysql Commands
  4. Using the Help Command
  5. Some Useful mysql Options
  6. Working with a Database
  7. Examining Table Definitions
  8. Other SHOW Options

 5. DDL – DATA DEFINITION LANGUAGE

  1. DDL & DML Overview
  2. Building Table Definitions
  3. Identifiers
  4. Column Definitions
  5. Numeric Datatypes
  6. ENUM and SET Types
  7. Date and Time Datatypes
  8. AUTO_INREMENT
  9. UNIQUE Constraints
  10. Primary Keys
  11. Modifying Tables
  12. Foreign Keys
  13. Renaming and Dropping Tables

6. DML – DATA MANIPULATION LANGUAGE

  1. DDL & DML Overview
  2. Data Values: Numbers
  3. Data Values: Strings
  4. Working with NULL Values
  5. Bulk Loading of Data
  6. Bulk Data Format
  7. Working with Special Values in Bulk
  8. Data
  9. Adding New Table Rows with INSERT
  10. Copying Rows
  11. UPDATE
  12. REPLACE
  13. Removing Table Rows
  14. Transactions
  15. InnoDB: Using Transactional Processing
  16. Locking Tables

7. QUERIES – THE SELECT STATEMENT

  1. SELECT Syntax Summary
  2. Choosing Data Sources and Destinations
  3. for SELECT
  4. Presentation of Table Data with
  5. SELECT
  6. Being Selective About Which Rows are
  7. Displayed
  8. User-Defined Variables
  9. Expressions and Functions
  10. Control Flow Operators and Functions
  11. Function Names
  12. Comparison Operators and Functions
  13. String Functions
  14. Numeric Operators and Functions
  15. Date and Time Functions
  16. Forcing Data Interpretation
  17. Miscellaneous Functions

 8. BUILDING A RESULT SET FROM SEVERAL SOURCES

  1. UNION
  2. Combining Data from Two Tables
  3. Using WHERE to Choose Matching
  4. Rows
  5. INNER JOIN
  6. OUTER JOINs
  7. Multiple Tables, Fields, Joins, and
  8. Ordering
  9. SELECT * and USING Columns

9. ADVANCED SQL TECHNIQUES

  1. MySQL Pattern Matching
  2. Multipliers, Anchors, and Grouping
  3. GROUP BY
  4. Aggregates
  5. Subqueries
  6. Subquery Comparisons and Quantifiers
  7. Other Subqueries
  8. Subquery Alternatives and Restrictions
  9. InnoDB Multi-Table Updates and
  10. Deletes
  11. Building a VIEW
  12. Updatable VIEWs

10.  MYSQL STORAGE ENGINES

  1. Storage Engine Overview
  2. Other Storage Engine Types
  3. The Basics of Commonly Used Storage
  4. Engines
  5. MyISAM Limits and Features
  6. MyISAM Data File Format
  7. InnoDB and Hardware Limitations
  8. InnoDB Shared Tablespace
  9. Configuration
  10. InnoDB Per-Table Tablespaces
  11. InnoDB Data Management
  12. MEMORY and FEDERATED
  13. MERGE and ARCHIVE

11. UTILITIES

  1. Client Overview
  2. Specifying Options for Command-Line
  3. Clients
  4. Client Option Files
  5. Checking Tables with myisamchk and
  6. mysqlchk
  7. Using myisamchk and mysqlchk for
  8. Repairs
  9. mysqlshow and mysqlimport
  10. Using mysqldump
  11. The Query Browser
  12. MySQL Query Browser: Deeper
  13. MySQL Administrator: Basic
  14. Operations
  15. MySQL Administrator: Monitoring the
  16. Server and User Administration
  17. Third Party Tools

12. ADMINISTERING A DATABASE AND USERS

  1. The Server-Side Programs
  2. Starting the MySQL Server
  3. Using SET for Server Options
  4. Table Management
  5. Server Log Files
  6. mysqladmin
  7. Backup and Restore
  8. Miscellaneous Functions
  9. User Account Management
  10. Understanding User Privileges
  11. User Account Rights Management
  12. User Account Privileges
  13. Managing Access to the Database
  14. Environment

 13. DATABASE PROGRAMMABILITY

  1. Stored Routines: Basic Concepts
  2. Routine Creation and Use
  3. Flow Control Statement
  4. Writing Blocks of Code
  5. Triggers
  6. Stored Routines, Triggers, and the
  7. Binary Log
  8. Table HANDLERs
  9. Prepared Statements

14. OPTIMIZATION AND PERFORMANCE TUNING

  1. Hardware Limitations
  2. Optimizing the MySQL Server’s
  3. Interaction with the External
  4. World
  5. Adjusting the MySQL Server
  6. Configuration
  7. Optimizing Your Database
  8. Optimizing Queries
  9. The Use of Indexes to Support Queries
  10. Thinking about JOIN Queries
  11. Query Sorts, Indexes, and ShortCircuiting
  12. INSERT, UPDATE, DELETE, and
  13. Table Locks
  14. Some General Optimizations
  15. Optimizations Specific to MyISAM
  16. Optimizations Specific to InnoDB

15. MYSQL PROGRAMMING INTERFACES

  1. Database Application Architectures
  2. Connecting MySQL to ODBC
  3. Connecting MySQL to MS/Office and
  4. MS/Access
  5. Connecting to MySQL from Perl
  6. Programming Perl to MySQL
  7. Connecting to MySQL from PHP
  8. Programming PHP To MySQL

^^

See more Internet Technologies courses