Get in Touch
 Duration 28 hours

Course Outline

Introduction

  • Overview of MySQL, its products, and services
  • MySQL service offerings and support channels
  • Supported operating systems
  • Recommended training curriculum paths
  • Accessing MySQL documentation resources

MySQL Architecture

  • Understanding the client-server model
  • Communication protocols
  • The SQL processing layer
  • The storage layer
  • Server support for storage engines
  • Memory and disk space utilization in MySQL
  • The MySQL plug-in interface

System Administration

  • Selecting the appropriate MySQL distribution
  • Installing the MySQL server
  • Understanding the MySQL server file structure
  • Starting and stopping the MySQL server
  • Upgrading the MySQL instance
  • Running multiple MySQL instances on a single host

Server Configuration

  • Exploring MySQL server configuration options
  • Managing system variables
  • Configuring SQL modes
  • Reviewing available log files
  • Implementing binary logging

Clients and Tools

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

Data Types

  • Major categories of data types
  • Understanding the meaning of NULL
  • Column attributes
  • Character set usage 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
  • Using the mysqlshow client program
  • Leveraging 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 mechanisms to protect transactions

Storage Engines

  • Overview of storage engines in MySQL
  • The InnoDB storage engine
  • InnoDB system and file-per-table tablespaces
  • NoSQL considerations and the Memcached API
  • Efficiently configuring 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
  • Different types of partitioning
  • Creating partitioned tables
  • Subpartitioning
  • Retrieving partition metadata
  • Modifying partitions to enhance performance
  • Partitioning support across 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
  • Hierarchical levels of user access privileges
  • Categories of privileges
  • Granting, modifying, and revoking user privileges

Security

  • Identifying common security risks
  • Security risks specific to MySQL installations
  • Countermeasures for network, operating system, filesystem, and user security issues
  • Strategies for data protection
  • Using SSL for secure MySQL server connections
  • Enabling secure remote connections via SSH
  • Locating additional resources for common security concerns

Table Maintenance

  • Types of table maintenance operations
  • SQL statements for table maintenance
  • Client and utility programs for maintaining tables
  • Maintenance procedures for other storage engines
  • Exporting and importing data
  • Exporting data
  • Importing data

Programming Inside MySQL

  • Creating and executing stored routines
  • Security considerations for stored routine execution
  • Creating and executing triggers
  • Creating, altering, and dropping events
  • Scheduling event execution

MySQL Backup and Recovery

  • Fundamentals of backup
  • 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 files
  • Setting up a MySQL replication environment
  • Designing complex replication topologies
  • Implementing multi-master and circular replication
  • Performing a 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 status variables that impact performance
  • Setting and interpreting MySQL server variables
  • Overview of the Performance Schema

Conclusion

Q&A Session

Requirements

While there are no strict prerequisites, having foundational knowledge of databases is beneficial.

Audience:

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

Format: 40% theoretical instruction, 60% hands-on practical labs

Number of participants


Price per participant (excl. VAT)

Testimonials (1)

Upcoming Courses

Related Categories