SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
How To Manage & Tune
MySQL
Mark Swarbrick
Principle Presales Consultant
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Safe Harbor Statement
The following is intended to outline our general product direction. It is intended for
information purposes only, and may not be incorporated into any contract. It is not a
commitment to deliver any material, code, or functionality, and should not be relied upon
in making purchasing decisions. The development, release, and timing of any features or
functionality described for Oracle’s products remains at the sole discretion of Oracle.
3
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Manage & Tune MySQL
Tuning Considerations + Go-live factors to consider
4
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Tuning + Go-Live
Considerations
5
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Performance Testing – How to measure success
Monitoring – Make sure you are monitoring the correct metrics
Backup Strategy – Will your backups be suitable for purpose?
High Availability – Does the uptime requirement match the design?
Failover – Have you got the policies and procedures in place to failover to
a backup data center or server?
Growth – Have you planned for growth of data and throughput?
Tuning – How to tune and monitor for performance
6
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
MySQL Performance Schema
• Identify performance bottlenecks
• Identify problematic queries
• Get real time insight into locks
• See exactly what is happening
within MySQL
• Get real time insight into MySQL
internals
• Get real time insight into query
executions
7
mysql> select * from host_summary_by_stages;
+------+--------------------------------+-------+-----------+-----------+
| host | event_name | total | wait_sum | wait_avg |
+------+--------------------------------+-------+-----------+-----------+
| hal | stage/sql/Opening tables | 889 | 1.97 ms | 2.22 us |
| hal | stage/sql/Creating sort index | 4 | 1.79 ms | 446.30 us |
| hal | stage/sql/init | 10 | 312.27 us | 31.23 us |
| hal | stage/sql/checking permissions | 10 | 300.62 us | 30.06 us |
| hal | stage/sql/freeing items | 5 | 85.89 us | 17.18 us |
| hal | stage/sql/statistics | 5 | 79.15 us | 15.83 us |
| hal | stage/sql/preparing | 5 | 69.12 us | 13.82 us |
| hal | stage/sql/optimizing | 5 | 53.11 us | 10.62 us |
| hal | stage/sql/Sending data | 5 | 44.66 us | 8.93 us |
| hal | stage/sql/closing tables | 5 | 37.54 us | 7.51 us |
| hal | stage/sql/System lock | 5 | 34.28 us | 6.86 us |
| hal | stage/sql/query end | 5 | 24.37 us | 4.87 us |
| hal | stage/sql/end | 5 | 8.60 us | 1.72 us |
| hal | stage/sql/Sorting result | 5 | 8.33 us | 1.67 us |
| hal | stage/sql/executing | 5 | 5.37 us | 1.07 us |
| hal | stage/sql/cleaning up | 5 | 4.60 us | 919.00 ns |
+------+--------------------------------+-------+-----------+-----------+
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
MySQL Workbench Overview
• MySQL Database IDE
• Millions of Downloads
• Windows, OS X, Linux
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Workbench 6.0
New Look, Redesigned GUI, Simplified Workflow
• Home Screen, Managing Connections, Edit & Admin, Color Scheme, Icons
For Developers
• Schema Inspector, Maintenance, Cascading Delete, Vertical Results, Table Data Search, Context Sensitive Help, Table Templates
For Migration
• New Sybase Anywhere, SQLite
For Administrators
• Server Status / Server Data, Backup GUI, Audit Log Inspector
For Design
• Improved Synchronization, Improved model printing to PDF files
What’s New
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Performance Tasks
In Workbench
Monitor
Assess
OptimizeTune
Configure
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Start by looking at Server Status
 Management Tab – Server Status
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Basics
• Enabled/Disabled
Features
 Directory Setup
 On best disks?
 Adequate space?
 Slow Query Log On?
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Performance Testing – How to measure success
Monitoring – Make sure you are monitoring the correct metrics
Availability
Use a decent query
Logs
Logs filling up disk space
Slow query log filling space
Disk Space
Disks getting full is the most common problem
Ideally alarm on how soon disk space changes rather than absolute disk space
13
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Performance Testing – How to measure success
Monitoring – Make sure you are monitoring the correct metrics
Stalls / Spikes
Table Locks
CPU Spikes
Memory Paging
Connections
Are you reaching max_connections limit?
Can the application connect?
Processes
Long running Processes
14
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Performance Testing – How to measure success
Monitoring – Make sure you are monitoring the correct metrics
Transactions
Long running or long idle transactions
Queued transactions (size of trans queue) (show innodb status)
Replication
Is Replication running
Whats the replication lag
15
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Performance Testing – How to measure success
Monitoring – Make sure you are monitoring the correct metrics
Query Performance
Top Queries to optimise – (interactive monitor not generate alerts on)
Response time outliers
Queries not using index
Queries using full/ partial scans / table scans
Queries that return errors / warning
Operational Aspects
Server restarts
Server config change events
Messages in the error Log
16
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Backup Strategy – Will your backups be suitable for purpose
MySQLdump - It can be used to dump a database or a collection of databases for backup or transfer to
another SQL server (not necessarily a MySQL server). The dump typically contains SQL statements to
create the table, populate it, or both. However, mysqldumpcan also be used to generate files in CSV,
other delimited text, or XML format.
MySQL Enterprise Backup - "Hot" Online Backups - Backups take place entirely online, without
interrupting MySQL transactions
High Performance - Save time with faster backup and recovery
Incremental Backup - Backup only data that has changed since the last backup
Partial Backup - Target particular tables or tablespaces
Full Instance Backup - Backs up data, as well as configuration and other information to easily create a
complete "replica"
17
MySQL Backup Types: Comparison
mysqldump LVM Snapshots MySQL Replication MySQL Enterprise Backup
Full Backup ✔ ✔ ✔ ✔
Incremental Backups ✖ ✔ ✖ ✔
Partial Backups ✔ ✖ ✖ ✔
Compression Support ✖ ✖ ✖ ✔
Allows updates ✖ ✖ ✔ ✔
Point in Time - Consistent ✖ ✔ ✔ ✔
Backup Speed Poor Good Very Good Very Good
Recovery Speed Very Poor Good Very Good Very Good
Partial Restore ✔ ✖ ✖ ✔
LZ4 Compression ✖ ✔
AES 256 Encryption ✖ ✔
Corruption Detection ✔ ✖ ✖ ✔
Meets Regulatory Archive
Req.
✔ ✖ ✖ ✔
Supports DDL ✔ ✖ ✖ ✔
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
High Availability – Does the uptime requirements match the design?
See Planning for outages section ;-) But always good to refer back to the
original design spec!
19
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Failover – Have you got the policies and
procedures in place to failover to a backup
data center or server?
Most HA strategies fail not due to the
hardware or software, but to the lack of
awareness and testing of policies and
procedures in place!
20
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Growth – Have you planned for growth of data and throughput?
21
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Tuning – How to tune and monitor for performance
22
Hardware
Config Options
Schema
InnoDB
Performance Monitoring
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Hardware
Schema Changes
Data Growth
Indexes
SQL
90% of
Performance Problems
Source of Database Performance Problems
23
Hardware: The Perfect MySQL Server
• The more cores the better (especially for 5.5 and later)
• x86_64 - 64 bit for more memory is important
– The more the better
• Fast HD (10-15k RPM SATA) or NAS/SAN……
– RAID 10 for most, RAID 5 OK if very read intensive
– Hardware RAID battery backed up cache critical!
– More disks are always better! - 4+ recommended, 8-16 can increase IO
• …Or SSD (for higher throughput)
– Intel, Fusion-IO good choices; good option for Slaves
• At least 2 x NICs for redundancy
• Slaves should be as powerful as the Master
Config Options
The MySQL server is controlled by “System Variables”
• Set Via:
– my.cnf / my.ini
– SET [GLOBAL] <variable>=<value>
– client, i.e mysql
• Can be local (session) or global
The World’s Most Popular Open Source DatabaseCopyright 2010 Oracle
The World’s Most Popular Open Source DatabaseCopyright 2010 Oracle
Schemas
• Size = performance, smaller is better
– Size right! Do not automatically use 255 for VARCHAR
• Temp tables, most caches, expand to full size
• Use “procedure analyse” to determine the optimal types given the values in your table
– http://dev.mysql.com/doc/refman/5.1/en/procedure-analyse.html
– mysql> select * from tab procedure analyse (64,2000) G
• Consider the types:
– enum : http://dev.mysql.com/doc/refman/5.1/en/enum.html
– set : http://dev.mysql.com/doc/refman/5.1/en/set.html
• Compress large strings
– Use the MySQL COMPRESS and UNCOMPRESS functions
The World’s Most Popular Open Source DatabaseCopyright 2010 Oracle
InnoDB Tuning
• Unlike MyISAM - InnoDB uses a single cache for both index and data
– innodb_buffer_pool_size - should be 70-80% of available memory.
– It is not uncommon for this to be very large, i.e. 34GB on a system with 40GB of memory
– Make sure its not set so large as to cause swapping!
– mysql>show status like 'Innodb_buffer%' ;
• InnoDB can use direct IO on systems that support it - Linux, FreeBSD, and Solaris
– innodb_flush_method = O_DIRECT
• For more InnoDB tuning see
– http://dev.mysql.com/doc/refman/5.1/en/innodb-tuning-troubleshooting.html
A Virtual MySQL DBA Assistant!
 Web-based, global view of
