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 services and support structures
- Supported operating systems
- Training curriculum pathways
- Accessing MySQL documentation resources
MySQL Architecture
- Understanding the client-server model
- Communication protocols
- The SQL layer
- The storage layer
- How the server integrates storage engines
- MySQL's use of memory and disk space
- The MySQL plug-in interface
System Administration
- Selecting the appropriate MySQL distribution type
- Installing the MySQL Server
- Understanding the MySQL Server file structure
- Starting and stopping the MySQL server
- Upgrading MySQL versions
- Running multiple MySQL instances on a single host
Server Configuration
- Configuring MySQL server options
- 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
- Various MySQL tools
- Available APIs (drivers and connectors)
Data Types
- Major categories of data types
- The significance of NULL values
- Column attributes
- Character set usage with data types
- Selecting the appropriate data type
Obtaining Metadata
- Methods for accessing metadata
- Structure of the INFORMATION_SCHEMA
- Using available 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 to execute multiple SQL statements concurrently
- ACID properties of transactions
- Transaction isolation levels
- Using locking mechanisms to protect transactions
Storage Engines
- Storage engines in MySQL
- The InnoDB storage engine
- InnoDB system and file-per-table tablespaces
- NoSQL integration and the Memcached API
- Efficient configuration of tablespaces
- Using foreign keys to ensure referential integrity
- InnoDB locking mechanisms
- Features of available storage engines
Partitioning
- Partitioning concepts and their application in MySQL
- Reasons for implementing partitioning
- Types of partitioning
- Creating partitioned tables
- Subpartitioning
- Retrieving partition metadata
- Modifying partitions to enhance performance
- Partitioning support by Storage Engines
User Management
- Requirements for user authentication
- Using SHOW PROCESSLIST to monitor running threads
- Creating, modifying, and dropping user accounts
- Alternative authentication plugins
- Requirements for user authorization
- Levels of user access privileges
- Types of privileges
- Granting, modifying, and revoking user privileges
Security
- Identifying common security risks
- Security risks specific to MySQL installations
- Addressing security issues and implementing counter-measures for networks, operating systems, filesystems, and users
- Protecting data integrity
- Using SSL for secure MySQL server connections
- Enabling secure remote connections to the MySQL server via SSH
- Sourcing additional information for common security concerns
Table Maintenance
- Types of table maintenance operations
- SQL statements for table maintenance
- Client and utility programs for table maintenance
- Maintaining tables across different storage engines
- Data Export and Import procedures
- Exporting Data
- Importing Data
Programming Inside MySQL
- Creating and executing Stored Routines
- Understanding stored routine execution security
- Creating and executing triggers
- Creating, altering, and dropping events
- Scheduling event execution
MySQL Backup and Recovery
- Fundamentals of backup processes
- Types of backups
- Backup tools and utilities
- Creating 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 associated files
- Setting up a MySQL Replication Environment
- Designing Complex Replication Topologies
- Multi-Master and Circular Replication
- Performing a Controlled Switchover
- Monitoring and Troubleshooting MySQL Replication
- Replication using Global Transaction Identifiers (GTIDs)
Introduction to Performance Tuning
- Using EXPLAIN to Analyze Queries
- General Table Optimizations
- Monitoring status variables that impact performance
- Setting and Interpreting MySQL server Variables
- Overview of Performance Schema
Conclusion
Q&A Session
Requirements
There are no strict prerequisites, although a foundational understanding of database concepts is beneficial.
Audience:
IT professionals aspiring to become Database Administrators (DBAs) or database support specialists working with MySQL on Linux or Windows platforms.
Format: 40% theoretical 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.