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.
Duration 28 hours
Course Outline
Introduction
- Overview of MySQL, its products, and services
- MySQL services and support structures
- Supported operating systems
- Training curriculum 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 appropriate MySQL distributions
- Installing the MySQL Server
- MySQL Server installation file structure
- Starting and stopping the MySQL server
- Upgrading MySQL versions
- Running multiple MySQL servers on a single host
Server Configuration
- MySQL server configuration options
- System variables
- SQL Modes
- Available log files
- Binary logging mechanisms
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 client
- MySQL utility tools
- Available APIs (drivers and connectors)
Data Types
- Major categories of data types
- The concept of NULL values
- Column attributes
- Character set usage with data types
- Selecting appropriate data types
Obtaining Metadata
- Methods for accessing metadata
- Structure of INFORMATION_SCHEMA
- Viewing metadata using available commands
- Differences between SHOW statements and INFORMATION_SCHEMA tables
- The mysqlshow client program
- Creating shell commands and SQL statements using INFORMATION_SCHEMA queries
Transactions and Locking
- Executing multiple SQL statements concurrently using transaction control statements
- The ACID properties of transactions
- Transaction isolation levels
- Using locking 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
- Achieving referential integrity using foreign keys
- 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 techniques
- Retrieving partition metadata
- Modifying partitions to enhance performance
- Storage Engine support for partitioning
User Management
- Requirements for user authentication
- Viewing running threads using SHOW PROCESSLIST
- Creating, modifying, and dropping user accounts
- Alternative authentication plugins
- Requirements for user authorization
- Levels of access privileges for users
- Categories of privileges
- Granting, modifying, and revoking user privileges
Security
- Identifying common security risks
- Security risks specific to MySQL installations
- Security issues and counter-measures for networks, operating systems, file systems, and users
- Data protection strategies
- Using SSL for secure MySQL server connections
- Enabling secure remote connections to the MySQL server via SSH
- Locating additional information 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
- Data export and import processes
- Exporting data
- Importing data
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 backups
- 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 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 with Global Transaction Identifiers (GTIDs)
Introduction to Performance Tuning
- Analyzing Queries using EXPLAIN
- General Table Optimizations
- Monitoring status variables that affect performance
- Setting and interpreting MySQL server variables
- Overview of Performance Schema
Conclusion
Q&A Session
Requirements
No specific prerequisites are mandatory, although prior knowledge of database concepts is beneficial for students.
Audience:
IT professionals aiming to become Database Administrators (DBAs) or database support specialists working with the MySQL database on Linux or Windows platforms.
Format: 40% theoretical/lectures, 60% practical/hands-on labs
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.