MySQL/Cluster applications (on-
premise and Cloud deployments)
 Automated, rules-based monitoring
and alerts (SMTP, SNMP enabled)
 Query capture, monitoring, analysis
and tuning, correlated with Monitor
graphs
 Real-time Replication Monitor with
auto-discovery of master-slave
topologies
 Integrated with Oracle Support
MySQL Enterprise Monitor
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Thank You!
29
MySQL Tech Tour 2015 - Manage & Tune

Weitere ähnliche Inhalte

Was ist angesagt?

Introduction to MySQL
Introduction to MySQLIntroduction to MySQL
Introduction to MySQLTed Wennmark
 
MySQL Tech Tour 2015 - 5.7 Whats new
MySQL Tech Tour 2015 - 5.7 Whats newMySQL Tech Tour 2015 - 5.7 Whats new
MySQL Tech Tour 2015 - 5.7 Whats newMark Swarbrick
 
MySQL Enterprise Backup apr 2016
MySQL Enterprise Backup apr 2016MySQL Enterprise Backup apr 2016
MySQL Enterprise Backup apr 2016Ted Wennmark
 
MySQL Enterprise Monitor
MySQL Enterprise MonitorMySQL Enterprise Monitor
MySQL Enterprise MonitorTed Wennmark
 
MySQL 5.6, news in 5.7 and our HA options
MySQL 5.6, news in 5.7 and our HA optionsMySQL 5.6, news in 5.7 and our HA options
MySQL 5.6, news in 5.7 and our HA optionsTed Wennmark
 
MySQL 5.7 Replication News
MySQL 5.7 Replication News MySQL 5.7 Replication News
MySQL 5.7 Replication News Ted Wennmark
 
MySQL Enterprise Edition Overview
MySQL Enterprise Edition OverviewMySQL Enterprise Edition Overview
MySQL Enterprise Edition OverviewMario Beck
 
