We may earn an affiliate commission when you visit our partners.
Course image
Abid Malik

Course Overview

Welcome to this amazing course on MySQL Server Administration. You will learn all aspects of MySQL Server including setting it up, managing it, troubleshooting it. You will learn how to upgrade MySQL, how to setup replication, how to migrate to AWS cloud, and much more.

Course Contents

Read more

Course Overview

Welcome to this amazing course on MySQL Server Administration. You will learn all aspects of MySQL Server including setting it up, managing it, troubleshooting it. You will learn how to upgrade MySQL, how to setup replication, how to migrate to AWS cloud, and much more.

Course Contents

  1. MySQL Server Introduction

    1. Why MySQL?

    2. Meet Bob, The future DBA

    3. MySQL Websites

  2. MySQL Server Installation

    1. Installing MySQL Server Community Edition

    2. Installing MariaDB Database Server

    3. Installing Percona MySQL Server

    4. installing Specific MySQL Version

    5. Removing MySQL

  3. Exploring MySQL Server

    1. MySQL Architecture

    2. MySQL Installed File Locations

    3. MySQL Executable Programs

    4. MySQL Shell Commands

    5. MySQL Socket File

    6. MySQL Global & Session Variables

    7. MySQL Remove vs Local Connections

  4. MySQL User Administration

    1. MySQL Accounts

    2. Creating DBA Account WITH GRANT OPTION

    3. MySQL Roles

    4. Granting Permissions to Roles

    5. Granting Roles to Users

  5. MySQL Database Administration

    1. Storing Auth Credentials using mysql_config_editor

    2. MySQL Administrative Programs

    3. mysqlimport, mysqlshow, mysqlcheck utilities

    4. Loading Time Zone Data

    5. Downloading Example Databases

  6. MySQL Server Configuration

    1. MySQL Default Option Files

    2. Adding Option Files

    3. Option File Inclusions

    4. MySQL Error Log

    5. MySQL Binary Log Files

    6. Relocating InnoDB System Tablespaces

    7. Moving Redo Log Files

  7. Upgrading MySQL Server

    1. Performing MySQL Minor Version Upgrade

    2. Performing MySQL Major Version Upgrade

    3. Running Pre-Upgrade Checks

    4. Version Comparison Between Primary & Replica

  8. MySQL Replication

    1. Performing Traditional Position-Based Relication

    2. Performing GTID Replication

    3. Ignoring Databases for Replication

    4. Excluding Tables from Replication

  9. MySQL Storage Engines

    1. BLACKHOLE 

    2. MEMORY

    3. INNODB

    4. CSV

  10. MySQL InnoDB Storage Engine Configuration

    1. InnoDB Architecture

    2. Memory-Based Architecture

    3. InnoDB Buffer Pool

    4. Dedicated Server

    5. Doublewrite Buffer

    6. System Tablespaces

  11. MySQL Backup & Restore

    1. Performing Hot Backup

    2. Performing Cold Backup

    3. Performing Logical Backups

    4. Restoring from Hot/Cold Backups

  12. Running MySQL on Docker

    1. Installing Docker Engine

    2. Pulling MySQL Image

    3. Running MySQL Container

  13. DBA Tips & Tricks Club

    1. Customizing MySQL Prompt

January 2023 - Course Update

SECTION: Running MySQL on Docker

Lessons Added:

  1. Converting MySQL Instance to Container

  2. Installing MySQL Server on Docker Host

  3. Demo - Attach Container to Instance

Feburary 2023 - Course Update

..

Enroll now

What's inside

Learning objectives

  • You will learn how to install latest version of mysql server including mariadb and percona server for mysql.
  • You will learn how to secure the installation of mysql and how to start/stop/restart mysql service using systemd.
  • You will learn how to customize mysql server configuration, how to store innodb log files, binary log files, mysql server log files in separate locations.
  • You will learn how to connect to mysql locally as well as remotely and how to perform database administration.
  • You will learn how to perform minor and major mysql upgrades, how to install new components and remove plugins.
  • You will learn how to setup gtid-based master-slave replication, and how to setup filtered replication.
  • You will learn how to take logical as well as physical backup, how to restore mysql backups, how to setup a new slave from backup.
  • You will learn how to troubleshoot mysql server issues.
  • You will learn how to run mysql in docker

