Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
Introduction
- Overview of MySQL, its products, and services
- MySQL service offerings and support options
- Supported operating systems
- Recommended training paths
- Accessing MySQL documentation resources
MySQL Architecture
- The client-server model
- Communication protocols
- The SQL layer
- The storage layer
- Server support for storage engines
- Memory and disk space utilization in MySQL
- The MySQL plug-in interface
System Administration
- Selecting the appropriate MySQL distribution
- Installing the MySQL Server
- Understanding the MySQL Server file structure
- Starting and stopping the MySQL server
- Upgrading MySQL installations
- Running multiple MySQL instances on a single host
Server Configuration
- MySQL server configuration parameters
- System variables
- SQL modes
- Available log files
- Binary logging
Clients and Tools
- Clients available for administrative tasks
- MySQL administrative clients
- The mysql command-line client
- The mysqladmin command-line client
- The MySQL Workbench graphical interface
- Essential MySQL tools
- Available APIs (drivers and connectors)
Data Types
- Primary categories of data types
- Understanding the meaning of NULL
- Column attributes
- Character set usage with data types
- Selecting appropriate data types
Obtaining Metadata
- Methods for accessing metadata
- The structure of INFORMATION_SCHEMA
- Commands for viewing metadata
- Distinguishing between SHOW statements and INFORMATION_SCHEMA tables
- The mysqlshow client program
- Generating shell commands and SQL statements from INFORMATION_SCHEMA queries
Transactions and Locking
- Using transaction control statements for concurrent SQL execution
- The ACID properties of transactions
- Transaction isolation levels
- Employing locking mechanisms to protect transactions
Storage Engines
- Overview of MySQL storage engines
- The InnoDB storage engine
- InnoDB system and file-per-table tablespaces
- NoSQL and the Memcached API
- Efficient configuration of tablespaces
- Using foreign keys for referential integrity
- InnoDB locking mechanisms
- Features of available storage engines
Partitioning
- The application of partitioning in MySQL
- Benefits of using partitioning
- Different types of partitioning
- Creating partitioned tables
- Subpartitioning concepts
- Retrieving partition metadata
- Modifying partitions for performance improvement
- Partitioning support across storage engines
User Management
- Authentication requirements
- Monitoring running threads with SHOW PROCESSLIST
- Creating, modifying, and removing user accounts
- Alternative authentication plugins
- Authorization requirements
- Hierarchy of user access privileges
- Categories of privileges
- Granting, altering, and revoking user privileges
Security
- Identifying common security risks
- Security vulnerabilities specific to MySQL deployments
- Countermeasures for network, OS, filesystem, and user security issues
- Data protection strategies
- Implementing SSL for secure MySQL server connections
- Using SSH for secure remote connections to the MySQL server
- Sources for additional security information
Table Maintenance
- Varieties of table maintenance operations
- SQL commands for table maintenance
- Client and utility programs for maintenance tasks
- Maintaining tables for different storage engines
- Data export and import processes
- Exporting data
- Importing data
Programming Inside MySQL
- Creating and executing Stored Routines
- Security considerations for stored routine execution
- Creating and executing triggers
- Creating, altering, and dropping events
- Scheduling event execution
MySQL Backup and Recovery
- Fundamentals of backup
- Types of backups
- Backup tools and utilities
- Creating binary and text backups
- The role of log and status files in backup procedures
- Data recovery techniques
Replication
- Managing the MySQL Binary Log
- MySQL replication threads and associated files
- Configuring a MySQL Replication Environment
- Designing complex replication topologies
- Multi-Master and Circular Replication strategies
- Executing a controlled switchover
- Monitoring and troubleshooting MySQL replication
- Replication using Global Transaction Identifiers (GTIDs)
Introduction to Performance Tuning
- Analyzing queries with EXPLAIN
- General table optimization techniques
- Monitoring status variables for performance impact
- Configuring and interpreting MySQL server variables
- Overview of the Performance Schema
Conclusion
Q&A Session
Requirements
There are no strict prerequisites, though a foundational understanding of database concepts is beneficial.
Audience:
IT professionals aiming to become DBAs or database support specialists for MySQL on Linux or Windows platforms.
Format: 40% theory and lectures, 60% practical hands-on labs.
28 Hours
Testimonials (1)
Was carefully tailored to our needs, very responsive to live questions and situations, gave us lots of practice repeating what we were learning.