MySQL Enterprise Monitor
MySQL Enterprise MonitorMySQL Enterprise Monitor
MySQL Enterprise MonitorMario Beck
 
Oracle Enterprise Manager for MySQL
Oracle Enterprise Manager for MySQLOracle Enterprise Manager for MySQL
Oracle Enterprise Manager for MySQLMario Beck
 
Mysql user-camp-march-11th-2016
Mysql user-camp-march-11th-2016Mysql user-camp-march-11th-2016
Mysql user-camp-march-11th-2016Harin Vadodaria
 
MySQL Cloud Service
MySQL Cloud ServiceMySQL Cloud Service
MySQL Cloud ServiceMario Beck
 
MySQL 5.7: What's New, Nov. 2015
MySQL 5.7: What's New, Nov. 2015MySQL 5.7: What's New, Nov. 2015
MySQL 5.7: What's New, Nov. 2015Mario Beck
 
MySQL Manchester TT - 5.7 Whats new
MySQL Manchester TT - 5.7 Whats newMySQL Manchester TT - 5.7 Whats new
MySQL Manchester TT - 5.7 Whats newMark Swarbrick
 
MySQL 5.7: Focus on Replication
MySQL 5.7: Focus on ReplicationMySQL 5.7: Focus on Replication
MySQL 5.7: Focus on ReplicationMario Beck
 
MySQL Enterprise Backup
MySQL Enterprise BackupMySQL Enterprise Backup
MySQL Enterprise BackupMario Beck
 
What's new in my sql smug
What's new in my sql smugWhat's new in my sql smug
What's new in my sql smugTed Wennmark
 
MySQL Intro JSON NoSQL
MySQL Intro JSON NoSQLMySQL Intro JSON NoSQL
MySQL Intro JSON NoSQLMark Swarbrick
 
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud Service
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud ServiceMySQL Day Paris 2016 - Introducing Oracle MySQL Cloud Service
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud ServiceOlivier DASINI
 
MySQL Document Store
MySQL Document StoreMySQL Document Store
MySQL Document StoreMario Beck
 

Was ist angesagt? (20)

Introduction to MySQL
Introduction to MySQLIntroduction to MySQL
Introduction to MySQL
 
MySQL Tech Tour 2015 - 5.7 Whats new
MySQL Tech Tour 2015 - 5.7 Whats newMySQL Tech Tour 2015 - 5.7 Whats new
MySQL Tech Tour 2015 - 5.7 Whats new
 
MySQL Enterprise Backup apr 2016
MySQL Enterprise Backup apr 2016MySQL Enterprise Backup apr 2016
MySQL Enterprise Backup apr 2016
 
MySQL Enterprise Monitor
MySQL Enterprise MonitorMySQL Enterprise Monitor
MySQL Enterprise Monitor
 
MySQL 5.6, news in 5.7 and our HA options
MySQL 5.6, news in 5.7 and our HA optionsMySQL 5.6, news in 5.7 and our HA options
MySQL 5.6, news in 5.7 and our HA options
 
MySQL 5.7 Replication News
MySQL 5.7 Replication News MySQL 5.7 Replication News
MySQL 5.7 Replication News
 
MySQL Enterprise Edition Overview
MySQL Enterprise Edition OverviewMySQL Enterprise Edition Overview
MySQL Enterprise Edition Overview
 
MySQL Enterprise Monitor
MySQL Enterprise MonitorMySQL Enterprise Monitor
MySQL Enterprise Monitor
 
Oracle Enterprise Manager for MySQL
Oracle Enterprise Manager for MySQLOracle Enterprise Manager for MySQL
Oracle Enterprise Manager for MySQL
 
Mysql user-camp-march-11th-2016
Mysql user-camp-march-11th-2016Mysql user-camp-march-11th-2016
Mysql user-camp-march-11th-2016
 
NoSQL and MySQL
NoSQL and MySQLNoSQL and MySQL
NoSQL and MySQL
 
MySQL Cloud Service
MySQL Cloud ServiceMySQL Cloud Service
MySQL Cloud Service
 
MySQL 5.7: What's New, Nov. 2015
MySQL 5.7: What's New, Nov. 2015MySQL 5.7: What's New, Nov. 2015
MySQL 5.7: What's New, Nov. 2015
 
MySQL Manchester TT - 5.7 Whats new
MySQL Manchester TT - 5.7 Whats newMySQL Manchester TT - 5.7 Whats new
MySQL Manchester TT - 5.7 Whats new
 
MySQL 5.7: Focus on Replication
MySQL 5.7: Focus on ReplicationMySQL 5.7: Focus on Replication
MySQL 5.7: Focus on Replication
 
MySQL Enterprise Backup
MySQL Enterprise BackupMySQL Enterprise Backup
MySQL Enterprise Backup
 
What's new in my sql smug
What's new in my sql smugWhat's new in my sql smug
What's new in my sql smug
 
MySQL Intro JSON NoSQL
MySQL Intro JSON NoSQLMySQL Intro JSON NoSQL
MySQL Intro JSON NoSQL
 
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud Service
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud ServiceMySQL Day Paris 2016 - Introducing Oracle MySQL Cloud Service
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud Service
 
MySQL Document Store
MySQL Document StoreMySQL Document Store
MySQL Document Store
 

Andere mochten auch

Diagnosing MySQL performance problems
Diagnosing  MySQL performance problemsDiagnosing  MySQL performance problems
Diagnosing MySQL performance problemsJustin Swanhart
 
Drupal7 theming-cheatsheet 0
Drupal7 theming-cheatsheet 0Drupal7 theming-cheatsheet 0
Drupal7 theming-cheatsheet 0Herbert Balagtas
 