Syllabus

Introduction
Course Introduction
Why MySQL?
DBA vs Developer Course
Read more

In this lecture, we will install MySQL Server Community Edition on a Red Hat based linux system.

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Covers installation of MySQL, MariaDB, and Percona, offering a comprehensive introduction to different MySQL server options
Explores MySQL architecture, file locations, and executable programs, which are essential for effective database administration
Includes a section on running MySQL in Docker, which is increasingly relevant for modern deployment strategies
Teaches GTID-based master-slave replication, a core skill for ensuring data availability and disaster recovery
Features a DBA Tips & Tricks Club, which may offer practical advice beyond standard documentation
Focuses on MySQL 8, but also covers older versions, which may be useful for maintaining legacy systems

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Practical foundation for mysql dba

According to learners, this course offers a practical foundation for aspiring MySQL DBAs, focusing on skills needed for production environments. Students highlight the clear explanations and logical structure, finding it particularly helpful for beginners or those with limited prior experience. The course effectively covers essential DBA tasks, including installation, user management, backups, and replication, with helpful demos and assignments reinforcing the concepts. While reviewers appreciate the depth provided for fundamentals, some note that topics like performance tuning and advanced troubleshooting could benefit from more in-depth coverage for experienced users. Recent updates, such as the Docker section, are seen as valuable additions, indicating the course is being actively maintained. Overall, it's considered a solid starting point for a DBA career.
New content like Docker adds value
"The Docker section was a nice addition."
"The January/February 2023 updates seem to have added valuable content."
"The Docker part is a good recent addition."
Ideal starting point for new DBAs
"This course is excellent for anyone looking to get started as a MySQL DBA."
"Good course for beginners or those with limited prior DBA experience."
"It's more suited for absolute beginners or developers exploring DBA tasks."
Covers essential DBA topics effectively
"Covers all the basics you need to know for a production environment - installation, users, backups, simple replication."
"Provides a strong foundation across key areas. Topics like backup/restore and replication were well explained."
"A solid introduction to MySQL administration."
Instructor breaks down complex topics clearly
"The instructor is very clear and breaks down complex topics like replication and backups into manageable steps."
"The explanations of concepts like storage engines and binary logs were superb."
"Instructor is knowledgeable and presents clearly. The explanations are clear and easy to follow."
Emphasizes hands-on skills for production
"The focus is clearly on production environments, which is exactly what I needed."
"Really practical course. I learned concrete steps for performing upgrades, setting up replication, and managing users."
"Covers the essential tasks for a MySQL DBA. Good hands-on approach with demos."
Could go deeper on advanced topics
"Some topics could go deeper, especially performance tuning and advanced troubleshooting."
"The core concepts are there, but don't expect deep dives into every nuance. "
"I found the troubleshooting section a bit weak, and there wasn't much on performance optimization..."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Becoming a Production MySQL DBA with these activities:
Review Basic Linux Commands
Familiarize yourself with essential Linux commands to navigate the server environment effectively, which is crucial for MySQL DBA tasks.
Browse courses on Linux Command Line
Show steps
  • Practice navigating the file system using commands like `cd`, `ls`, `pwd`.
  • Learn to manage files and directories with `cp`, `mv`, `rm`, `mkdir`.
  • Familiarize yourself with text manipulation commands like `grep`, `sed`, `awk`.
Read 'High Performance MySQL'
Deepen your understanding of MySQL performance optimization techniques, which are essential for managing production databases.
Show steps
  • Read the chapters on schema design and indexing.
  • Study the sections on query optimization and server tuning.
  • Experiment with the techniques discussed in the book on a test server.
Practice MySQL User Management
Reinforce your understanding of user account creation, privilege granting, and role management in MySQL.
Show steps
  • Create several user accounts with different privilege levels.
  • Grant and revoke permissions to users and roles.
  • Test the permissions of each user account to ensure they are configured correctly.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Read 'Effective MySQL'
