SlideShare uma empresa Scribd logo
1 de 44
Baixar para ler offline
1
Your host & some logistics
I'm Jean-Jérôme from the Severalnines Team
and I'm your host for today's webinar!
Feel free to ask any questions in the
Questions section of this application or via
the Chat box.
You can also contact me directly via the chat
box or via email: jj@severalnines.com
during or after the webinar.
Confidential
Copyright 2013 Severalnines AB
ClusterControl Overview
2
Confidential
Copyright 2012 Severalnines AB
ClusterControl

In a nutshell
3
Manage Scale
MonitorDeploy
Confidential
Copyright Severalnines AB
ClusterControl

Automation & Management
! Provisioning
! Deploy a cluster in minutes
! On-premises or in the cloud (AWS)
! Monitoring
! Systems view
! 1sec resolution
! DB / OS stats & performance advisors
! Configurable dashboards
! Query Analyzer
! Real-time / historical
4
Confidential
Copyright Severalnines AB
ClusterControl

Automation & Management
! Management
! Multi cluster/data-center
! Automate repair/recovery
! Database upgrades
! Backups
! Configuration management
! Cloning
! One-click scaling
5
Confidential
Copyright Severalnines AB
Supported Databases
SQL
! MySQL (Oracle/Percona/
MariaDB)
! MySQL Galera Cluster
! MySQL Cluster (NDB)
! MariaDB Cluster
! MySQL Replication 5.6
! Standalone MySQL/MariaDB
! Postgres 9.4
NoSQL
! Percona TokuMX Cluster
! MongoDB Sharded Cluster
! MongoDB Replica Set
6
Confidential
Copyright Severalnines AB
Customers
7
Copyright 2015 Severalnines AB
Performing MySQL database upgrades in Replication
and Galera setups
November 24, 2015
Krzysztof Książek
Severalnines
krzysztof@severalnines.com
8
Copyright 2015 Severalnines AB
! We want to help all non-DBA people who look after
MySQL infrastructures
! Share tips and good practices
! Watch the replays of the previous webinars on our
Slideshare page
! http://www.slideshare.net/Severalnines/videos
9
“Become a MySQL DBA” series
Copyright 2015 Severalnines AB
! Why upgrade?
! Different types of upgrade
! How to prepare for an upgrade
! Minor version upgrade
! for MySQL and Galera
! Major version upgrade
! for MySQL and Galera
! ClusterControl and MySQL upgrades



10
Agenda
Copyright 2015 Severalnines AB
Why upgrade?
11
Copyright 2015 Severalnines AB
! Security incidents and downtimes related to bugs can
induce high costs
! Patches and upgrades require constant attention - these
have to be installed on a regular basis to protect systems
from known stability problems or security holes.
! Many companies are failing to do this
! On the next slide you can find some interesting exceptions
from MySQL 5.6.27 changelog
12
Why upgrade?
Copyright 2015 Severalnines AB
! InnoDB: Setting lower_case_table_names=0 on a case-insensitive file
system could result in a hang condition when running an INSERT INTO ...
SELECT ... FROM tbl_name operation with the wrong tbl_name letter case.
! Replication: Repeatedly checking for ERR_LOCK_WAIT_TIMEOUT (as done,
for example by repeatedly executing SHOW SLAVE STATUS) during a
prolonged write lock on a table led to an assert.
! An assertion could be raised due to incorrect error handling if a SELECT ...
FOR UPDATE subquery resulted in deadlock and caused a rollback.
! DELETE could check privileges for the wrong database when table aliases
were used.

13
Why upgrade?
Copyright 2015 Severalnines AB
! MySQL 5.6.27 (2015-09-30)
! MySQL 5.6.26 (2015-07-24)
! MySQL 5.6.25 (2015-05-29)
! MySQL 5.6.24 (2015-04-06)
! MySQL 5.6.23 (2015-02-02)
! MySQL 5.6.22 (2014-12-01)
! MySQL 5.6.21 (2014-09-23)
! MySQL 5.6.20 (2014-07-31)