Shard-Query, an MPP database for the cloud using the LAMP stack
Shard-Query, an MPP database for the cloud using the LAMP stackShard-Query, an MPP database for the cloud using the LAMP stack
Shard-Query, an MPP database for the cloud using the LAMP stackJustin Swanhart
 
Consul: Service-oriented at Scale
Consul: Service-oriented at ScaleConsul: Service-oriented at Scale
Consul: Service-oriented at ScaleC4Media
 
Service discovery in a microservice architecture using consul
Service discovery in a microservice architecture using consulService discovery in a microservice architecture using consul
Service discovery in a microservice architecture using consulJos Dirksen
 

Andere mochten auch (6)

Simple acl with laravel
Simple acl with laravelSimple acl with laravel
Simple acl with laravel
 
Diagnosing MySQL performance problems
Diagnosing  MySQL performance problemsDiagnosing  MySQL performance problems
Diagnosing MySQL performance problems
 
Drupal7 theming-cheatsheet 0
Drupal7 theming-cheatsheet 0Drupal7 theming-cheatsheet 0
Drupal7 theming-cheatsheet 0
 
Shard-Query, an MPP database for the cloud using the LAMP stack
Shard-Query, an MPP database for the cloud using the LAMP stackShard-Query, an MPP database for the cloud using the LAMP stack
Shard-Query, an MPP database for the cloud using the LAMP stack
 
Consul: Service-oriented at Scale
Consul: Service-oriented at ScaleConsul: Service-oriented at Scale
Consul: Service-oriented at Scale
 
Service discovery in a microservice architecture using consul
Service discovery in a microservice architecture using consulService discovery in a microservice architecture using consul
Service discovery in a microservice architecture using consul
 

Ähnlich wie MySQL Tech Tour 2015 - Manage & Tune

MySQL Webinar Series 4/4 - Manage & tune
MySQL Webinar Series 4/4 - Manage & tuneMySQL Webinar Series 4/4 - Manage & tune
MySQL Webinar Series 4/4 - Manage & tuneMark Swarbrick
 
6 Tips to MySQL Performance Tuning
6 Tips to MySQL Performance Tuning6 Tips to MySQL Performance Tuning
6 Tips to MySQL Performance TuningOracleMySQL
 
MySQL Manchester TT - Performance Tuning
MySQL Manchester TT  - Performance TuningMySQL Manchester TT  - Performance Tuning
MySQL Manchester TT - Performance TuningMark Swarbrick
 
MySQL Webinar Series 3/4 - MySQl Monitoring With Enterprise Monitor + Query A...
MySQL Webinar Series 3/4 - MySQl Monitoring With Enterprise Monitor + Query A...MySQL Webinar Series 3/4 - MySQl Monitoring With Enterprise Monitor + Query A...
MySQL Webinar Series 3/4 - MySQl Monitoring With Enterprise Monitor + Query A...Mark Swarbrick
 
MySQL Enterprise Portfolio
MySQL Enterprise PortfolioMySQL Enterprise Portfolio
MySQL Enterprise PortfolioAbel Flórez
 
2015: Whats New in MySQL 5.7, At Oracle Open World, November 3rd, 2015
2015: Whats New in MySQL 5.7, At Oracle Open World, November 3rd, 2015 2015: Whats New in MySQL 5.7, At Oracle Open World, November 3rd, 2015
2015: Whats New in MySQL 5.7, At Oracle Open World, November 3rd, 2015 Geir Høydalsvik
 
MySql's NoSQL -- best of both worlds on the same disks
MySql's NoSQL -- best of both worlds on the same disksMySql's NoSQL -- best of both worlds on the same disks
MySql's NoSQL -- best of both worlds on the same disksDave Stokes
 
Netherlands Tech Tour - 06 MySQL Enterprise Monitor
Netherlands Tech Tour - 06 MySQL Enterprise MonitorNetherlands Tech Tour - 06 MySQL Enterprise Monitor
Netherlands Tech Tour - 06 MySQL Enterprise MonitorMark Swarbrick
 
Basic MySQL Troubleshooting for Oracle DBAs
Basic MySQL Troubleshooting for Oracle DBAsBasic MySQL Troubleshooting for Oracle DBAs
Basic MySQL Troubleshooting for Oracle DBAsSveta Smirnova
 
Using MySQL Enterprise Monitor for Continuous Performance Improvement
Using MySQL Enterprise Monitor for Continuous Performance ImprovementUsing MySQL Enterprise Monitor for Continuous Performance Improvement
Using MySQL Enterprise Monitor for Continuous Performance ImprovementMark Matthews
 
MySQL :What's New #GIDS16
MySQL :What's New #GIDS16MySQL :What's New #GIDS16
MySQL :What's New #GIDS16Sanjay Manwani
 
MySQL Performance Metrics that Matter
MySQL Performance Metrics that MatterMySQL Performance Metrics that Matter
MySQL Performance Metrics that MatterMorgan Tocker
 
MySQL Performance Tuning at COSCUP 2014
MySQL Performance Tuning at COSCUP 2014MySQL Performance Tuning at COSCUP 2014
MySQL Performance Tuning at COSCUP 2014Ryusuke Kajiyama
 
제3회난공불락 오픈소스 인프라세미나 - MySQL
제3회난공불락 오픈소스 인프라세미나 - MySQL제3회난공불락 오픈소스 인프라세미나 - MySQL
제3회난공불락 오픈소스 인프라세미나 - MySQLTommy Lee
 
20150110 my sql-performanceschema
20150110 my sql-performanceschema20150110 my sql-performanceschema
20150110 my sql-performanceschemaIvan Ma
 
