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 products and services
- MySQL support offerings
- Supported operating systems
- Available training curriculum paths
- Resources for MySQL documentation
MySQL Architecture
- The client-server model
- Communication protocols
- The SQL layer
- The storage layer
- Server support for storage engines
- Management of memory and disk space by MySQL
- The MySQL plugin interface
System Administration
- Selecting the appropriate MySQL distribution
- Installing the MySQL Server
- Structure of the MySQL server installation files
- Starting and stopping the MySQL server
- Upgrading MySQL
- Running multiple MySQL servers on a single host
Server Configuration
- MySQL server configuration options
- System variables
- SQL modes
- Available log files
- Binary logging
Clients and Tools
- Administrative client options
- MySQL administrative clients
- The mysql command-line client
- The mysqladmin command-line client
- The MySQL Workbench graphical client
- MySQL utility tools
- Available APIs (drivers and connectors)
Data Types
- Major categories of data types
- Understanding NULL values
- Column attributes
- Using character sets with data types
- Selecting appropriate data types
Obtaining Metadata
- Methods for accessing metadata
- Structure of the INFORMATION_SCHEMA
- Using commands to view metadata
- Differences between SHOW statements and INFORMATION_SCHEMA tables
- The mysqlshow client program
- Utilizing INFORMATION_SCHEMA queries to generate shell commands and SQL statements
Transactions and Locking
- Using transaction control statements for concurrent SQL execution
- The ACID properties of transactions
- Transaction isolation levels
- Employing locking to protect transactions
Storage Engines
- Storage engines in MySQL
- The InnoDB storage engine
- InnoDB system and file-per-table tablespaces
- NoSQL integration via the Memcached API
- Efficient tablespace configuration
- Using foreign keys to ensure referential integrity
- InnoDB locking mechanisms
- Feature overview of available storage engines
Partitioning
- Partitioning concepts and usage in MySQL
- Benefits of using partitioning
- Types of partitioning
- Creating partitioned tables
- Subpartitioning strategies
- Retrieving partition metadata
- Modifying partitions to enhance performance
- Storage engine support for partitioning
User Management
- Requirements for user authentication
- Using SHOW PROCESSLIST to monitor active threads
- Creating, modifying, and dropping user accounts
- Alternative authentication plugins
- Requirements for user authorization
- Levels of access privileges for users
- Types of privileges
- Granting, modifying, and revoking user privileges
Security
- Identifying common security risks
- Security risks specific to MySQL installations
- Addressing security issues and countermeasures for networks, operating systems, file systems, and users
- Data protection strategies
- Using SSL for secure MySQL server connections
- Leveraging SSH for secure remote MySQL server access
- Locating additional resources for common security issues
Table Maintenance
- Types of table maintenance operations
- SQL statements for table maintenance
- Client and utility programs for table maintenance
- Maintaining tables for other storage engines
- Exporting and importing data
- Data export techniques
- Data import techniques
Programming Inside MySQL
- Creating and executing stored routines
- Security aspects of stored routine execution
- Creating and executing triggers
- Creating, altering, and dropping events
- Scheduling event execution
MySQL Backup and Recovery
- Backup fundamentals
- Types of backup strategies
- Backup tools and utilities
- Performing binary and text backups
- The role of log and status files in backups
- Data recovery procedures
Replication
- Managing the MySQL Binary Log
- MySQL replication threads and files
- Setting up a MySQL replication environment
- Designing complex replication topologies
- Multi-master and circular replication
- Executing controlled switchover
- Monitoring and troubleshooting MySQL replication
- Replication using Global Transaction Identifiers (GTIDs)
Introduction to Performance Tuning
- Analyzing queries using EXPLAIN
- General table optimization techniques
- Monitoring performance-affecting status variables
- Setting and interpreting MySQL server variables
- Overview of the Performance Schema
Conclusion
Q&A Session
Requirements
There are no strict prerequisites, although familiarity with general database concepts is beneficial.
Audience:
This course is designed for IT professionals aiming to become Database Administrators (DBAs) or database support specialists for MySQL on Linux and Windows platforms.
Format: 40% theoretical lectures, 60% practical hands-on laboratory exercises
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.