Learn practical tips and best practices for improving your MySQL skills and becoming a more efficient DBA.
Show steps
  • Read the book cover to cover, paying attention to the tips and best practices.
  • Experiment with the techniques discussed in the book on a test server.
  • Apply the best practices to your own MySQL deployments.
Set up MySQL Replication
Gain hands-on experience with configuring and managing MySQL replication, a critical skill for high availability and disaster recovery.
Show steps
  • Install and configure two MySQL servers.
  • Configure master-slave replication between the two servers.
  • Test the replication setup by inserting, updating, and deleting data on the master server and verifying that the changes are replicated to the slave server.
Document MySQL Backup and Restore Procedures
Solidify your knowledge of MySQL backup and restore techniques by creating a comprehensive documentation guide.
Show steps
  • Research different MySQL backup methods, including logical and physical backups.
  • Document the steps involved in performing each type of backup.
  • Document the steps involved in restoring from each type of backup.
  • Test the backup and restore procedures to ensure they are working correctly.
Contribute to a MySQL Open Source Project
Deepen your understanding of MySQL by contributing to an open-source project related to MySQL, such as reporting bugs or improving documentation.
Show steps
  • Identify a MySQL open-source project that interests you.
  • Explore the project's codebase and documentation.
  • Contribute by reporting bugs, fixing issues, or improving documentation.

Career center