VMworld Europe 2014: Virtualizing Databases Doing IT Right – The Sequel
VMworld Europe 2014: Virtualizing Databases Doing IT Right – The SequelVMworld Europe 2014: Virtualizing Databases Doing IT Right – The Sequel
VMworld Europe 2014: Virtualizing Databases Doing IT Right – The SequelVMworld
 
MySQL enterprise edition
MySQL enterprise edition MySQL enterprise edition
MySQL enterprise edition Mark Swarbrick
 
VMworld 2013: Virtualizing Databases: Doing IT Right
VMworld 2013: Virtualizing Databases: Doing IT Right VMworld 2013: Virtualizing Databases: Doing IT Right
VMworld 2013: Virtualizing Databases: Doing IT Right VMworld
 
MySQL & Oracle Linux Keynote at Open Source India 2014
MySQL & Oracle Linux Keynote at Open Source India 2014MySQL & Oracle Linux Keynote at Open Source India 2014
MySQL & Oracle Linux Keynote at Open Source India 2014Sanjay Manwani
 

Ähnlich wie MySQL Tech Tour 2015 - Manage & Tune (20)

MySQL Webinar Series 4/4 - Manage & tune
MySQL Webinar Series 4/4 - Manage & tuneMySQL Webinar Series 4/4 - Manage & tune
MySQL Webinar Series 4/4 - Manage & tune
 
6 Tips to MySQL Performance Tuning
6 Tips to MySQL Performance Tuning6 Tips to MySQL Performance Tuning
6 Tips to MySQL Performance Tuning
 
MySQL Manchester TT - Performance Tuning
MySQL Manchester TT  - Performance TuningMySQL Manchester TT  - Performance Tuning
MySQL Manchester TT - Performance Tuning
 
MySQL Webinar Series 3/4 - MySQl Monitoring With Enterprise Monitor + Query A...
MySQL Webinar Series 3/4 - MySQl Monitoring With Enterprise Monitor + Query A...MySQL Webinar Series 3/4 - MySQl Monitoring With Enterprise Monitor + Query A...
MySQL Webinar Series 3/4 - MySQl Monitoring With Enterprise Monitor + Query A...
 
MySQL Enterprise Portfolio
MySQL Enterprise PortfolioMySQL Enterprise Portfolio
MySQL Enterprise Portfolio
 
2015: Whats New in MySQL 5.7, At Oracle Open World, November 3rd, 2015
2015: Whats New in MySQL 5.7, At Oracle Open World, November 3rd, 2015 2015: Whats New in MySQL 5.7, At Oracle Open World, November 3rd, 2015
2015: Whats New in MySQL 5.7, At Oracle Open World, November 3rd, 2015
 
MySql's NoSQL -- best of both worlds on the same disks
MySql's NoSQL -- best of both worlds on the same disksMySql's NoSQL -- best of both worlds on the same disks
MySql's NoSQL -- best of both worlds on the same disks
 
Netherlands Tech Tour - 06 MySQL Enterprise Monitor
Netherlands Tech Tour - 06 MySQL Enterprise MonitorNetherlands Tech Tour - 06 MySQL Enterprise Monitor
Netherlands Tech Tour - 06 MySQL Enterprise Monitor
 
Basic MySQL Troubleshooting for Oracle DBAs
Basic MySQL Troubleshooting for Oracle DBAsBasic MySQL Troubleshooting for Oracle DBAs
Basic MySQL Troubleshooting for Oracle DBAs
 
Using MySQL Enterprise Monitor for Continuous Performance Improvement
Using MySQL Enterprise Monitor for Continuous Performance ImprovementUsing MySQL Enterprise Monitor for Continuous Performance Improvement
Using MySQL Enterprise Monitor for Continuous Performance Improvement
 
MySQL :What's New #GIDS16
MySQL :What's New #GIDS16MySQL :What's New #GIDS16
MySQL :What's New #GIDS16
 
MySQL Performance Metrics that Matter
MySQL Performance Metrics that MatterMySQL Performance Metrics that Matter
MySQL Performance Metrics that Matter
 
MySQL Performance Tuning at COSCUP 2014
MySQL Performance Tuning at COSCUP 2014MySQL Performance Tuning at COSCUP 2014
MySQL Performance Tuning at COSCUP 2014
 
제3회난공불락 오픈소스 인프라세미나 - MySQL
제3회난공불락 오픈소스 인프라세미나 - MySQL제3회난공불락 오픈소스 인프라세미나 - MySQL
제3회난공불락 오픈소스 인프라세미나 - MySQL
 
20150110 my sql-performanceschema
20150110 my sql-performanceschema20150110 my sql-performanceschema
20150110 my sql-performanceschema
 
VMworld Europe 2014: Virtualizing Databases Doing IT Right – The Sequel
VMworld Europe 2014: Virtualizing Databases Doing IT Right – The SequelVMworld Europe 2014: Virtualizing Databases Doing IT Right – The Sequel
VMworld Europe 2014: Virtualizing Databases Doing IT Right – The Sequel
 
MySQL enterprise edition
MySQL enterprise edition MySQL enterprise edition
MySQL enterprise edition
 
VMworld 2013: Virtualizing Databases: Doing IT Right
VMworld 2013: Virtualizing Databases: Doing IT Right VMworld 2013: Virtualizing Databases: Doing IT Right
VMworld 2013: Virtualizing Databases: Doing IT Right
 
MySQL & Oracle Linux Keynote at Open Source India 2014
MySQL & Oracle Linux Keynote at Open Source India 2014MySQL & Oracle Linux Keynote at Open Source India 2014
MySQL & Oracle Linux Keynote at Open Source India 2014
 
MySQL NoSQL APIs
MySQL NoSQL APIsMySQL NoSQL APIs
MySQL NoSQL APIs
 

Mehr von Mark Swarbrick

MySQL NoSQL Document Store
MySQL NoSQL Document StoreMySQL NoSQL Document Store
MySQL NoSQL Document StoreMark Swarbrick
 
MySQL @ the University Of Nottingham
MySQL @ the University Of NottinghamMySQL @ the University Of Nottingham
MySQL @ the University Of NottinghamMark Swarbrick
 
MySQL Dublin Event Nov 2018 - MySQL 8
MySQL Dublin Event Nov 2018 - MySQL 8MySQL Dublin Event Nov 2018 - MySQL 8
MySQL Dublin Event Nov 2018 - MySQL 8Mark Swarbrick
 
MySQL Dublin Event Nov 2018 - State of the Dolphin
MySQL Dublin Event Nov 2018 - State of the DolphinMySQL Dublin Event Nov 2018 - State of the Dolphin
MySQL Dublin Event Nov 2018 - State of the DolphinMark Swarbrick
 
Oracle Code Event - MySQL JSON Document Store
Oracle Code Event - MySQL JSON Document StoreOracle Code Event - MySQL JSON Document Store
Oracle Code Event - MySQL JSON Document StoreMark Swarbrick
 
TLV - MySQL Security overview
TLV - MySQL Security overviewTLV - MySQL Security overview
TLV - MySQL Security overviewMark Swarbrick
 
TLV - MySQL Enterprise Edition + Cloud
TLV - MySQL Enterprise Edition + CloudTLV - MySQL Enterprise Edition + Cloud
TLV - MySQL Enterprise Edition + CloudMark Swarbrick
 
TLV - Whats new in MySQL 8
TLV - Whats new in MySQL 8TLV - Whats new in MySQL 8
TLV - Whats new in MySQL 8Mark Swarbrick
 
MySQL At University Of Nottingham - 2018 MySQL Days
MySQL At University Of Nottingham - 2018 MySQL DaysMySQL At University Of Nottingham - 2018 MySQL Days
MySQL At University Of Nottingham - 2018 MySQL DaysMark Swarbrick
 
MySQL At Mastercard - 2018 MySQL Days
MySQL At Mastercard - 2018 MySQL DaysMySQL At Mastercard - 2018 MySQL Days
MySQL At Mastercard - 2018 MySQL DaysMark Swarbrick
 
MySQL 8 - 2018 MySQL Days
MySQL 8 - 2018 MySQL DaysMySQL 8 - 2018 MySQL Days
MySQL 8 - 2018 MySQL DaysMark Swarbrick
 
MySQL Security + GDPR - 2018 MySQL Days
MySQL Security + GDPR - 2018 MySQL DaysMySQL Security + GDPR - 2018 MySQL Days
MySQL Security + GDPR - 2018 MySQL DaysMark Swarbrick
 
MySQL InnoDB + NDB Cluster - 2018 MySQL Days
MySQL InnoDB + NDB Cluster - 2018 MySQL DaysMySQL InnoDB + NDB Cluster - 2018 MySQL Days
MySQL InnoDB + NDB Cluster - 2018 MySQL DaysMark Swarbrick
 
MySQL Cloud - 2018 MySQL Days
MySQL Cloud - 2018 MySQL DaysMySQL Cloud - 2018 MySQL Days
MySQL Cloud - 2018 MySQL DaysMark Swarbrick
 
MySQL 2018 Intro - 2018 MySQL Days
MySQL 2018 Intro - 2018 MySQL DaysMySQL 2018 Intro - 2018 MySQL Days
MySQL 2018 Intro - 2018 MySQL DaysMark Swarbrick
 

Mehr von Mark Swarbrick (20)

MySQL NoSQL Document Store
MySQL NoSQL Document StoreMySQL NoSQL Document Store
MySQL NoSQL Document Store
 
MySQL @ the University Of Nottingham
MySQL @ the University Of NottinghamMySQL @ the University Of Nottingham
MySQL @ the University Of Nottingham
 
InnoDb Vs NDB Cluster
InnoDb Vs NDB ClusterInnoDb Vs NDB Cluster
InnoDb Vs NDB Cluster
 
MySQL Security & GDPR
MySQL Security & GDPRMySQL Security & GDPR
MySQL Security & GDPR
 
Intro To MySQL 2019
Intro To MySQL 2019Intro To MySQL 2019
Intro To MySQL 2019
 
MySQL 8
MySQL 8MySQL 8
MySQL 8
 
MySQL Dublin Event Nov 2018 - MySQL 8
MySQL Dublin Event Nov 2018 - MySQL 8MySQL Dublin Event Nov 2018 - MySQL 8
MySQL Dublin Event Nov 2018 - MySQL 8
 
MySQL Dublin Event Nov 2018 - State of the Dolphin
MySQL Dublin Event Nov 2018 - State of the DolphinMySQL Dublin Event Nov 2018 - State of the Dolphin
MySQL Dublin Event Nov 2018 - State of the Dolphin
 
Oracle Code Event - MySQL JSON Document Store
Oracle Code Event - MySQL JSON Document StoreOracle Code Event - MySQL JSON Document Store
Oracle Code Event - MySQL JSON Document Store
 
TLV - MySQL Security overview
TLV - MySQL Security overviewTLV - MySQL Security overview
TLV - MySQL Security overview
 
TLV - MySQL Enterprise Edition + Cloud
TLV - MySQL Enterprise Edition + CloudTLV - MySQL Enterprise Edition + Cloud
TLV - MySQL Enterprise Edition + Cloud
 
TLV - Whats new in MySQL 8
TLV - Whats new in MySQL 8TLV - Whats new in MySQL 8
TLV - Whats new in MySQL 8
 
MySQL At University Of Nottingham - 2018 MySQL Days
MySQL At University Of Nottingham - 2018 MySQL DaysMySQL At University Of Nottingham - 2018 MySQL Days
MySQL At University Of Nottingham - 2018 MySQL Days
 
MySQL At Mastercard - 2018 MySQL Days
MySQL At Mastercard - 2018 MySQL DaysMySQL At Mastercard - 2018 MySQL Days
MySQL At Mastercard - 2018 MySQL Days
 
MySQL 8 - 2018 MySQL Days
MySQL 8 - 2018 MySQL DaysMySQL 8 - 2018 MySQL Days
MySQL 8 - 2018 MySQL Days
 
MySQL Security + GDPR - 2018 MySQL Days
MySQL Security + GDPR - 2018 MySQL DaysMySQL Security + GDPR - 2018 MySQL Days
MySQL Security + GDPR - 2018 MySQL Days
 
MySQL InnoDB + NDB Cluster - 2018 MySQL Days
MySQL InnoDB + NDB Cluster - 2018 MySQL DaysMySQL InnoDB + NDB Cluster - 2018 MySQL Days
MySQL InnoDB + NDB Cluster - 2018 MySQL Days
 
MySQL Cloud - 2018 MySQL Days
MySQL Cloud - 2018 MySQL DaysMySQL Cloud - 2018 MySQL Days
MySQL Cloud - 2018 MySQL Days
 
MySQL 2018 Intro - 2018 MySQL Days
MySQL 2018 Intro - 2018 MySQL DaysMySQL 2018 Intro - 2018 MySQL Days
MySQL 2018 Intro - 2018 MySQL Days
 
MySQL + GDPR
MySQL + GDPRMySQL + GDPR
MySQL + GDPR
 

Kürzlich hochgeladen

My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Kürzlich hochgeladen (20)

My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

MySQL Tech Tour 2015 - Manage & Tune

  • 1.
  • 2. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | How To Manage & Tune MySQL Mark Swarbrick Principle Presales Consultant
  • 3. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. 3
  • 4. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Manage & Tune MySQL Tuning Considerations + Go-live factors to consider 4
  • 5. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Tuning + Go-Live Considerations 5
  • 6. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Performance Testing – How to measure success Monitoring – Make sure you are monitoring the correct metrics Backup Strategy – Will your backups be suitable for purpose? High Availability – Does the uptime requirement match the design? Failover – Have you got the policies and procedures in place to failover to a backup data center or server? Growth – Have you planned for growth of data and throughput? Tuning – How to tune and monitor for performance 6
  • 7. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | MySQL Performance Schema • Identify performance bottlenecks • Identify problematic queries • Get real time insight into locks • See exactly what is happening within MySQL • Get real time insight into MySQL internals • Get real time insight into query executions 7 mysql> select * from host_summary_by_stages; +------+--------------------------------+-------+-----------+-----------+ | host | event_name | total | wait_sum | wait_avg | +------+--------------------------------+-------+-----------+-----------+ | hal | stage/sql/Opening tables | 889 | 1.97 ms | 2.22 us | | hal | stage/sql/Creating sort index | 4 | 1.79 ms | 446.30 us | | hal | stage/sql/init | 10 | 312.27 us | 31.23 us | | hal | stage/sql/checking permissions | 10 | 300.62 us | 30.06 us | | hal | stage/sql/freeing items | 5 | 85.89 us | 17.18 us | | hal | stage/sql/statistics | 5 | 79.15 us | 15.83 us | | hal | stage/sql/preparing | 5 | 69.12 us | 13.82 us | | hal | stage/sql/optimizing | 5 | 53.11 us | 10.62 us | | hal | stage/sql/Sending data | 5 | 44.66 us | 8.93 us | | hal | stage/sql/closing tables | 5 | 37.54 us | 7.51 us | | hal | stage/sql/System lock | 5 | 34.28 us | 6.86 us | | hal | stage/sql/query end | 5 | 24.37 us | 4.87 us | | hal | stage/sql/end | 5 | 8.60 us | 1.72 us | | hal | stage/sql/Sorting result | 5 | 8.33 us | 1.67 us | | hal | stage/sql/executing | 5 | 5.37 us | 1.07 us | | hal | stage/sql/cleaning up | 5 | 4.60 us | 919.00 ns | +------+--------------------------------+-------+-----------+-----------+
  • 8. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | MySQL Workbench Overview • MySQL Database IDE • Millions of Downloads • Windows, OS X, Linux
  • 9. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Workbench 6.0 New Look, Redesigned GUI, Simplified Workflow • Home Screen, Managing Connections, Edit & Admin, Color Scheme, Icons For Developers • Schema Inspector, Maintenance, Cascading Delete, Vertical Results, Table Data Search, Context Sensitive Help, Table Templates For Migration • New Sybase Anywhere, SQLite For Administrators • Server Status / Server Data, Backup GUI, Audit Log Inspector For Design • Improved Synchronization, Improved model printing to PDF files What’s New
  • 10. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Performance Tasks In Workbench Monitor Assess OptimizeTune Configure
  • 11. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Start by looking at Server Status  Management Tab – Server Status
  • 12. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Basics • Enabled/Disabled Features  Directory Setup  On best disks?  Adequate space?  Slow Query Log On?
  • 13. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Performance Testing – How to measure success Monitoring – Make sure you are monitoring the correct metrics Availability Use a decent query Logs Logs filling up disk space Slow query log filling space Disk Space Disks getting full is the most common problem Ideally alarm on how soon disk space changes rather than absolute disk space 13
  • 14. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Performance Testing – How to measure success Monitoring – Make sure you are monitoring the correct metrics Stalls / Spikes Table Locks CPU Spikes Memory Paging Connections Are you reaching max_connections limit? Can the application connect? Processes Long running Processes 14
  • 15. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Performance Testing – How to measure success Monitoring – Make sure you are monitoring the correct metrics Transactions Long running or long idle transactions Queued transactions (size of trans queue) (show innodb status) Replication Is Replication running Whats the replication lag 15
  • 16. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Performance Testing – How to measure success Monitoring – Make sure you are monitoring the correct metrics Query Performance Top Queries to optimise – (interactive monitor not generate alerts on) Response time outliers Queries not using index Queries using full/ partial scans / table scans Queries that return errors / warning Operational Aspects Server restarts Server config change events Messages in the error Log 16
  • 17. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Backup Strategy – Will your backups be suitable for purpose MySQLdump - It can be used to dump a database or a collection of databases for backup or transfer to another SQL server (not necessarily a MySQL server). The dump typically contains SQL statements to create the table, populate it, or both. However, mysqldumpcan also be used to generate files in CSV, other delimited text, or XML format. MySQL Enterprise Backup - "Hot" Online Backups - Backups take place entirely online, without interrupting MySQL transactions High Performance - Save time with faster backup and recovery Incremental Backup - Backup only data that has changed since the last backup Partial Backup - Target particular tables or tablespaces Full Instance Backup - Backs up data, as well as configuration and other information to easily create a complete "replica" 17
  • 18. MySQL Backup Types: Comparison mysqldump LVM Snapshots MySQL Replication MySQL Enterprise Backup Full Backup ✔ ✔ ✔ ✔ Incremental Backups ✖ ✔ ✖ ✔ Partial Backups ✔ ✖ ✖ ✔ Compression Support ✖ ✖ ✖ ✔ Allows updates ✖ ✖ ✔ ✔ Point in Time - Consistent ✖ ✔ ✔ ✔ Backup Speed Poor Good Very Good Very Good Recovery Speed Very Poor Good Very Good Very Good Partial Restore ✔ ✖ ✖ ✔ LZ4 Compression ✖ ✔ AES 256 Encryption ✖ ✔ Corruption Detection ✔ ✖ ✖ ✔ Meets Regulatory Archive Req. ✔ ✖ ✖ ✔ Supports DDL ✔ ✖ ✖ ✔
  • 19. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | High Availability – Does the uptime requirements match the design? See Planning for outages section ;-) But always good to refer back to the original design spec! 19
  • 20. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Failover – Have you got the policies and procedures in place to failover to a backup data center or server? Most HA strategies fail not due to the hardware or software, but to the lack of awareness and testing of policies and procedures in place! 20
  • 21. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Growth – Have you planned for growth of data and throughput? 21
  • 22. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Tuning – How to tune and monitor for performance 22 Hardware Config Options Schema InnoDB Performance Monitoring
  • 23. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Hardware Schema Changes Data Growth Indexes SQL 90% of Performance Problems Source of Database Performance Problems 23
  • 24. Hardware: The Perfect MySQL Server • The more cores the better (especially for 5.5 and later) • x86_64 - 64 bit for more memory is important – The more the better • Fast HD (10-15k RPM SATA) or NAS/SAN…… – RAID 10 for most, RAID 5 OK if very read intensive – Hardware RAID battery backed up cache critical! – More disks are always better! - 4+ recommended, 8-16 can increase IO • …Or SSD (for higher throughput) – Intel, Fusion-IO good choices; good option for Slaves • At least 2 x NICs for redundancy • Slaves should be as powerful as the Master
  • 25. Config Options The MySQL server is controlled by “System Variables” • Set Via: – my.cnf / my.ini – SET [GLOBAL] <variable>=<value> – client, i.e mysql • Can be local (session) or global The World’s Most Popular Open Source DatabaseCopyright 2010 Oracle
  • 26. The World’s Most Popular Open Source DatabaseCopyright 2010 Oracle Schemas • Size = performance, smaller is better – Size right! Do not automatically use 255 for VARCHAR • Temp tables, most caches, expand to full size • Use “procedure analyse” to determine the optimal types given the values in your table – http://dev.mysql.com/doc/refman/5.1/en/procedure-analyse.html – mysql> select * from tab procedure analyse (64,2000) G • Consider the types: – enum : http://dev.mysql.com/doc/refman/5.1/en/enum.html – set : http://dev.mysql.com/doc/refman/5.1/en/set.html • Compress large strings – Use the MySQL COMPRESS and UNCOMPRESS functions
  • 27. The World’s Most Popular Open Source DatabaseCopyright 2010 Oracle InnoDB Tuning • Unlike MyISAM - InnoDB uses a single cache for both index and data – innodb_buffer_pool_size - should be 70-80% of available memory. – It is not uncommon for this to be very large, i.e. 34GB on a system with 40GB of memory – Make sure its not set so large as to cause swapping! – mysql>show status like 'Innodb_buffer%' ; • InnoDB can use direct IO on systems that support it - Linux, FreeBSD, and Solaris – innodb_flush_method = O_DIRECT • For more InnoDB tuning see – http://dev.mysql.com/doc/refman/5.1/en/innodb-tuning-troubleshooting.html
  • 28. A Virtual MySQL DBA Assistant!  Web-based, global view of MySQL/Cluster applications (on- premise and Cloud deployments)  Automated, rules-based monitoring and alerts (SMTP, SNMP enabled)  Query capture, monitoring, analysis and tuning, correlated with Monitor graphs  Real-time Replication Monitor with auto-discovery of master-slave topologies  Integrated with Oracle Support MySQL Enterprise Monitor
  • 29. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Thank You! 29