14
Why upgrade?
Copyright 2015 Severalnines AB
Different types of upgrade
15
Copyright 2015 Severalnines AB
! Minor version upgrades
! MySQL 5.6.x -> 5.6.y
! Versions should be compatible with regards to features
! Backward compatibility should be maintained
! The biggest concern is performance - execution plans
may change, MySQL host has to be restarted
16
Different types of upgrade
Copyright 2015 Severalnines AB
! Major version upgrades
! 5.x -> 5.y or even x.y -> a.b (for example 4.1 -> 5.7)
! Everything may have been changed
! Changes may be incompatible
! Extensive testing is required
! Read through the documents covering upgrade
process
17
Different types of upgrade
Copyright 2015 Severalnines AB
How to prepare for an upgrade?
18
Copyright 2015 Severalnines AB
! We’ll focus on major version upgrade as it has much
bigger potential to impact your workload than simple
5.6.x -> 5.6.y upgrade
! First step - plan your upgrade process. Will you use logical
dumps or binary in-place upgrade? Are you going to use
a slave?
! Test your plan - is it doable? Did everything work as
planned? Sometimes differences between versions make
some upgrade plans impossible to execute
19
How to prepare for an upgrade?
Copyright 2015 Severalnines AB
! Once you have a test database on a new version,
upgraded in a way you plan to upgrade production, it’s
time to run further test
! You need to check if app works ok with a new version of
the database
! Check for both logical issues and performance regressions
! More profiling you can do from within your app (or
external tool like New Relic), more data to compare
20
How to prepare for an upgrade?
Copyright 2015 Severalnines AB
! Performance regressions
! Some settings may need to be tuned differently
! Query execution plans may change from version to
version
! Logical issues
! Implicit row order may differ
! SQL syntax may have changed
21
How to prepare for an upgrade?
Copyright 2015 Severalnines AB
! Minor version upgrades should be compatible (after GA)
! They tend to contain bug fixes and some simple
improvements
! Ideally, you’d perform the same suite of tests like you’d
perform when upgrading 5.x -> 5.y
! As a minimum, check for performance regressions
! Plan for warming up the node - MySQL restart will be
required
22
How to prepare for an upgrade?
Copyright 2015 Severalnines AB
! pt-upgrade is one of tools you can use to automate
regression testing
! It uses data from slow log and replay them on two MySQL
nodes (i.e. running old and new version)
! Queries are checked (among others) for the execution
time and their result set (missing rows, incorrect order)
! Helps DBA to pinpoint regressions and potential issues
23
How to prepare for an upgrade?
Copyright 2015 Severalnines AB
Minor version upgrade
24
Copyright 2015 Severalnines AB
! This process involves performing binary upgrade
! apt-get, yum, binary package - depending on the distro
! Once you perform binary upgrade, keep in mind to run
mysql_upgrade script
! It’s designed to check schemas for any possible
incompatibilities and fix them if needed
25
Minor version upgrade - MySQL and Galera
Copyright 2015 Severalnines AB
! You want to go slave by slave, upgrading them serially
! Keep the majority of traffic off upgraded slave to allow it to
warm up
! You can preload buffer pool data (available in Oracle’s MySQL
5.6 and Percona Server for MySQL 5.5) to minimize the impact
! Keep in mind that the rest of the environment will have to handle
higher load for the duration of upgrade and warmup phase
! Once you upgraded all the slaves, failover needs to be
performed and then, finally, old master has to be upgraded

26
Minor version upgrade - MySQL
Copyright 2015 Severalnines AB
! You want to perform upgrade node by node
! Nodes will have to be restarted so traffic needs to be
steered out of them for the duration of a maintenance
! Warmup phase applies here too - ensure that upgraded
node is warmed up correctly
! Again, preloading buffer pool may speed up the process
significantly
27
Minor version upgrade - Galera
Copyright 2015 Severalnines AB
Major version upgrade
28
Copyright 2015 Severalnines AB
! Much more complex process
! Logical upgrade is a recommended way to perform
upgrade (only in 5.6 -> 5.7 Oracle removed this
recommendation)
! For large databases this is serious issue to solve as
dumping and then loading data takes very long time
! Setting up new nodes and connecting them via the
replication may be needed to stay online for the duration
of the upgrade
29
Major version upgrade - MySQL
Copyright 2015 Severalnines AB
! In-place upgrade is possible (just run apt-get/yum) but
you have to be sure it works for you - tests have to be very
detailed
! We’ve seen databases haunted by issues long time after
the upgrade
! This is definitely not the best option to choose
30
Major version upgrade - MySQL
Copyright 2015 Severalnines AB
! Assuming you can’t take a
downtime for the duration of
the upgrade, step-by-step
approach is required
! First - build a new slave or use
one of currently used in the
topology (if the rest of them can
handle the workload)
! Stop the replication at a known
position
! Dump the data using
mysqldump, mydumper or any
other mean (SELECT INTO
OUTFILE)
31
Major version upgrade - MySQL
Copyright 2015 Severalnines AB
! Clean up the host - remove
MySQL data directory, remove
MySQL packages
! Install MySQL in the new version,
clean install
! Load the data
! Setup the host as a slave using
binlog position from the dump
! Let the new slave catch up with
the master (it can be even days
behind, all depends on the
dataset size and dump/load
speed)
32
Major version upgrade - MySQL
Copyright 2015 Severalnines AB
! Use binary backup
(xtrabackup/snapshots) to
upgrade other nodes
! Finally, failover to one of the
slaves with the new version
and upgrade the old
master
33
Major version upgrade - MySQL
Copyright 2015 Severalnines AB
! Galera cluster can be treated as a single MySQL instance
! Yet it is possible (given some precautions) to run with a mix
of versions in the cluster
! For larger data sets it may be not doable to dump/reload
data before gcache will be filled - after that SST will be
triggered
! Replication solves this problem - you can build a slave
and it will catch up even if initial lag is in days
34
Major version upgrade - Galera
Copyright 2015 Severalnines AB
! Beginning is similar to MySQL
replication - build a new
slave to Galera Cluster
! Dump the data on the slave
(keep in mind binlog
coordinates)
! Upgrade to the new
MySQL/Galera version
! Bootstrap the node as a
separate cluster
! Load the data
35
Major version upgrade - Galera
Copyright 2015 Severalnines AB
! Set it up as a slave to the
old Galera Cluster
! One by one, remove nodes
from the old cluster and
add them to the new one
! Upgrade MySQL/Galera to
the new version, wipe out
old data directory - nodes
will be provisioned by SST
36
Major version upgrade - Galera
Copyright 2015 Severalnines AB
! All the time you need to
ensure that the production
cluster (initially it will be old
version but later it will be
the new one) has enough
nodes to handle the traffic
! Finally, you will have to
switch production traffic to
the new Galera Cluster
37
Major version upgrade - Galera
Copyright 2015 Severalnines AB
! If you can dump and reload data while last applied writeset
still exists in gcache, you can try in-place upgrade
! Take the node off the cluster, dump, upgrade, reload, bring
it back to the cluster
! If IST executes, things are looking good
! Such node has to be read only - writeset replication may not
work from newer to older MySQL version
! If you also upgrade Galera (i.e. 2.x -> 3.x) some settings may
have to be added to my.cnf (socket.checksum for example)
38
Major version upgrade - Galera
Copyright 2015 Severalnines AB
! Plan your upgrade process
! Check if it works
! Test your application on new MySQL version
! Check for any regressions
! Execute your upgrade process
! Remember about warmup phase
39
Short summary
Copyright 2015 Severalnines AB
MySQL Upgrades and ClusterControl
40
Copyright 2015 Severalnines AB
! ClusterControl can be used to some extend to help you in
preparations for upgrade
! It’s also important to keep in mind few things when
upgrading clusters managed by ClusterControl
! Building a slave - ClusterControl has option to automate
slave provisioning for both MySQL replication and Galera
Cluster
41
MySQL Upgrades and ClusterControl
Copyright 2015 Severalnines AB
MySQL Upgrades and ClusterControl
42
! You can leverage it to
provision additional slave
which then be upgraded
manually to the new
version
! Remove the slave from
the cluster once you
setup new Galera there
! Add new Galera Cluster
to the ClusterControl
once it’s set up
Copyright 2015 Severalnines AB
! It is important to disable at least node recovery in the
ClusterControl when performing manual upgrades
! This is to prevent ClusterControl automated recovery from
interrupting upgrade process
! You can also use Nodes -> Node’s IP -> Shutdown Node to
stop MySQL on given host and ensure that ClusterControl
won’t start it again
43
MySQL Upgrades and ClusterControl
Copyright 2015 Severalnines AB
! More blogs in “Become a MySQL DBA” series:
! http://severalnines.com/blog/become-mysql-dba-
blog-series-optimizer-hints-faster-query-execution
! http://severalnines.com/blog/become-mysql-dba-
blog-series-understanding-mysql-error-log
! http://severalnines.com/blog/become-mysql-dba-
blog-series-galera-cluster-diagnostic-logs
! Contact: krzysztof@severalnines.com
44
Thank You!