Learners who complete Becoming a Production MySQL DBA will develop knowledge and skills that may be useful to these careers:
MySQL DBA
This course is designed to help you to become a MySQL database administrator, a role focused on managing MySQL databases. The course will enable you to learn how to install, configure, and maintain MySQL servers. As a MySQL DBA, you need to be proficient in user administration, server configuration, backup and restore procedures, and replication strategies, all areas covered extensively in the course. The detailed syllabus on MySQL storage engines and InnoDB configuration will provide you with the expertise needed to optimize database performance and ensure data integrity as a MySQL DBA.
Database Administrator
A database administrator is responsible for the performance, integrity, and security of a database. This course provides a comprehensive understanding of MySQL server administration. The course will improve your knowledge of setting up, managing, and troubleshooting MySQL servers. Learning about MySQL architecture, user administration, database administration, and server configuration will help you excel as a database administrator. Understanding backup and restore procedures, as taught in this course, is crucial for maintaining data integrity and ensuring business continuity as a database administrator.
Database Engineer
A database engineer designs, builds, and maintains database systems. This course offers practical knowledge of MySQL server administration, including installation, configuration, and troubleshooting. Understanding MySQL architecture, storage engines, and replication, as covered in this course, helps a database engineer to build robust and scalable database solutions. Learning how to upgrade MySQL servers and migrate to AWS cloud environments enhances your skills as a database engineer, allowing you to handle diverse and complex database projects, including running MySQL using Docker.
Database Security Analyst
A database security analyst focuses on protecting databases from unauthorized access and security threats. As part of their job, they ensure database meet security requirements such as HIPAA. This course provides a deep understanding of MySQL server administration, including user administration, access controls, and encryption. As a database security analyst, you need to be proficient in configuring secure MySQL environments, monitoring security logs, and implementing security best practices. The course's coverage of MySQL authentication, authorization, and auditing will help you to protect sensitive data and prevent security breaches.
Cloud Database Administrator
A cloud database administrator manages database services in cloud environments such as AWS. The course provides training on MySQL server administration, including setting up, managing, and troubleshooting MySQL on AWS. Understanding MySQL replication, backup, and restore procedures, as covered in this course, is critical for ensuring data availability and disaster recovery in the cloud. The knowledge gained from this course helps you optimize MySQL performance and manage database security in cloud environments as a cloud database administrator.
Database Consultant
A database consultant advises organizations on how to best use their database systems. As part of their job, the consultant will often need to work with MySQL. This course provides a comprehensive knowledge of MySQL server administration, including installation, configuration, and performance optimization. The course's coverage of MySQL architecture, storage engines, and replication will help you to deliver expert advice on database design and management. Understanding MySQL security features and backup/restore procedures allows you to develop effective strategies for data protection and disaster recovery.
Systems Administrator
A systems administrator manages and maintains the IT infrastructure of an organization. This course will help you gain expertise in MySQL server administration, including installation, configuration, securing, and troubleshooting. As a systems administrator, understanding MySQL server configuration, user administration, and backup procedures will enable you to manage database systems effectively. The practical knowledge of running MySQL on Docker and migrating to AWS cloud environments, as taught in this course, will expand your skill set and make you competitive.
Database Architect
A database architect designs and implements database systems, ensuring they meet the organization's needs. This course provides a deep understanding of MySQL server administration, including its architecture, storage engines, and configuration options. As a database architect, you require a solid foundation in database technologies to design scalable and efficient database solutions. The course's coverage of MySQL replication, backup, and restore strategies will help you to design robust and resilient database architectures.
Data Engineer
A data engineer builds and maintains the infrastructure required for data storage and processing. This course provides skills in MySQL server administration, including installation, configuration, and maintenance. The knowledge of MySQL architecture, storage engines, and replication will help you design and implement efficient data pipelines. Understanding backup and restore procedures, as taught in this course, ensures data integrity. The course will provide you with the necessary skills to manage MySQL databases in a data engineering context.
Solutions Architect
A solutions architect designs and implements IT solutions that meet business needs. This course will give you expertise in MySQL server administration, including installation, configuration, and troubleshooting. As a solutions architect, you need to understand database technologies to design scalable and reliable solutions. The course's coverage of MySQL replication, backup, and restore strategies will help you to architect solutions in a database environment. The course's introduction of running MySQL on Docker provides understanding of options available to the solutions architect.
Site Reliability Engineer
A site reliability engineer ensures the reliability and performance of systems. Since many systems depend on databases, you may find this course helpful. The course provides understanding of MySQL server administration, including installation, configuration, and automated maintenance. The detailed information on MySQL replication, backup, and restore procedures will help you design and implement robust disaster recovery plans. Running MySQL on Docker, as taught in this course, helps you to automate and scale database deployments, improving system reliability.
DevOps Engineer
A DevOps engineer automates and streamlines the software development and deployment processes. A DevOps Engineer might find the material in this course useful for administering MySQL. The course provides training on MySQL server administration, including installation, configuration, and automation using tools like Docker. Knowledge of MySQL replication, backup, and restore procedures, as covered in this course, is essential for maintaining data integrity and ensuring smooth deployments. This course will give you the skills you need to manage MySQL in a DevOps environment.
Technical Support Engineer
A technical support engineer provides technical assistance to customers. This course will give you understanding of MySQL server administration, including installation, configuration, and troubleshooting. As part of your job, you may need to work with MySQL. The course's coverage of MySQL error logs, binary log files, and replication will help you to diagnose and resolve database issues. Understanding MySQL user administration and security features will also enable you to assist customers with access and permission problems.
Software Developer
A software developer writes and maintains code for applications. This course may be useful if you are to work with MySQL databases. The course provides insights into MySQL server administration, including installation, configuration, and basic troubleshooting. Understanding MySQL architecture, user administration, and database administration will help you write more efficient and secure database applications. The course's coverage of MySQL storage engines will give you the knowledge to optimize data storage and retrieval in your applications.
Data Analyst
A data analyst examines data to identify trends and insights. This course may be useful for data analysts to better understand the databases they use. The course provides an overview of MySQL server administration, including connecting to databases and running queries. Understanding MySQL architecture and storage engines will help you to optimize data retrieval and analysis. The course's coverage of MySQL utilities will give you the tools to extract and manipulate data for analysis.

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Becoming a Production MySQL DBA.
Comprehensive guide to optimizing MySQL performance. It covers advanced topics such as schema design, indexing, query optimization, and server tuning. It is commonly used by industry professionals. Reading this book will provide a deeper understanding of the concepts covered in the course and help you become a more effective MySQL DBA.
Provides practical advice and best practices for using MySQL effectively. It covers a wide range of topics, including schema design, query optimization, security, and replication. It useful reference for both beginner and experienced MySQL DBAs. Reading this book will help you improve your MySQL skills and become a more efficient DBA.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser