Get in Touch

Course Outline

Introduction

  • Overview of MySQL, its product suite, and available services
  • Support options and service levels for MySQL
  • Compatible operating systems
  • Recommended training pathways and curriculum structure
  • Accessing essential MySQL documentation resources

MySQL Architecture

  • Understanding the client-server model
  • Details on communication protocols
  • Structure and function of the SQL Layer
  • Components of the Storage Layer
  • How the server interacts with and supports storage engines
  • Memory and disk space management in MySQL
  • Overview of the MySQL plug-in interface

System Administration

  • Selecting the appropriate MySQL distribution type
  • Steps for installing the MySQL Server
  • Understanding the server installation file structure
  • Procedures for starting and stopping the MySQL server
  • Methods for upgrading MySQL instances
  • Deploying multiple MySQL servers on a single host

Server Configuration

  • Configuring MySQL server options
  • Managing system variables
  • Configuring SQL Modes
  • Reviewing available log files
  • Setting up binary logging

Clients and Tools

  • Overview of available clients for administrative tasks
  • Introduction to MySQL administrative clients
  • Using the mysql command-line client
  • Utilizing the mysqladmin command-line client
  • Working with the MySQL Workbench graphical interface
  • Exploring other MySQL utility tools
  • Available APIs, drivers, and connectors

Data Types

  • Primary categories of data types
  • Interpreting the meaning of NULL values
  • Defining column attributes
  • Applying character sets to data types
  • Selecting the most appropriate data type for specific use cases

Obtaining Metadata

  • Methods for accessing metadata
  • Examining the structure of INFORMATION_SCHEMA
  • Using commands to view metadata details
  • Comparing SHOW statements with INFORMATION_SCHEMA tables
  • Utilizing the mysqlshow client program
  • Leveraging INFORMATION_SCHEMA queries to generate shell commands and SQL statements

Transactions and Locking

  • Executing multiple SQL statements concurrently using transaction control statements
  • Understanding the ACID properties of transactions
  • Managing transaction isolation levels
  • Implementing locking mechanisms to protect transactions

Storage Engines

  • Overview of storage engines in MySQL
  • Deep dive into the InnoDB storage engine
  • Configuring 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 and capabilities of available storage engines

Partitioning

  • Application of partitioning in MySQL
  • Benefits and reasons for using partitioning
  • Different types of partitioning strategies
  • Creating partitioned tables
  • Implementing subpartitioning
  • Retrieving partition metadata
  • Modifying partitions to enhance performance
  • Partitioning support across various Storage Engines

User Management

  • Authentication requirements for user accounts
  • Using SHOW PROCESSLIST to monitor active threads
  • Creating, modifying, and deleting user accounts
  • Implementing alternative authentication plugins
  • Authorization requirements for users
  • Defining levels of access privileges
  • Understanding different types of privileges
  • Granting, altering, and revoking user privileges

Security

  • Identifying common security risks
  • Addressing security risks specific to MySQL installations
  • Mitigating security issues related to networks, operating systems, file systems, and user accounts
  • Strategies for protecting data
  • Implementing SSL for secure MySQL server connections
  • Using SSH for secure remote connections to the MySQL server
  • Resources for investigating additional common security issues

Table Maintenance

  • Types of table maintenance operations
  • SQL statements used for table maintenance
  • Client and utility programs for maintenance tasks
  • Maintaining tables in non-InnoDB storage engines
  • Processes for exporting and importing data
  • Techniques for exporting data
  • Methods for importing data

Programming Inside MySQL

  • Creating and executing Stored Routines
  • Managing security for stored routine execution
  • Defining and executing triggers
  • Creating, modifying, and removing events
  • Scheduling event execution

MySQL Backup and Recovery

  • Fundamentals of backup processes
  • Different types of backups
  • Available backup tools and utilities
  • Creating binary and text-based backups
  • The role of log and status files in backup integrity
  • Data recovery procedures

Replication

  • Managing the MySQL Binary Log
  • Understanding MySQL replication threads and associated files
  • Configuring a MySQL Replication Environment
  • Designing complex replication topologies
  • Implementing Multi-Master and Circular Replication
  • Executing controlled failovers or switchovers
  • Monitoring and troubleshooting MySQL Replication
  • Replication using Global Transaction Identifiers (GTIDs)

Introduction to Performance Tuning

  • Analyzing queries using EXPLAIN
  • General strategies for table optimization
  • Monitoring status variables that impact performance
  • Configuring and interpreting MySQL server variables
  • Overview of the Performance Schema

Conclusion

Q&A Session

Requirements

While there are no strict prerequisites, it is beneficial if students possess some prior knowledge of database systems.

Audience:

IT professionals aiming to become DBAs or database support specialists for MySQL on Linux or Windows platforms.

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

 28 Hours

Number of participants


Price per participant

Testimonials (1)

Upcoming Courses

Related Categories