Mais conteúdo relacionado

Mais procurados

Webinar slides: ClusterControl 1.4: The MySQL Replication & MongoDB Edition -...
Webinar slides: ClusterControl 1.4: The MySQL Replication & MongoDB Edition -...Webinar slides: ClusterControl 1.4: The MySQL Replication & MongoDB Edition -...
Webinar slides: ClusterControl 1.4: The MySQL Replication & MongoDB Edition -...
Severalnines
 
Webinar slides: How to Measure Database Availability?
Webinar slides: How to Measure Database Availability?Webinar slides: How to Measure Database Availability?
Webinar slides: How to Measure Database Availability?
Severalnines
 

Mais procurados (20)

Webinar slides: ClusterControl 1.4: The MySQL Replication & MongoDB Edition -...
Webinar slides: ClusterControl 1.4: The MySQL Replication & MongoDB Edition -...Webinar slides: ClusterControl 1.4: The MySQL Replication & MongoDB Edition -...
Webinar slides: ClusterControl 1.4: The MySQL Replication & MongoDB Edition -...
 
Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison
Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison
Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison
 
Webinar slides: How to Measure Database Availability?
Webinar slides: How to Measure Database Availability?Webinar slides: How to Measure Database Availability?
Webinar slides: How to Measure Database Availability?
 
Management and Automation of MongoDB Clusters - Slides
Management and Automation of MongoDB Clusters - SlidesManagement and Automation of MongoDB Clusters - Slides
Management and Automation of MongoDB Clusters - Slides
 
Slides: Severalnines ClusterControl 1.2.6 Webinar - May 2014
Slides: Severalnines ClusterControl 1.2.6 Webinar - May 2014Slides: Severalnines ClusterControl 1.2.6 Webinar - May 2014
Slides: Severalnines ClusterControl 1.2.6 Webinar - May 2014
 
MySQL Multi Master Replication
MySQL Multi Master ReplicationMySQL Multi Master Replication
MySQL Multi Master Replication
 
Webinar slides: Top 9 Tips for building a stable MySQL Replication environment
Webinar slides: Top 9 Tips for building a stable MySQL Replication environmentWebinar slides: Top 9 Tips for building a stable MySQL Replication environment
Webinar slides: Top 9 Tips for building a stable MySQL Replication environment
 
High Availability with MariaDB Enterprise
High Availability with MariaDB EnterpriseHigh Availability with MariaDB Enterprise
High Availability with MariaDB Enterprise
 
Webinar slides: Our Guide to MySQL & MariaDB Performance Tuning
Webinar slides: Our Guide to MySQL & MariaDB Performance TuningWebinar slides: Our Guide to MySQL & MariaDB Performance Tuning
Webinar slides: Our Guide to MySQL & MariaDB Performance Tuning
 
Drupal In The Cloud
Drupal In The CloudDrupal In The Cloud
Drupal In The Cloud
 
Geographically Distributed Multi-Master MySQL Clusters
Geographically Distributed Multi-Master MySQL ClustersGeographically Distributed Multi-Master MySQL Clusters
Geographically Distributed Multi-Master MySQL Clusters
 
What's new in MySQL Cluster 7.4 webinar charts
What's new in MySQL Cluster 7.4 webinar chartsWhat's new in MySQL Cluster 7.4 webinar charts
What's new in MySQL Cluster 7.4 webinar charts
 
Webinar slides: 9 DevOps Tips for Going in Production with Galera Cluster for...
Webinar slides: 9 DevOps Tips for Going in Production with Galera Cluster for...Webinar slides: 9 DevOps Tips for Going in Production with Galera Cluster for...
Webinar slides: 9 DevOps Tips for Going in Production with Galera Cluster for...
 
Galera 3.0 Webinar Slides: Galera Monitoring & Management
Galera 3.0 Webinar Slides: Galera Monitoring & ManagementGalera 3.0 Webinar Slides: Galera Monitoring & Management
Galera 3.0 Webinar Slides: Galera Monitoring & Management
 
Tales from the four-comma club: Managing Kafka as a service at Salesforce | L...
Tales from the four-comma club: Managing Kafka as a service at Salesforce | L...Tales from the four-comma club: Managing Kafka as a service at Salesforce | L...
Tales from the four-comma club: Managing Kafka as a service at Salesforce | L...
 
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
 
Technical Introduction to PostgreSQL and PPAS
Technical Introduction to PostgreSQL and PPASTechnical Introduction to PostgreSQL and PPAS
Technical Introduction to PostgreSQL and PPAS
 
Running Galera Cluster on Microsoft Azure
Running Galera Cluster on Microsoft AzureRunning Galera Cluster on Microsoft Azure
Running Galera Cluster on Microsoft Azure
 
Maria DB Galera Cluster for High Availability
Maria DB Galera Cluster for High AvailabilityMaria DB Galera Cluster for High Availability
Maria DB Galera Cluster for High Availability
 
9 DevOps Tips for Going in Production with Galera Cluster for MySQL - Slides
9 DevOps Tips for Going in Production with Galera Cluster for MySQL - Slides9 DevOps Tips for Going in Production with Galera Cluster for MySQL - Slides
9 DevOps Tips for Going in Production with Galera Cluster for MySQL - Slides
 

Semelhante a Become a MySQL DBA: performing live database upgrades - webinar slides

PHP North-East - Automated Deployment
PHP North-East - Automated DeploymentPHP North-East - Automated Deployment
PHP North-East - Automated Deployment
Michael Peacock
 

Semelhante a Become a MySQL DBA: performing live database upgrades - webinar slides (20)

Apama, Terracotta, webMethods Upgrade: Avoiding Common Pitfalls
Apama, Terracotta, webMethods Upgrade: Avoiding Common Pitfalls Apama, Terracotta, webMethods Upgrade: Avoiding Common Pitfalls
Apama, Terracotta, webMethods Upgrade: Avoiding Common Pitfalls
 
Best ofmms kb_final
Best ofmms kb_finalBest ofmms kb_final
Best ofmms kb_final
 
Best ofmms kb_final
Best ofmms kb_finalBest ofmms kb_final
Best ofmms kb_final
 
Code Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application MigrationsCode Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application Migrations
 
371780k
371780k371780k
371780k
 
Ansible
AnsibleAnsible
Ansible
 
PHP North-East - Automated Deployment
PHP North-East - Automated DeploymentPHP North-East - Automated Deployment
PHP North-East - Automated Deployment
 
Automated Deployment
Automated DeploymentAutomated Deployment
Automated Deployment
 
Tips_Tricks_for_Oracle_E-Business Suite_Database_Upgrade.pdf
Tips_Tricks_for_Oracle_E-Business Suite_Database_Upgrade.pdfTips_Tricks_for_Oracle_E-Business Suite_Database_Upgrade.pdf
Tips_Tricks_for_Oracle_E-Business Suite_Database_Upgrade.pdf
 
Getting Modern With MySQL
Getting Modern With MySQLGetting Modern With MySQL
Getting Modern With MySQL
 
Getting modern with my sql
Getting modern with my sqlGetting modern with my sql
Getting modern with my sql
 
MySQL HA Presentation
MySQL HA PresentationMySQL HA Presentation
MySQL HA Presentation
 
Sql server 2019 New Features by Yevhen Nedaskivskyi
Sql server 2019 New Features by Yevhen NedaskivskyiSql server 2019 New Features by Yevhen Nedaskivskyi
Sql server 2019 New Features by Yevhen Nedaskivskyi
 
IUG ATL PC 9.5
IUG ATL PC 9.5IUG ATL PC 9.5
IUG ATL PC 9.5
 
Migraine Drupal - syncing your staging and live sites
Migraine Drupal - syncing your staging and live sitesMigraine Drupal - syncing your staging and live sites
Migraine Drupal - syncing your staging and live sites
 
Database Upgrades Automation using Enterprise Manager 12c
Database Upgrades Automation using Enterprise Manager 12cDatabase Upgrades Automation using Enterprise Manager 12c
Database Upgrades Automation using Enterprise Manager 12c
 
5 Quick Wins for the Cloud
5 Quick Wins for the Cloud5 Quick Wins for the Cloud
5 Quick Wins for the Cloud
 
DATABASE AUTOMATION with Thousands of database, monitoring and backup
DATABASE AUTOMATION with Thousands of database, monitoring and backupDATABASE AUTOMATION with Thousands of database, monitoring and backup
DATABASE AUTOMATION with Thousands of database, monitoring and backup
 
Managing RightScale on RightScale
Managing RightScale on RightScaleManaging RightScale on RightScale
Managing RightScale on RightScale
 
Data Virtualization: Revolutionizing data cloning
Data Virtualization: Revolutionizing data cloningData Virtualization: Revolutionizing data cloning
Data Virtualization: Revolutionizing data cloning
 

Mais de Severalnines

Webinar slides: How to Migrate from Oracle DB to MariaDB
Webinar slides: How to Migrate from Oracle DB to MariaDBWebinar slides: How to Migrate from Oracle DB to MariaDB
Webinar slides: How to Migrate from Oracle DB to MariaDB
Severalnines
 
Webinar slides: How to Automate & Manage PostgreSQL with ClusterControl
Webinar slides: How to Automate & Manage PostgreSQL with ClusterControlWebinar slides: How to Automate & Manage PostgreSQL with ClusterControl
Webinar slides: How to Automate & Manage PostgreSQL with ClusterControl
Severalnines
 
Webinar slides: How to Manage Replication Failover Processes for MySQL, Maria...
Webinar slides: How to Manage Replication Failover Processes for MySQL, Maria...Webinar slides: How to Manage Replication Failover Processes for MySQL, Maria...
Webinar slides: How to Manage Replication Failover Processes for MySQL, Maria...
Severalnines
 
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...
Severalnines
 
Webinar slides: Free Monitoring (on Steroids) for MySQL, MariaDB, PostgreSQL ...
Webinar slides: Free Monitoring (on Steroids) for MySQL, MariaDB, PostgreSQL ...Webinar slides: Free Monitoring (on Steroids) for MySQL, MariaDB, PostgreSQL ...
Webinar slides: Free Monitoring (on Steroids) for MySQL, MariaDB, PostgreSQL ...
Severalnines
 
Webinar slides: An Introduction to Performance Monitoring for PostgreSQL
Webinar slides: An Introduction to Performance Monitoring for PostgreSQLWebinar slides: An Introduction to Performance Monitoring for PostgreSQL
Webinar slides: An Introduction to Performance Monitoring for PostgreSQL
Severalnines
 
Webinar slides: Migrating to Galera Cluster for MySQL and MariaDB
Webinar slides: Migrating to Galera Cluster for MySQL and MariaDBWebinar slides: Migrating to Galera Cluster for MySQL and MariaDB
Webinar slides: Migrating to Galera Cluster for MySQL and MariaDB
Severalnines
 
Webinar slides: Designing Open Source Databases for High Availability
Webinar slides: Designing Open Source Databases for High AvailabilityWebinar slides: Designing Open Source Databases for High Availability
Webinar slides: Designing Open Source Databases for High Availability
Severalnines
 
Webinar slides: How to Get Started with Open Source Database Management
Webinar slides: How to Get Started with Open Source Database ManagementWebinar slides: How to Get Started with Open Source Database Management
Webinar slides: How to Get Started with Open Source Database Management
Severalnines
 
Webinar slides: How to Achieve PCI Compliance for MySQL & MariaDB with Cluste...
Webinar slides: How to Achieve PCI Compliance for MySQL & MariaDB with Cluste...Webinar slides: How to Achieve PCI Compliance for MySQL & MariaDB with Cluste...
Webinar slides: How to Achieve PCI Compliance for MySQL & MariaDB with Cluste...
Severalnines
 
Webinar slides: Severalnines & MariaDB present: Automation & Management of Ma...
Webinar slides: Severalnines & MariaDB present: Automation & Management of Ma...Webinar slides: Severalnines & MariaDB present: Automation & Management of Ma...
Webinar slides: Severalnines & MariaDB present: Automation & Management of Ma...
Severalnines
 

Mais de Severalnines (20)

Cloud's future runs through Sovereign DBaaS
Cloud's future runs through Sovereign DBaaSCloud's future runs through Sovereign DBaaS
Cloud's future runs through Sovereign DBaaS
 
Working with the Moodle Database: The Basics
Working with the Moodle Database: The BasicsWorking with the Moodle Database: The Basics
Working with the Moodle Database: The Basics
 
SysAdmin Working from Home? Tips to Automate MySQL, MariaDB, Postgres & MongoDB
SysAdmin Working from Home? Tips to Automate MySQL, MariaDB, Postgres & MongoDBSysAdmin Working from Home? Tips to Automate MySQL, MariaDB, Postgres & MongoDB
SysAdmin Working from Home? Tips to Automate MySQL, MariaDB, Postgres & MongoDB
 
(slides) Polyglot persistence: utilizing open source databases as a Swiss poc...
(slides) Polyglot persistence: utilizing open source databases as a Swiss poc...(slides) Polyglot persistence: utilizing open source databases as a Swiss poc...
(slides) Polyglot persistence: utilizing open source databases as a Swiss poc...
 
Webinar slides: How to Migrate from Oracle DB to MariaDB
Webinar slides: How to Migrate from Oracle DB to MariaDBWebinar slides: How to Migrate from Oracle DB to MariaDB
Webinar slides: How to Migrate from Oracle DB to MariaDB
 
Webinar slides: How to Automate & Manage PostgreSQL with ClusterControl
Webinar slides: How to Automate & Manage PostgreSQL with ClusterControlWebinar slides: How to Automate & Manage PostgreSQL with ClusterControl
Webinar slides: How to Automate & Manage PostgreSQL with ClusterControl
 
Webinar slides: How to Manage Replication Failover Processes for MySQL, Maria...
Webinar slides: How to Manage Replication Failover Processes for MySQL, Maria...Webinar slides: How to Manage Replication Failover Processes for MySQL, Maria...
Webinar slides: How to Manage Replication Failover Processes for MySQL, Maria...
 
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...
 
Disaster Recovery Planning for MySQL & MariaDB
Disaster Recovery Planning for MySQL & MariaDBDisaster Recovery Planning for MySQL & MariaDB
Disaster Recovery Planning for MySQL & MariaDB
 
