Get in Touch

Course Outline

Introduction

  • Overview of MySQL, including its products and services
  • Details on MySQL services and support structures
  • Supported operating systems and environments
  • Recommended training curriculum paths
  • Essential MySQL documentation resources

MySQL Architecture

  • The client-server model and its fundamentals
  • Communication protocols used in MySQL
  • Understanding the SQL Layer
  • The structure of the Storage Layer
  • How the server integrates and supports various storage engines
  • Utilization of memory and disk space by MySQL
  • The MySQL plug-in interface mechanism

System Administration

  • Selecting the appropriate MySQL distribution type
  • Procedures for installing the MySQL Server
  • Understanding the MySQL Server installation file structure
  • Methods for starting and stopping the MySQL server
  • Processes involved in upgrading MySQL
  • Running multiple MySQL instances on a single host

Server Configuration

  • Exploring MySQL server configuration options
  • Managing system variables
  • Understanding and applying SQL Modes
  • Review of available log files
  • Implementation of binary logging

Clients and Tools

  • Available clients for performing administrative tasks
  • Overview of MySQL administrative clients
  • Usage of the mysql command-line client
  • Usage of the mysqladmin command-line client
  • The MySQL Workbench graphical interface
  • Essential MySQL tools
  • Available APIs, including drivers and connectors

Data Types

  • Primary categories of data types
  • The concept and significance of NULL values
  • Understanding column attributes
  • Application of character sets with data types
  • Criteria for choosing the most suitable data type

Obtaining Metadata

  • Methods available for accessing metadata
  • The structure of INFORMATION_SCHEMA
  • Utilizing commands to view metadata
  • Distinguishing between SHOW statements and INFORMATION_SCHEMA tables
  • Use of the mysqlshow client program
  • Leveraging INFORMATION_SCHEMA queries to generate shell commands and SQL statements

Transactions and Locking

  • Using transaction control statements to execute multiple SQL statements concurrently
  • The ACID properties governing transactions
  • Understanding transaction isolation levels
  • Employing locking mechanisms to safeguard transactions

Storage Engines

  • Overview of storage engines in MySQL
  • Deep dive into the InnoDB storage engine
  • InnoDB system and file-per-table tablespaces
  • NoSQL concepts and the Memcached API
  • Efficient configuration of tablespaces
  • Achieving referential integrity using foreign keys
  • InnoDB locking mechanisms
  • Key features of available storage engines

Partitioning

  • The role of partitioning in MySQL
  • Reasons for implementing partitioning
  • Different types of partitioning strategies
  • Creating partitioned tables
  • The concept of subpartitioning
  • Retrieving partition metadata
  • Modifying partitions to enhance performance
  • Storage Engine Support for Partitioning

User Management

  • Requirements for user authentication
  • Using SHOW PROCESSLIST to monitor running threads
  • Operations for creating, modifying, and dropping user accounts
  • Alternative authentication plugins
  • Requirements for user authorization
  • Hierarchical levels of user access privileges
  • Categorization of privilege types
  • Granting, modifying, and revoking user privileges

Security

  • Identifying common security risks
  • Security risks specific to MySQL installations
  • Security challenges and counter-measures for networks, operating systems, filesystems, and users
  • Strategies for protecting data
  • Implementing SSL for secure MySQL server connections
  • Enabling secure remote connections via SSH
  • Resources for finding additional information on common security issues

Table Maintenance

  • Varieties of table maintenance operations
  • SQL statements used for table maintenance
  • Client and utility programs for maintaining tables
  • Maintenance practices for other storage engines
  • Data Export and Import processes
  • Techniques for exporting data
  • Techniques for importing data

Programming Inside MySQL

  • Creating and executing Stored Routines
  • Understanding security considerations for stored routine execution
  • Developing and executing triggers
  • Managing events: creating, altering, and dropping
  • Scheduling event execution

MySQL Backup and Recovery

  • Fundamentals of backup strategies
  • Different types of backups
  • Essential backup tools and utilities
  • Creating binary and text backups
  • The role of log and status files in backup processes
  • Data Recovery procedures

Replication

  • Managing the MySQL Binary Log
  • Understanding MySQL replication threads and files
  • Setting up a MySQL Replication Environment
  • Designing Complex Replication Topologies
  • Implementing Multi-Master and Circular Replication
  • Executing a Controlled Switchover
  • Monitoring and Troubleshooting MySQL Replication
  • Replication using Global Transaction Identifiers (GTIDs)

Introduction to Performance Tuning

  • Utilizing EXPLAIN to analyze query performance
  • General strategies for table optimization
  • Monitoring status variables that impact performance
  • Configuring and interpreting MySQL server variables
  • An overview of the Performance Schema

Conclusion

Q&A Session

Requirements

No specific prerequisites are required, although prior knowledge of databases is beneficial for students.

Audience:

IT professionals aspiring to become Database Administrators (DBAs) or database support specialists working with MySQL on Linux and Windows platforms.

Format: 40% theoretical lectures, 60% practical hands-on laboratory work

 28 Hours

Number of participants


Price per participant

Testimonials (1)

Upcoming Courses

Related Categories