MariaDB Performance Tuning Crash Course
MariaDB Performance Tuning Crash CourseMariaDB Performance Tuning Crash Course
MariaDB Performance Tuning Crash Course
 
Performance Tuning Cheat Sheet for MongoDB
Performance Tuning Cheat Sheet for MongoDBPerformance Tuning Cheat Sheet for MongoDB
Performance Tuning Cheat Sheet for MongoDB
 
Advanced MySql Data-at-Rest Encryption in Percona Server
Advanced MySql Data-at-Rest Encryption in Percona ServerAdvanced MySql Data-at-Rest Encryption in Percona Server
Advanced MySql Data-at-Rest Encryption in Percona Server
 
Polyglot Persistence Utilizing Open Source Databases as a Swiss Pocket Knife
Polyglot Persistence Utilizing Open Source Databases as a Swiss Pocket KnifePolyglot Persistence Utilizing Open Source Databases as a Swiss Pocket Knife
Polyglot Persistence Utilizing Open Source Databases as a Swiss Pocket Knife
 
Webinar slides: Free Monitoring (on Steroids) for MySQL, MariaDB, PostgreSQL ...
Webinar slides: Free Monitoring (on Steroids) for MySQL, MariaDB, PostgreSQL ...Webinar slides: Free Monitoring (on Steroids) for MySQL, MariaDB, PostgreSQL ...
Webinar slides: Free Monitoring (on Steroids) for MySQL, MariaDB, PostgreSQL ...
 
Webinar slides: An Introduction to Performance Monitoring for PostgreSQL
Webinar slides: An Introduction to Performance Monitoring for PostgreSQLWebinar slides: An Introduction to Performance Monitoring for PostgreSQL
Webinar slides: An Introduction to Performance Monitoring for PostgreSQL
 
Webinar slides: Migrating to Galera Cluster for MySQL and MariaDB
Webinar slides: Migrating to Galera Cluster for MySQL and MariaDBWebinar slides: Migrating to Galera Cluster for MySQL and MariaDB
Webinar slides: Migrating to Galera Cluster for MySQL and MariaDB
 
Webinar slides: Designing Open Source Databases for High Availability
Webinar slides: Designing Open Source Databases for High AvailabilityWebinar slides: Designing Open Source Databases for High Availability
Webinar slides: Designing Open Source Databases for High Availability
 
Webinar slides: How to Get Started with Open Source Database Management
Webinar slides: How to Get Started with Open Source Database ManagementWebinar slides: How to Get Started with Open Source Database Management
Webinar slides: How to Get Started with Open Source Database Management
 
Webinar slides: How to Achieve PCI Compliance for MySQL & MariaDB with Cluste...
Webinar slides: How to Achieve PCI Compliance for MySQL & MariaDB with Cluste...Webinar slides: How to Achieve PCI Compliance for MySQL & MariaDB with Cluste...
Webinar slides: How to Achieve PCI Compliance for MySQL & MariaDB with Cluste...
 
Webinar slides: Severalnines & MariaDB present: Automation & Management of Ma...
Webinar slides: Severalnines & MariaDB present: Automation & Management of Ma...Webinar slides: Severalnines & MariaDB present: Automation & Management of Ma...
Webinar slides: Severalnines & MariaDB present: Automation & Management of Ma...
 

Último

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Último (20)

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 

Become a MySQL DBA: performing live database upgrades - webinar slides

  • 1. 1 Your host & some logistics I'm Jean-Jérôme from the Severalnines Team and I'm your host for today's webinar! Feel free to ask any questions in the Questions section of this application or via the Chat box. You can also contact me directly via the chat box or via email: jj@severalnines.com during or after the webinar.
  • 2. Confidential Copyright 2013 Severalnines AB ClusterControl Overview 2
  • 3. Confidential Copyright 2012 Severalnines AB ClusterControl
 In a nutshell 3 Manage Scale MonitorDeploy
  • 4. Confidential Copyright Severalnines AB ClusterControl
 Automation & Management ! Provisioning ! Deploy a cluster in minutes ! On-premises or in the cloud (AWS) ! Monitoring ! Systems view ! 1sec resolution ! DB / OS stats & performance advisors ! Configurable dashboards ! Query Analyzer ! Real-time / historical 4
  • 5. Confidential Copyright Severalnines AB ClusterControl
 Automation & Management ! Management ! Multi cluster/data-center ! Automate repair/recovery ! Database upgrades ! Backups ! Configuration management ! Cloning ! One-click scaling 5
  • 6. Confidential Copyright Severalnines AB Supported Databases SQL ! MySQL (Oracle/Percona/ MariaDB) ! MySQL Galera Cluster ! MySQL Cluster (NDB) ! MariaDB Cluster ! MySQL Replication 5.6 ! Standalone MySQL/MariaDB ! Postgres 9.4 NoSQL ! Percona TokuMX Cluster ! MongoDB Sharded Cluster ! MongoDB Replica Set 6
  • 8. Copyright 2015 Severalnines AB Performing MySQL database upgrades in Replication and Galera setups November 24, 2015 Krzysztof Książek Severalnines krzysztof@severalnines.com 8
  • 9. Copyright 2015 Severalnines AB ! We want to help all non-DBA people who look after MySQL infrastructures ! Share tips and good practices ! Watch the replays of the previous webinars on our Slideshare page ! http://www.slideshare.net/Severalnines/videos 9 “Become a MySQL DBA” series
  • 10. Copyright 2015 Severalnines AB ! Why upgrade? ! Different types of upgrade ! How to prepare for an upgrade ! Minor version upgrade ! for MySQL and Galera ! Major version upgrade ! for MySQL and Galera ! ClusterControl and MySQL upgrades
 
 10 Agenda
  • 11. Copyright 2015 Severalnines AB Why upgrade? 11
  • 12. Copyright 2015 Severalnines AB ! Security incidents and downtimes related to bugs can induce high costs ! Patches and upgrades require constant attention - these have to be installed on a regular basis to protect systems from known stability problems or security holes. ! Many companies are failing to do this ! On the next slide you can find some interesting exceptions from MySQL 5.6.27 changelog 12 Why upgrade?
  • 13. Copyright 2015 Severalnines AB ! InnoDB: Setting lower_case_table_names=0 on a case-insensitive file system could result in a hang condition when running an INSERT INTO ... SELECT ... FROM tbl_name operation with the wrong tbl_name letter case. ! Replication: Repeatedly checking for ERR_LOCK_WAIT_TIMEOUT (as done, for example by repeatedly executing SHOW SLAVE STATUS) during a prolonged write lock on a table led to an assert. ! An assertion could be raised due to incorrect error handling if a SELECT ... FOR UPDATE subquery resulted in deadlock and caused a rollback. ! DELETE could check privileges for the wrong database when table aliases were used.
 13 Why upgrade?
  • 14. Copyright 2015 Severalnines AB ! MySQL 5.6.27 (2015-09-30) ! MySQL 5.6.26 (2015-07-24) ! MySQL 5.6.25 (2015-05-29) ! MySQL 5.6.24 (2015-04-06) ! MySQL 5.6.23 (2015-02-02) ! MySQL 5.6.22 (2014-12-01) ! MySQL 5.6.21 (2014-09-23) ! MySQL 5.6.20 (2014-07-31)
 14 Why upgrade?
  • 15. Copyright 2015 Severalnines AB Different types of upgrade 15
  • 16. Copyright 2015 Severalnines AB ! Minor version upgrades ! MySQL 5.6.x -> 5.6.y ! Versions should be compatible with regards to features ! Backward compatibility should be maintained ! The biggest concern is performance - execution plans may change, MySQL host has to be restarted 16 Different types of upgrade
  • 17. Copyright 2015 Severalnines AB ! Major version upgrades ! 5.x -> 5.y or even x.y -> a.b (for example 4.1 -> 5.7) ! Everything may have been changed ! Changes may be incompatible ! Extensive testing is required ! Read through the documents covering upgrade process 17 Different types of upgrade
  • 18. Copyright 2015 Severalnines AB How to prepare for an upgrade? 18
  • 19. Copyright 2015 Severalnines AB ! We’ll focus on major version upgrade as it has much bigger potential to impact your workload than simple 5.6.x -> 5.6.y upgrade ! First step - plan your upgrade process. Will you use logical dumps or binary in-place upgrade? Are you going to use a slave? ! Test your plan - is it doable? Did everything work as planned? Sometimes differences between versions make some upgrade plans impossible to execute 19 How to prepare for an upgrade?
  • 20. Copyright 2015 Severalnines AB ! Once you have a test database on a new version, upgraded in a way you plan to upgrade production, it’s time to run further test ! You need to check if app works ok with a new version of the database ! Check for both logical issues and performance regressions ! More profiling you can do from within your app (or external tool like New Relic), more data to compare 20 How to prepare for an upgrade?
  • 21. Copyright 2015 Severalnines AB ! Performance regressions ! Some settings may need to be tuned differently ! Query execution plans may change from version to version ! Logical issues ! Implicit row order may differ ! SQL syntax may have changed 21 How to prepare for an upgrade?
  • 22. Copyright 2015 Severalnines AB ! Minor version upgrades should be compatible (after GA) ! They tend to contain bug fixes and some simple improvements ! Ideally, you’d perform the same suite of tests like you’d perform when upgrading 5.x -> 5.y ! As a minimum, check for performance regressions ! Plan for warming up the node - MySQL restart will be required 22 How to prepare for an upgrade?
  • 23. Copyright 2015 Severalnines AB ! pt-upgrade is one of tools you can use to automate regression testing ! It uses data from slow log and replay them on two MySQL nodes (i.e. running old and new version) ! Queries are checked (among others) for the execution time and their result set (missing rows, incorrect order) ! Helps DBA to pinpoint regressions and potential issues 23 How to prepare for an upgrade?
  • 24. Copyright 2015 Severalnines AB Minor version upgrade 24
  • 25. Copyright 2015 Severalnines AB ! This process involves performing binary upgrade ! apt-get, yum, binary package - depending on the distro ! Once you perform binary upgrade, keep in mind to run mysql_upgrade script ! It’s designed to check schemas for any possible incompatibilities and fix them if needed 25 Minor version upgrade - MySQL and Galera
  • 26. Copyright 2015 Severalnines AB ! You want to go slave by slave, upgrading them serially ! Keep the majority of traffic off upgraded slave to allow it to warm up ! You can preload buffer pool data (available in Oracle’s MySQL 5.6 and Percona Server for MySQL 5.5) to minimize the impact ! Keep in mind that the rest of the environment will have to handle higher load for the duration of upgrade and warmup phase ! Once you upgraded all the slaves, failover needs to be performed and then, finally, old master has to be upgraded
 26 Minor version upgrade - MySQL
  • 27. Copyright 2015 Severalnines AB ! You want to perform upgrade node by node ! Nodes will have to be restarted so traffic needs to be steered out of them for the duration of a maintenance ! Warmup phase applies here too - ensure that upgraded node is warmed up correctly ! Again, preloading buffer pool may speed up the process significantly 27 Minor version upgrade - Galera
  • 28. Copyright 2015 Severalnines AB Major version upgrade 28
  • 29. Copyright 2015 Severalnines AB ! Much more complex process ! Logical upgrade is a recommended way to perform upgrade (only in 5.6 -> 5.7 Oracle removed this recommendation) ! For large databases this is serious issue to solve as dumping and then loading data takes very long time ! Setting up new nodes and connecting them via the replication may be needed to stay online for the duration of the upgrade 29 Major version upgrade - MySQL
  • 30. Copyright 2015 Severalnines AB ! In-place upgrade is possible (just run apt-get/yum) but you have to be sure it works for you - tests have to be very detailed ! We’ve seen databases haunted by issues long time after the upgrade ! This is definitely not the best option to choose 30 Major version upgrade - MySQL
  • 31. Copyright 2015 Severalnines AB ! Assuming you can’t take a downtime for the duration of the upgrade, step-by-step approach is required ! First - build a new slave or use one of currently used in the topology (if the rest of them can handle the workload) ! Stop the replication at a known position ! Dump the data using mysqldump, mydumper or any other mean (SELECT INTO OUTFILE) 31 Major version upgrade - MySQL
  • 32. Copyright 2015 Severalnines AB ! Clean up the host - remove MySQL data directory, remove MySQL packages ! Install MySQL in the new version, clean install ! Load the data ! Setup the host as a slave using binlog position from the dump ! Let the new slave catch up with the master (it can be even days behind, all depends on the dataset size and dump/load speed) 32 Major version upgrade - MySQL
  • 33. Copyright 2015 Severalnines AB ! Use binary backup (xtrabackup/snapshots) to upgrade other nodes ! Finally, failover to one of the slaves with the new version and upgrade the old master 33 Major version upgrade - MySQL
  • 34. Copyright 2015 Severalnines AB ! Galera cluster can be treated as a single MySQL instance ! Yet it is possible (given some precautions) to run with a mix of versions in the cluster ! For larger data sets it may be not doable to dump/reload data before gcache will be filled - after that SST will be triggered ! Replication solves this problem - you can build a slave and it will catch up even if initial lag is in days 34 Major version upgrade - Galera
  • 35. Copyright 2015 Severalnines AB ! Beginning is similar to MySQL replication - build a new slave to Galera Cluster ! Dump the data on the slave (keep in mind binlog coordinates) ! Upgrade to the new MySQL/Galera version ! Bootstrap the node as a separate cluster ! Load the data 35 Major version upgrade - Galera
  • 36. Copyright 2015 Severalnines AB ! Set it up as a slave to the old Galera Cluster ! One by one, remove nodes from the old cluster and add them to the new one ! Upgrade MySQL/Galera to the new version, wipe out old data directory - nodes will be provisioned by SST 36 Major version upgrade - Galera
  • 37. Copyright 2015 Severalnines AB ! All the time you need to ensure that the production cluster (initially it will be old version but later it will be the new one) has enough nodes to handle the traffic ! Finally, you will have to switch production traffic to the new Galera Cluster 37 Major version upgrade - Galera
  • 38. Copyright 2015 Severalnines AB ! If you can dump and reload data while last applied writeset still exists in gcache, you can try in-place upgrade ! Take the node off the cluster, dump, upgrade, reload, bring it back to the cluster ! If IST executes, things are looking good ! Such node has to be read only - writeset replication may not work from newer to older MySQL version ! If you also upgrade Galera (i.e. 2.x -> 3.x) some settings may have to be added to my.cnf (socket.checksum for example) 38 Major version upgrade - Galera
  • 39. Copyright 2015 Severalnines AB ! Plan your upgrade process ! Check if it works ! Test your application on new MySQL version ! Check for any regressions ! Execute your upgrade process ! Remember about warmup phase 39 Short summary
  • 40. Copyright 2015 Severalnines AB MySQL Upgrades and ClusterControl 40
  • 41. Copyright 2015 Severalnines AB ! ClusterControl can be used to some extend to help you in preparations for upgrade ! It’s also important to keep in mind few things when upgrading clusters managed by ClusterControl ! Building a slave - ClusterControl has option to automate slave provisioning for both MySQL replication and Galera Cluster 41 MySQL Upgrades and ClusterControl
  • 42. Copyright 2015 Severalnines AB MySQL Upgrades and ClusterControl 42 ! You can leverage it to provision additional slave which then be upgraded manually to the new version ! Remove the slave from the cluster once you setup new Galera there ! Add new Galera Cluster to the ClusterControl once it’s set up
  • 43. Copyright 2015 Severalnines AB ! It is important to disable at least node recovery in the ClusterControl when performing manual upgrades ! This is to prevent ClusterControl automated recovery from interrupting upgrade process ! You can also use Nodes -> Node’s IP -> Shutdown Node to stop MySQL on given host and ensure that ClusterControl won’t start it again 43 MySQL Upgrades and ClusterControl
  • 44. Copyright 2015 Severalnines AB ! More blogs in “Become a MySQL DBA” series: ! http://severalnines.com/blog/become-mysql-dba- blog-series-optimizer-hints-faster-query-execution ! http://severalnines.com/blog/become-mysql-dba- blog-series-understanding-mysql-error-log ! http://severalnines.com/blog/become-mysql-dba- blog-series-galera-cluster-diagnostic-logs ! Contact: krzysztof@severalnines.com 44 Thank You!