SlideShare uma empresa Scribd logo
1 de 55
Baixar para ler offline
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.1
Dave Stokes
MySQL Community Manager
slideshare.net/davestokes
David.Stokes@Oracle.Com
@stoker
Ten Things toTen Things to
Make Your MySQLMake Your MySQL
Servers Faster and HappierServers Faster and Happier
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.2
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
decision. The development, release, and timing of any features or
functionality described for Oracle’s products remains at the sole
discretion of Oracle.
Safe Harbor Statement
Radiologists & Gorillas
83 Percent of Radiologists Didn’t Spot the Gorilla
Hiding in This CT Scan
– Picture of gorilla hidden in last slide of ten lung
scans.
– They wanted to see if the radiologists, focused on
the telltale nodules, would be blind to the easily
detectable and highly anomalous gorilla
– The gorilla was miniscule, but huge compared to
the nodules. It was about the size of a box of
matches-or 48 times the size of a typical nodule.
Gorillas responded
Databases Do Not Play Well
With Others
Databases Systems are the colicky, nasty
children of the software world with bad tempers
and leaky noses that stubbornly insist on their
way and will become disruptive at the most
inopportune time, ruining man-years of work in
an instant before demanding more
--Said by just about every software developer ever
So how do you get
happy MySQL Servers?
This session for those
who are not MySQL
DBAs but are tasked to
take care of MySQL
Instances among other
tasks. This will not
make you a DBA any
more than a 1 hour
session on
programming will make
you a programmer.
How does a Database server work
Client
SELECT phone
FROM friends
WHERE name = ‘Joe’;
Server
How does a Database server work
Client
SELECT phone
FROM friends
WHERE name = ‘Joe’;
Server
PARSE
find Joe in friends
table in memory
return phone
How does a Database server work
Client
SELECT phone
FROM friends
WHERE name = ‘Joe’;
. . .
Process phone data
Server
PARSE
find Joe in friends
table in memory
return phone
How does a Database server work
Client
SELECT phone
FROM friends
WHERE name = ‘Joe’;
. . .
Process phone data
Server
PARSE
find Joe in friends
table in memory
return phone
What was that about
memory???
Thing to do #1 – Lots of memory
‱
Databases love data in memory
What if it is not in memory?
MySQL
Please give me the
data from the city
table
OS
What if it is not in memory?
MySQL
Please give me the
data from the city
table
OS
Get inode
What if it is not in memory?
MySQL
Please give me the
data from the city
table
OS
Get inode
Ask disk for data
What if it is not in memory?
MySQL
Please give me the
data from the city
table
OS
Get inode
Ask disk for data
Get data into buffer
What if it is not in memory?
MySQL
Please give me the
data from the city
table
Load data into memory
OS
Get inode
Ask disk for data
Get data into buffer
Hand buffer off
What if it is not in memory?
MySQL
Please give me the
data from the city
table
Load data into memory
OS
Get inode
Ask disk for data
Get data into buffer
Hand buffer off
Much longer than
just reading from
memory
Rule #2 – Use Proper Hardware
Databases have to do unpredictable queries,
random I/O, and sequential scans so slow I/O
kills performance
Buffers
What happens when you read a file into memory
DISK
Disk
Controller
Page
Cache
User
Buffer
Buffers
Memory Lookup – 100 nanoseconds, 12GB/sec
DISK
Disk
Controller
Page
Cache
User
Buffer
Buffers
Memory Lookup – 100 nanoseconds, 12GB/sec
DISK seek – 10 milliseconds, 760MB/sec
DISK
Disk
Controller
Page
Cache
User
Buffer
Disk Reads
A disk read is 100,000 slower than reading memory
●
For comparison
– 100,000 minutes is about 69.5 days
– 100,000 feet is about 19 miles
– 100,000 kilometers is 15.7 times around
Earth's equator
SSD
Use standard RAID controller
●
SSD as writeback cache
●
Battery backed
●
$2.5/GB verses .075/GB
●
Very fast seek time
●
Density
Hardware recommendations
1. Memory – lots of it, ecc
2. DISKs – more spindles, high speed, fast controllers, RAID
10, write back cache, and XFS/ZFS/ext4 not ext2/3
3. Write-through caches with battery backup units for
disks must be monitored, and have life span much
longer than planned outages. Set 'learning cycles' to off
hours
4. CPUs, Core less important (spend money on Memory
and IO)
Thing to do #3 –
Understand Login/Privs
The default MySQL Login and Privilege system is a
little 
 primitive.
Be Stingy with privs as they are hard to get back
Some tools may not give the privs you want – DROP
PRIV is given by default by one popular admin tool
Quick Security Warning!
MySQL login security is primitive.
●
Database mysql has users table
●
'jsmith'@'co.com' or 'fred'@'10.10.%'
– Matches host, then user, then password
●
Be explicit
●
Proxy and Pluggable logins in MySQL 5.6
●
'joe'@'10.10.%' may not be the same as
'joe'@'yourco.com' or 'joe'@'home.net'
MySQL privilege security
●
GRANT functions or access
●
Can get Byzantine quickly
●
Use a GUI
MySQL Workbench – set up roles
Thing to do #4 – Use Current Release
Speed
– MySQL 5.5 is 20% faster than 5.1
– MySQL 5.6 is ~15% faster than 5.5
Features
– Better optimizer
– Sub-queries
– NoSQL/memcached
– Online DDL
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.31
MySQL 5.6: Scalability
●
Users can fully utilize latest generations of hardware and OS
●
Scales as data volumes and users grow
Thing to do #5 – Monitor
You need 'something'
monitoring your
instances as you need a
quick way to check
status & record events
– MySQL Enterprise
Monitor
– MySQL
Workbench
– Nagios, Cacti,
phpMyAdmin, etc
Turn on logging
1. Slow query log -- not all long running queries
are bad
2. Log queries not using indexes
3. READ the logs!!!
4. Use monitoring software – MEM, Innotop,
Cacti, Munin, Nagios, etc – and pay attention
to it
Just because you can not see all of the problem
does not mean the problem is not there!
Things to do #6 – Backups
Backups are usually some sort of disk snap shot
or serializing data to a file
The more the better but you need to know steps
to recover dropped table, lost databases, or
mangled data.
Use data replication to a slave and then backup
slave.
Be paranoid!!!!!
Thing to do #7 -- Replication
Replication for MySQL is the binary log for the
master being copied to a slave. The slave
then updates its copy of the data
Two types:
1. Asynchronous – server does not check changes sent to
slave before proceeding
2. Semi Synchronous – server checks that slave received
changes before proceeding
Replication – was messy!
MySQL 5.6 is multi threaded and has GTIDs
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.38
 Simple to track & compare replication across the cluster
●
Unique identifier for each transaction written to the Binlog
 Automatically identify the most up-to-date slave for failover
 Deploy n-tier replication hierarchies
Master
GTID=123456
GTID=123456
GTID=123456 GTID=123456
MySQL 5.6: Replication
Global Transaction Ids
Eliminates the need for
complex 3rd party
solutions
Replication -- network
Network latency will affect MySQL replication. So plan
network topology to minimize bandwidth competition with
other systems/services.
Slaves do not need to be as fast as the master but try to
keep things reasonably close
Do not have to replicate all tables/databases to all slaves.
Cut down on traffic by replicating what is needed!
Writes & Reads Reads Reads
‱ Write to one master
‱ Read from many slaves, easily add more as needed
‱ Perfect for read/write intensive apps
Application
MySQL Replication
Load Balancer
MySQL Database
Replication Enables Scalability
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.41
 New option: binlog-row-image=minimal
 Increases throughput for master and slave
– Reduces Binlog size, memory & network bandwidth
 Only replicates elements of the Row image that have changed
Primary Key Changed Columns
MySQL 5.6: Replication
Optimized Row Base Replication
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.42
Before:
– Transaction Data: in tables
– Replication Info: in files
MySQL 5.6
– Transaction Data: in tables
– Replication Info: in tables
Data
Position Info
CRASH!
Time
Data
Position Info
Time
 Automatic recovery of a slave after a failure
●
Binlog and table data are transactionally
consistent
 Resumes replication without Dev/Op
intervention
●
Automatically rolling back replication to
last committed event
Atomic
Atomic
MySQL 5.6: Crash safe Slaves
Eliminates risk of data loss or
corruption
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.43
Master
#
Slave
#
MySQL 5.6: Replication Event Checksums
Eliminates risk of data
loss or corruption
 Ensures replicated data is correct,
consistent and accessible
 Detects corrupt replication events before
they’re applied
– Returns an error
 Protects entire replication path
– Memory
– Disk
– Network
– Bugs
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.44
Thing to do #8 – Use InnoDB
● Transactional, speedy, crash safe, and where
Oracle is concentrating development.
● Online DDL, SSD Optimizations, Dump/Restore
warm buffer pool (great for cloud)
● NoSQL access via memcached API
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.45
●
Enables export/import of tables between running MySQL instances
MySQL 5.6: InnoDB
Transportable Tablespaces
CREATE TABLE t(c1 INT) engine=InnoDB;
FLUSH TABLE t FOR EXPORT; -- quiesce the table and create the meta data file
$innodb_data_home_dir/test/t.cfg
UNLOCK TABLES;
Export:
Import:
CREATE TABLE t(c1 INT) engine=InnoDB; -- if it doesn't already exist
ALTER TABLE t DISCARD TABLESPACE;
-- The user must stop all updates on the tables, prior to the IMPORT
ALTER TABLE t IMPORT TABLESPACE;
●
Better Elasticity - Quickly spin up new instances to meet demand
●
Great for Cloud, Hosted, SaaS, On-premise deployments
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.46
Same app can leverage:
 Key-value access to
InnoDB via familiar
Memcached API
 SQL for rich queries,
JOINs, FKs, etc.
 Fully transactional
MySQL 5.6: InnoDB
NoSQL Key Value Access to InnoDB
●
Up to 9x performance
boost for updates
●
Great for fast data
ingestion in Big Data
pipeline
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.47
●
Subquery Optimizations
●
File sort optimizations for most web use cases
●
4x better execution time – 40s to 10s
 Index Condition Pushdown
●
160x better execution time – 15s to 90ms
 Batched Key Access and Multi Range Read
●
280x better execution time – 2800s to 10s
MySQL 5.6: Optimizer
Better complex query execution times ever growing data sets (Big D
MEM + Query Analyzer key to utilizing full benefits of 5.6 Optimizer
MySQL Consultative Support provides guidance on configuration
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.48
Things to do #9 – Indexes
Rough rule – look at
columns used in
joins or after a
WHERE
Indexes are good
Without Index
DB needs to scan
entire table or table
scan
With Index
DB can go right to
record
Indexes, the bad
‱
Overhead -- space, speed, maintenance (you
can have too many)
‱
Not a panacea – does not cure all problems
‱
Will not help if you need to perform a table
scan
‱
Composite indexes can be tricky – YearMonthDay
usually better than DayMonthYear
Slide to check if audience is still awake
Thing to do #10 – Tuning
ASet innodb_buffer_pool_size to 70-
80% of memory
Turn off query cache
Where to get help
Lots of Help Available
●
High Performance MySQL – Schwartz et al
●
MySQL Administrator's Bible – Cabral
●
Effective MySQL series – Bradford
●
OurSQL podcast
●
Forums.MySQL.Com
Planet.MySQL.Com
Local MySQL User Group
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.54
 Optimized for Web, Cloud-based, Embedded use cases
 Simplified, Pluggable architecture
– Maintainability, more extensible
– More NoSQL options (HTTP, JSON, JavaScript, etc.)
 Refactoring
– Data Dictionary in InnoDB
– Optimizer/Parser/Protocol
 InnoDB
– Optimized for SSD
– GIS
 Easy HA, Replication and Sharding
MySQL Database Development Priorities
MySQL Connect ConferenceMySQL Connect Conference
Sept 21st
- 23rd
in
San Francisco
The Call for Proposals (CFP)
for MySQL Connect 2013 just
closed. Conference
attendees will hear the best
ideas from MySQL experts
from around the globe:
developers, visionaries,
customers, partners. Book
hotel early do to Americas
Cup races in San Francisco.
MySQL Marinate!
Virtual self-study of MySQL through the
Boston MySQL Users Group (
http://www.meetup.com/mysqlbos/)
http://www.meetup.com/Virtual-
Tech-Self-Study/events/84103332/
Q&AQ&A
David.Stokes@oracle.com - slideshare.net/davestokes

Mais conteĂșdo relacionado

Destaque

ç‰©ç†ăƒžă‚·ăƒłă‚’ă‚±ăƒă‚‹æŠ€èĄ“
ç‰©ç†ăƒžă‚·ăƒłă‚’ă‚±ăƒă‚‹æŠ€èĄ“ç‰©ç†ăƒžă‚·ăƒłă‚’ă‚±ăƒă‚‹æŠ€èĄ“
ç‰©ç†ăƒžă‚·ăƒłă‚’ă‚±ăƒă‚‹æŠ€èĄ“Satoshi KOBAYASHI
 
OpenFlow OAM ăƒ„ăƒŒăƒ« - OKINAWA Open Days 2014 Day1
OpenFlow OAM ăƒ„ăƒŒăƒ« - OKINAWA Open Days 2014 Day1OpenFlow OAM ăƒ„ăƒŒăƒ« - OKINAWA Open Days 2014 Day1
OpenFlow OAM ăƒ„ăƒŒăƒ« - OKINAWA Open Days 2014 Day1Satoshi KOBAYASHI
 
ă‚ąăƒ«ă‚ŽăƒȘă‚șăƒ ć–ćŒ•ăźă‚·ă‚čテムを開ç™șăƒ»é‹ç”šă—ăŠăżăŠćˆ†ă‹ăŁăŸă“ăš
ă‚ąăƒ«ă‚ŽăƒȘă‚șăƒ ć–ćŒ•ăźă‚·ă‚čテムを開ç™șăƒ»é‹ç”šă—ăŠăżăŠćˆ†ă‹ăŁăŸă“ăšă‚ąăƒ«ă‚ŽăƒȘă‚șăƒ ć–ćŒ•ăźă‚·ă‚čテムを開ç™șăƒ»é‹ç”šă—ăŠăżăŠćˆ†ă‹ăŁăŸă“ăš
ă‚ąăƒ«ă‚ŽăƒȘă‚șăƒ ć–ćŒ•ăźă‚·ă‚čテムを開ç™șăƒ»é‹ç”šă—ăŠăżăŠćˆ†ă‹ăŁăŸă“ăšSatoshi KOBAYASHI
 
ăƒžăƒ«ăƒă‚čăƒŹăƒƒăƒ‰ć­Šçż’ăźăƒŸăƒƒă‚·ăƒłă‚°ăƒȘンク
ăƒžăƒ«ăƒă‚čăƒŹăƒƒăƒ‰ć­Šçż’ăźăƒŸăƒƒă‚·ăƒłă‚°ăƒȘăƒłă‚Żăƒžăƒ«ăƒă‚čăƒŹăƒƒăƒ‰ć­Šçż’ăźăƒŸăƒƒă‚·ăƒłă‚°ăƒȘンク
ăƒžăƒ«ăƒă‚čăƒŹăƒƒăƒ‰ć­Šçż’ăźăƒŸăƒƒă‚·ăƒłă‚°ăƒȘンクSatoshi KOBAYASHI
 
Developer day - AWS: Fast Environments = Fast Deployments
Developer day - AWS: Fast Environments = Fast DeploymentsDeveloper day - AWS: Fast Environments = Fast Deployments
Developer day - AWS: Fast Environments = Fast DeploymentsMatthew Cwalinski
 
Reactive Manifesto - Developing Real-time Leaderboards
Reactive Manifesto - Developing Real-time LeaderboardsReactive Manifesto - Developing Real-time Leaderboards
Reactive Manifesto - Developing Real-time LeaderboardsBinoy Shah
 
Make Your Team Flow
Make Your Team FlowMake Your Team Flow
Make Your Team FlowChad Moone
 
Rでreproducible research
Rでreproducible researchRでreproducible research
Rでreproducible researchShintaro Fukushima
 
【Interop Tokyo 2016】 Seminar - EA-18 : 「Cisco ぼ慈é€Čă‚»ă‚­ăƒ„ăƒȘティ ă‚œăƒȘăƒ„ăƒŒă‚·ăƒ§ăƒłă€ Shownet 2016...
【Interop Tokyo 2016】 Seminar - EA-18 : 「Cisco ぼ慈é€Čă‚»ă‚­ăƒ„ăƒȘティ ă‚œăƒȘăƒ„ăƒŒă‚·ăƒ§ăƒłă€ Shownet 2016...【Interop Tokyo 2016】 Seminar - EA-18 : 「Cisco ぼ慈é€Čă‚»ă‚­ăƒ„ăƒȘティ ă‚œăƒȘăƒ„ăƒŒă‚·ăƒ§ăƒłă€ Shownet 2016...
【Interop Tokyo 2016】 Seminar - EA-18 : 「Cisco ぼ慈é€Čă‚»ă‚­ăƒ„ăƒȘティ ă‚œăƒȘăƒ„ăƒŒă‚·ăƒ§ăƒłă€ Shownet 2016...ă‚·ă‚čă‚łă‚·ă‚čテムă‚șćˆćŒäŒšç€Ÿ
 
ハă‚čăƒăƒłă‚·ăƒ–Webăƒ‡ă‚¶ă‚€ăƒłă§ă†ăŸăă‚„ă‚‹ăŸă‚ăźè€ƒăˆæ–č
ハă‚čăƒăƒłă‚·ăƒ–Webăƒ‡ă‚¶ă‚€ăƒłă§ă†ăŸăă‚„ă‚‹ăŸă‚ăźè€ƒăˆæ–čハă‚čăƒăƒłă‚·ăƒ–Webăƒ‡ă‚¶ă‚€ăƒłă§ă†ăŸăă‚„ă‚‹ăŸă‚ăźè€ƒăˆæ–č
ハă‚čăƒăƒłă‚·ăƒ–Webăƒ‡ă‚¶ă‚€ăƒłă§ă†ăŸăă‚„ă‚‹ăŸă‚ăźè€ƒăˆæ–čHayato Mizuno
 
漟侖界ぼäșșć·„çŸ„èƒœ@DeNA TechCon 2017
漟侖界ぼäșșć·„çŸ„èƒœ@DeNA TechCon 2017 漟侖界ぼäșșć·„çŸ„èƒœ@DeNA TechCon 2017
漟侖界ぼäșșć·„çŸ„èƒœ@DeNA TechCon 2017 Preferred Networks
 

Destaque (12)

ç‰©ç†ăƒžă‚·ăƒłă‚’ă‚±ăƒă‚‹æŠ€èĄ“
ç‰©ç†ăƒžă‚·ăƒłă‚’ă‚±ăƒă‚‹æŠ€èĄ“ç‰©ç†ăƒžă‚·ăƒłă‚’ă‚±ăƒă‚‹æŠ€èĄ“
ç‰©ç†ăƒžă‚·ăƒłă‚’ă‚±ăƒă‚‹æŠ€èĄ“
 
OpenFlow OAM ăƒ„ăƒŒăƒ« - OKINAWA Open Days 2014 Day1
OpenFlow OAM ăƒ„ăƒŒăƒ« - OKINAWA Open Days 2014 Day1OpenFlow OAM ăƒ„ăƒŒăƒ« - OKINAWA Open Days 2014 Day1
OpenFlow OAM ăƒ„ăƒŒăƒ« - OKINAWA Open Days 2014 Day1
 
ă‚ąăƒ«ă‚ŽăƒȘă‚șăƒ ć–ćŒ•ăźă‚·ă‚čテムを開ç™șăƒ»é‹ç”šă—ăŠăżăŠćˆ†ă‹ăŁăŸă“ăš
ă‚ąăƒ«ă‚ŽăƒȘă‚șăƒ ć–ćŒ•ăźă‚·ă‚čテムを開ç™șăƒ»é‹ç”šă—ăŠăżăŠćˆ†ă‹ăŁăŸă“ăšă‚ąăƒ«ă‚ŽăƒȘă‚șăƒ ć–ćŒ•ăźă‚·ă‚čテムを開ç™șăƒ»é‹ç”šă—ăŠăżăŠćˆ†ă‹ăŁăŸă“ăš
ă‚ąăƒ«ă‚ŽăƒȘă‚șăƒ ć–ćŒ•ăźă‚·ă‚čテムを開ç™șăƒ»é‹ç”šă—ăŠăżăŠćˆ†ă‹ăŁăŸă“ăš
 
ăƒžăƒ«ăƒă‚čăƒŹăƒƒăƒ‰ć­Šçż’ăźăƒŸăƒƒă‚·ăƒłă‚°ăƒȘンク
ăƒžăƒ«ăƒă‚čăƒŹăƒƒăƒ‰ć­Šçż’ăźăƒŸăƒƒă‚·ăƒłă‚°ăƒȘăƒłă‚Żăƒžăƒ«ăƒă‚čăƒŹăƒƒăƒ‰ć­Šçż’ăźăƒŸăƒƒă‚·ăƒłă‚°ăƒȘンク
ăƒžăƒ«ăƒă‚čăƒŹăƒƒăƒ‰ć­Šçż’ăźăƒŸăƒƒă‚·ăƒłă‚°ăƒȘンク
 
Developer day - AWS: Fast Environments = Fast Deployments
Developer day - AWS: Fast Environments = Fast DeploymentsDeveloper day - AWS: Fast Environments = Fast Deployments
Developer day - AWS: Fast Environments = Fast Deployments
 
Reactive Manifesto - Developing Real-time Leaderboards
Reactive Manifesto - Developing Real-time LeaderboardsReactive Manifesto - Developing Real-time Leaderboards
Reactive Manifesto - Developing Real-time Leaderboards
 
Make Your Team Flow
Make Your Team FlowMake Your Team Flow
Make Your Team Flow
 
Loosely Coupled
Loosely CoupledLoosely Coupled
Loosely Coupled
 
Rでreproducible research
Rでreproducible researchRでreproducible research
Rでreproducible research
 
【Interop Tokyo 2016】 Seminar - EA-18 : 「Cisco ぼ慈é€Čă‚»ă‚­ăƒ„ăƒȘティ ă‚œăƒȘăƒ„ăƒŒă‚·ăƒ§ăƒłă€ Shownet 2016...
【Interop Tokyo 2016】 Seminar - EA-18 : 「Cisco ぼ慈é€Čă‚»ă‚­ăƒ„ăƒȘティ ă‚œăƒȘăƒ„ăƒŒă‚·ăƒ§ăƒłă€ Shownet 2016...【Interop Tokyo 2016】 Seminar - EA-18 : 「Cisco ぼ慈é€Čă‚»ă‚­ăƒ„ăƒȘティ ă‚œăƒȘăƒ„ăƒŒă‚·ăƒ§ăƒłă€ Shownet 2016...
【Interop Tokyo 2016】 Seminar - EA-18 : 「Cisco ぼ慈é€Čă‚»ă‚­ăƒ„ăƒȘティ ă‚œăƒȘăƒ„ăƒŒă‚·ăƒ§ăƒłă€ Shownet 2016...
 
ハă‚čăƒăƒłă‚·ăƒ–Webăƒ‡ă‚¶ă‚€ăƒłă§ă†ăŸăă‚„ă‚‹ăŸă‚ăźè€ƒăˆæ–č
ハă‚čăƒăƒłă‚·ăƒ–Webăƒ‡ă‚¶ă‚€ăƒłă§ă†ăŸăă‚„ă‚‹ăŸă‚ăźè€ƒăˆæ–čハă‚čăƒăƒłă‚·ăƒ–Webăƒ‡ă‚¶ă‚€ăƒłă§ă†ăŸăă‚„ă‚‹ăŸă‚ăźè€ƒăˆæ–č
ハă‚čăƒăƒłă‚·ăƒ–Webăƒ‡ă‚¶ă‚€ăƒłă§ă†ăŸăă‚„ă‚‹ăŸă‚ăźè€ƒăˆæ–č
 
漟侖界ぼäșșć·„çŸ„èƒœ@DeNA TechCon 2017
漟侖界ぼäșșć·„çŸ„èƒœ@DeNA TechCon 2017 漟侖界ぼäșșć·„çŸ„èƒœ@DeNA TechCon 2017
漟侖界ぼäșșć·„çŸ„èƒœ@DeNA TechCon 2017
 

Semelhante a PhpTek Ten Things to do to make your MySQL servers Happier and Healthier

Tx lf propercareandfeedmysql
Tx lf propercareandfeedmysqlTx lf propercareandfeedmysql
Tx lf propercareandfeedmysqlDave Stokes
 
Congratsyourthedbatoo
CongratsyourthedbatooCongratsyourthedbatoo
CongratsyourthedbatooDave Stokes
 
Linuxfest Northwest Proper Care and Feeding Of a MySQL for Busy Linux Admins
Linuxfest Northwest Proper Care and Feeding Of a MySQL for Busy Linux AdminsLinuxfest Northwest Proper Care and Feeding Of a MySQL for Busy Linux Admins
Linuxfest Northwest Proper Care and Feeding Of a MySQL for Busy Linux AdminsDave Stokes
 
Proper Care and Feeding of a MySQL Database for Busy Linux Administrators
Proper Care and Feeding of a MySQL Database for Busy Linux AdministratorsProper Care and Feeding of a MySQL Database for Busy Linux Administrators
Proper Care and Feeding of a MySQL Database for Busy Linux AdministratorsDave Stokes
 
The Proper Care and Feeding of a MySQL Database for Busy Linux Admins -- SCaL...
The Proper Care and Feeding of a MySQL Database for Busy Linux Admins -- SCaL...The Proper Care and Feeding of a MySQL Database for Busy Linux Admins -- SCaL...
The Proper Care and Feeding of a MySQL Database for Busy Linux Admins -- SCaL...Dave Stokes
 
MySQL Webinar 2/4 Performance tuning, hardware, optimisation
MySQL Webinar 2/4 Performance tuning, hardware, optimisationMySQL Webinar 2/4 Performance tuning, hardware, optimisation
MySQL Webinar 2/4 Performance tuning, hardware, optimisationMark Swarbrick
 
Oracle OpenWorld 2013 - HOL9737 MySQL Replication Best Practices
Oracle OpenWorld 2013 - HOL9737 MySQL Replication Best PracticesOracle OpenWorld 2013 - HOL9737 MySQL Replication Best Practices
Oracle OpenWorld 2013 - HOL9737 MySQL Replication Best PracticesSven Sandberg
 
Orion Network Performance Monitor (NPM) Optimization and Tuning Training
Orion Network Performance Monitor (NPM) Optimization and Tuning TrainingOrion Network Performance Monitor (NPM) Optimization and Tuning Training
Orion Network Performance Monitor (NPM) Optimization and Tuning TrainingSolarWinds
 
4 facing explosive data growth five ways to optimize storage for oracle datab...
4 facing explosive data growth five ways to optimize storage for oracle datab...4 facing explosive data growth five ways to optimize storage for oracle datab...
4 facing explosive data growth five ways to optimize storage for oracle datab...Dr. Wilfred Lin (Ph.D.)
 
Beat the devil: towards a Drupal performance benchmark
Beat the devil: towards a Drupal performance benchmarkBeat the devil: towards a Drupal performance benchmark
Beat the devil: towards a Drupal performance benchmarkPedro GonzĂĄlez Serrano
 
MySQL Enterprise Backup: Better Very Large Database Backup & Recovery and More!!
MySQL Enterprise Backup: Better Very Large Database Backup & Recovery and More!!MySQL Enterprise Backup: Better Very Large Database Backup & Recovery and More!!
MySQL Enterprise Backup: Better Very Large Database Backup & Recovery and More!!Tinku Ajit
 
OVHcloud – Enterprise Cloud Databases
OVHcloud – Enterprise Cloud DatabasesOVHcloud – Enterprise Cloud Databases
OVHcloud – Enterprise Cloud DatabasesOVHcloud
 
Performance Whackamole (short version)
Performance Whackamole (short version)Performance Whackamole (short version)
Performance Whackamole (short version)PostgreSQL Experts, Inc.
 
ZFS appliance
ZFS applianceZFS appliance
ZFS applianceFran Navarro
 
Java Memory Hogs.pdf
Java Memory Hogs.pdfJava Memory Hogs.pdf
Java Memory Hogs.pdfGurbinder3
 
MySQL Performance Tuning at COSCUP 2014
MySQL Performance Tuning at COSCUP 2014MySQL Performance Tuning at COSCUP 2014
MySQL Performance Tuning at COSCUP 2014Ryusuke Kajiyama
 
Performance Whack A Mole
Performance Whack A MolePerformance Whack A Mole
Performance Whack A Moleoscon2007
 
Monitoring.docx
Monitoring.docxMonitoring.docx
Monitoring.docxssuser20fcbe
 
Pros_and_Cons_of_DW_Apps pdf.pdf
Pros_and_Cons_of_DW_Apps pdf.pdfPros_and_Cons_of_DW_Apps pdf.pdf
Pros_and_Cons_of_DW_Apps pdf.pdfHernanKlint
 

Semelhante a PhpTek Ten Things to do to make your MySQL servers Happier and Healthier (20)

Tx lf propercareandfeedmysql
Tx lf propercareandfeedmysqlTx lf propercareandfeedmysql
Tx lf propercareandfeedmysql
 
Congratsyourthedbatoo
CongratsyourthedbatooCongratsyourthedbatoo
Congratsyourthedbatoo
 
Linuxfest Northwest Proper Care and Feeding Of a MySQL for Busy Linux Admins
Linuxfest Northwest Proper Care and Feeding Of a MySQL for Busy Linux AdminsLinuxfest Northwest Proper Care and Feeding Of a MySQL for Busy Linux Admins
Linuxfest Northwest Proper Care and Feeding Of a MySQL for Busy Linux Admins
 
Proper Care and Feeding of a MySQL Database for Busy Linux Administrators
Proper Care and Feeding of a MySQL Database for Busy Linux AdministratorsProper Care and Feeding of a MySQL Database for Busy Linux Administrators
Proper Care and Feeding of a MySQL Database for Busy Linux Administrators
 
The Proper Care and Feeding of a MySQL Database for Busy Linux Admins -- SCaL...
The Proper Care and Feeding of a MySQL Database for Busy Linux Admins -- SCaL...The Proper Care and Feeding of a MySQL Database for Busy Linux Admins -- SCaL...
The Proper Care and Feeding of a MySQL Database for Busy Linux Admins -- SCaL...
 
MySQL Webinar 2/4 Performance tuning, hardware, optimisation
MySQL Webinar 2/4 Performance tuning, hardware, optimisationMySQL Webinar 2/4 Performance tuning, hardware, optimisation
MySQL Webinar 2/4 Performance tuning, hardware, optimisation
 
Oracle OpenWorld 2013 - HOL9737 MySQL Replication Best Practices
Oracle OpenWorld 2013 - HOL9737 MySQL Replication Best PracticesOracle OpenWorld 2013 - HOL9737 MySQL Replication Best Practices
Oracle OpenWorld 2013 - HOL9737 MySQL Replication Best Practices
 
Orion Network Performance Monitor (NPM) Optimization and Tuning Training
Orion Network Performance Monitor (NPM) Optimization and Tuning TrainingOrion Network Performance Monitor (NPM) Optimization and Tuning Training
Orion Network Performance Monitor (NPM) Optimization and Tuning Training
 
4 facing explosive data growth five ways to optimize storage for oracle datab...
4 facing explosive data growth five ways to optimize storage for oracle datab...4 facing explosive data growth five ways to optimize storage for oracle datab...
4 facing explosive data growth five ways to optimize storage for oracle datab...
 
Beat the devil: towards a Drupal performance benchmark
Beat the devil: towards a Drupal performance benchmarkBeat the devil: towards a Drupal performance benchmark
Beat the devil: towards a Drupal performance benchmark
 
MySQL Enterprise Backup: Better Very Large Database Backup & Recovery and More!!
MySQL Enterprise Backup: Better Very Large Database Backup & Recovery and More!!MySQL Enterprise Backup: Better Very Large Database Backup & Recovery and More!!
MySQL Enterprise Backup: Better Very Large Database Backup & Recovery and More!!
 
MySQL Tech Tour Nov, 2013
MySQL Tech Tour Nov, 2013MySQL Tech Tour Nov, 2013
MySQL Tech Tour Nov, 2013
 
OVHcloud – Enterprise Cloud Databases
OVHcloud – Enterprise Cloud DatabasesOVHcloud – Enterprise Cloud Databases
OVHcloud – Enterprise Cloud Databases
 
Performance Whackamole (short version)
Performance Whackamole (short version)Performance Whackamole (short version)
Performance Whackamole (short version)
 
ZFS appliance
ZFS applianceZFS appliance
ZFS appliance
 
Java Memory Hogs.pdf
Java Memory Hogs.pdfJava Memory Hogs.pdf
Java Memory Hogs.pdf
 
MySQL Performance Tuning at COSCUP 2014
MySQL Performance Tuning at COSCUP 2014MySQL Performance Tuning at COSCUP 2014
MySQL Performance Tuning at COSCUP 2014
 
Performance Whack A Mole
Performance Whack A MolePerformance Whack A Mole
Performance Whack A Mole
 
Monitoring.docx
Monitoring.docxMonitoring.docx
Monitoring.docx
 
Pros_and_Cons_of_DW_Apps pdf.pdf
Pros_and_Cons_of_DW_Apps pdf.pdfPros_and_Cons_of_DW_Apps pdf.pdf
Pros_and_Cons_of_DW_Apps pdf.pdf
 

Mais de Dave Stokes

Json within a relational database
Json within a relational databaseJson within a relational database
Json within a relational databaseDave Stokes
 
Database basics for new-ish developers -- All Things Open October 18th 2021
Database basics for new-ish developers  -- All Things Open October 18th 2021Database basics for new-ish developers  -- All Things Open October 18th 2021
Database basics for new-ish developers -- All Things Open October 18th 2021Dave Stokes
 
Php & my sql - how do pdo, mysq-li, and x devapi do what they do
Php & my sql  - how do pdo, mysq-li, and x devapi do what they doPhp & my sql  - how do pdo, mysq-li, and x devapi do what they do
Php & my sql - how do pdo, mysq-li, and x devapi do what they doDave Stokes
 
Longhorn PHP - MySQL Indexes, Histograms, Locking Options, and Other Ways to ...
Longhorn PHP - MySQL Indexes, Histograms, Locking Options, and Other Ways to ...Longhorn PHP - MySQL Indexes, Histograms, Locking Options, and Other Ways to ...
Longhorn PHP - MySQL Indexes, Histograms, Locking Options, and Other Ways to ...Dave Stokes
 
MySQL 8.0 New Features -- September 27th presentation for Open Source Summit
MySQL 8.0 New Features -- September 27th presentation for Open Source SummitMySQL 8.0 New Features -- September 27th presentation for Open Source Summit
MySQL 8.0 New Features -- September 27th presentation for Open Source SummitDave Stokes
 
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScriptJavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScriptDave Stokes
 
Open Source World June '21 -- JSON Within a Relational Database
Open Source World June '21 -- JSON Within a Relational DatabaseOpen Source World June '21 -- JSON Within a Relational Database
Open Source World June '21 -- JSON Within a Relational DatabaseDave Stokes
 
Dutch PHP Conference 2021 - MySQL Indexes and Histograms
Dutch PHP Conference 2021 - MySQL Indexes and HistogramsDutch PHP Conference 2021 - MySQL Indexes and Histograms
Dutch PHP Conference 2021 - MySQL Indexes and HistogramsDave Stokes
 
Validating JSON -- Percona Live 2021 presentation
Validating JSON -- Percona Live 2021 presentationValidating JSON -- Percona Live 2021 presentation
Validating JSON -- Percona Live 2021 presentationDave Stokes
 
Midwest PHP Presentation - New MSQL Features
Midwest PHP Presentation - New MSQL FeaturesMidwest PHP Presentation - New MSQL Features
Midwest PHP Presentation - New MSQL FeaturesDave Stokes
 
Data Love Conference - Window Functions for Database Analytics
Data Love Conference - Window Functions for Database AnalyticsData Love Conference - Window Functions for Database Analytics
Data Love Conference - Window Functions for Database AnalyticsDave Stokes
 
Open Source 1010 and Quest InSync presentations March 30th, 2021 on MySQL Ind...
Open Source 1010 and Quest InSync presentations March 30th, 2021 on MySQL Ind...Open Source 1010 and Quest InSync presentations March 30th, 2021 on MySQL Ind...
Open Source 1010 and Quest InSync presentations March 30th, 2021 on MySQL Ind...Dave Stokes
 
Confoo 2021 -- MySQL New Features
Confoo 2021 -- MySQL New FeaturesConfoo 2021 -- MySQL New Features
Confoo 2021 -- MySQL New FeaturesDave Stokes
 
Confoo 2021 - MySQL Indexes & Histograms
Confoo 2021 - MySQL Indexes & HistogramsConfoo 2021 - MySQL Indexes & Histograms
Confoo 2021 - MySQL Indexes & HistogramsDave Stokes
 
Datacon LA - MySQL without the SQL - Oh my!
Datacon LA - MySQL without the SQL - Oh my! Datacon LA - MySQL without the SQL - Oh my!
Datacon LA - MySQL without the SQL - Oh my! Dave Stokes
 
MySQL Replication Update - DEbconf 2020 presentation
MySQL Replication Update - DEbconf 2020 presentationMySQL Replication Update - DEbconf 2020 presentation
MySQL Replication Update - DEbconf 2020 presentationDave Stokes
 
MySQL 8.0 Operational Changes
MySQL 8.0 Operational ChangesMySQL 8.0 Operational Changes
MySQL 8.0 Operational ChangesDave Stokes
 
cPanel now supports MySQL 8.0 - My Top Seven Features
cPanel now supports MySQL 8.0 - My Top Seven FeaturescPanel now supports MySQL 8.0 - My Top Seven Features
cPanel now supports MySQL 8.0 - My Top Seven FeaturesDave Stokes
 
A Step by Step Introduction to the MySQL Document Store
A Step by Step Introduction to the MySQL Document StoreA Step by Step Introduction to the MySQL Document Store
A Step by Step Introduction to the MySQL Document StoreDave Stokes
 
Discover The Power of NoSQL + MySQL with MySQL
Discover The Power of NoSQL + MySQL with MySQLDiscover The Power of NoSQL + MySQL with MySQL
Discover The Power of NoSQL + MySQL with MySQLDave Stokes
 

Mais de Dave Stokes (20)

Json within a relational database
Json within a relational databaseJson within a relational database
Json within a relational database
 
Database basics for new-ish developers -- All Things Open October 18th 2021
Database basics for new-ish developers  -- All Things Open October 18th 2021Database basics for new-ish developers  -- All Things Open October 18th 2021
Database basics for new-ish developers -- All Things Open October 18th 2021
 
Php & my sql - how do pdo, mysq-li, and x devapi do what they do
Php & my sql  - how do pdo, mysq-li, and x devapi do what they doPhp & my sql  - how do pdo, mysq-li, and x devapi do what they do
Php & my sql - how do pdo, mysq-li, and x devapi do what they do
 
Longhorn PHP - MySQL Indexes, Histograms, Locking Options, and Other Ways to ...
Longhorn PHP - MySQL Indexes, Histograms, Locking Options, and Other Ways to ...Longhorn PHP - MySQL Indexes, Histograms, Locking Options, and Other Ways to ...
Longhorn PHP - MySQL Indexes, Histograms, Locking Options, and Other Ways to ...
 
MySQL 8.0 New Features -- September 27th presentation for Open Source Summit
MySQL 8.0 New Features -- September 27th presentation for Open Source SummitMySQL 8.0 New Features -- September 27th presentation for Open Source Summit
MySQL 8.0 New Features -- September 27th presentation for Open Source Summit
 
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScriptJavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
 
Open Source World June '21 -- JSON Within a Relational Database
Open Source World June '21 -- JSON Within a Relational DatabaseOpen Source World June '21 -- JSON Within a Relational Database
Open Source World June '21 -- JSON Within a Relational Database
 
Dutch PHP Conference 2021 - MySQL Indexes and Histograms
Dutch PHP Conference 2021 - MySQL Indexes and HistogramsDutch PHP Conference 2021 - MySQL Indexes and Histograms
Dutch PHP Conference 2021 - MySQL Indexes and Histograms
 
Validating JSON -- Percona Live 2021 presentation
Validating JSON -- Percona Live 2021 presentationValidating JSON -- Percona Live 2021 presentation
Validating JSON -- Percona Live 2021 presentation
 
Midwest PHP Presentation - New MSQL Features
Midwest PHP Presentation - New MSQL FeaturesMidwest PHP Presentation - New MSQL Features
Midwest PHP Presentation - New MSQL Features
 
Data Love Conference - Window Functions for Database Analytics
Data Love Conference - Window Functions for Database AnalyticsData Love Conference - Window Functions for Database Analytics
Data Love Conference - Window Functions for Database Analytics
 
Open Source 1010 and Quest InSync presentations March 30th, 2021 on MySQL Ind...
Open Source 1010 and Quest InSync presentations March 30th, 2021 on MySQL Ind...Open Source 1010 and Quest InSync presentations March 30th, 2021 on MySQL Ind...
Open Source 1010 and Quest InSync presentations March 30th, 2021 on MySQL Ind...
 
Confoo 2021 -- MySQL New Features
Confoo 2021 -- MySQL New FeaturesConfoo 2021 -- MySQL New Features
Confoo 2021 -- MySQL New Features
 
Confoo 2021 - MySQL Indexes & Histograms
Confoo 2021 - MySQL Indexes & HistogramsConfoo 2021 - MySQL Indexes & Histograms
Confoo 2021 - MySQL Indexes & Histograms
 
Datacon LA - MySQL without the SQL - Oh my!
Datacon LA - MySQL without the SQL - Oh my! Datacon LA - MySQL without the SQL - Oh my!
Datacon LA - MySQL without the SQL - Oh my!
 
MySQL Replication Update - DEbconf 2020 presentation
MySQL Replication Update - DEbconf 2020 presentationMySQL Replication Update - DEbconf 2020 presentation
MySQL Replication Update - DEbconf 2020 presentation
 
MySQL 8.0 Operational Changes
MySQL 8.0 Operational ChangesMySQL 8.0 Operational Changes
MySQL 8.0 Operational Changes
 
cPanel now supports MySQL 8.0 - My Top Seven Features
cPanel now supports MySQL 8.0 - My Top Seven FeaturescPanel now supports MySQL 8.0 - My Top Seven Features
cPanel now supports MySQL 8.0 - My Top Seven Features
 
A Step by Step Introduction to the MySQL Document Store
A Step by Step Introduction to the MySQL Document StoreA Step by Step Introduction to the MySQL Document Store
A Step by Step Introduction to the MySQL Document Store
 
Discover The Power of NoSQL + MySQL with MySQL
Discover The Power of NoSQL + MySQL with MySQLDiscover The Power of NoSQL + MySQL with MySQL
Discover The Power of NoSQL + MySQL with MySQL
 

Último

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
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
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
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...apidays
 
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
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
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 Processorsdebabhi2
 
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
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
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
 
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 Scriptwesley chun
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 

Último (20)

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
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
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
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...
 
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
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
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
 
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
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
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
 
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
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 

PhpTek Ten Things to do to make your MySQL servers Happier and Healthier

  • 1. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.1 Dave Stokes MySQL Community Manager slideshare.net/davestokes David.Stokes@Oracle.Com @stoker Ten Things toTen Things to Make Your MySQLMake Your MySQL Servers Faster and HappierServers Faster and Happier
  • 2. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.2 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 decision. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. Safe Harbor Statement
  • 3. Radiologists & Gorillas 83 Percent of Radiologists Didn’t Spot the Gorilla Hiding in This CT Scan – Picture of gorilla hidden in last slide of ten lung scans. – They wanted to see if the radiologists, focused on the telltale nodules, would be blind to the easily detectable and highly anomalous gorilla – The gorilla was miniscule, but huge compared to the nodules. It was about the size of a box of matches-or 48 times the size of a typical nodule.
  • 5. Databases Do Not Play Well With Others Databases Systems are the colicky, nasty children of the software world with bad tempers and leaky noses that stubbornly insist on their way and will become disruptive at the most inopportune time, ruining man-years of work in an instant before demanding more --Said by just about every software developer ever
  • 6. So how do you get happy MySQL Servers? This session for those who are not MySQL DBAs but are tasked to take care of MySQL Instances among other tasks. This will not make you a DBA any more than a 1 hour session on programming will make you a programmer.
  • 7. How does a Database server work Client SELECT phone FROM friends WHERE name = ‘Joe’; Server
  • 8. How does a Database server work Client SELECT phone FROM friends WHERE name = ‘Joe’; Server PARSE find Joe in friends table in memory return phone
  • 9. How does a Database server work Client SELECT phone FROM friends WHERE name = ‘Joe’; . . . Process phone data Server PARSE find Joe in friends table in memory return phone
  • 10. How does a Database server work Client SELECT phone FROM friends WHERE name = ‘Joe’; . . . Process phone data Server PARSE find Joe in friends table in memory return phone What was that about memory???
  • 11. Thing to do #1 – Lots of memory ‱ Databases love data in memory
  • 12. What if it is not in memory? MySQL Please give me the data from the city table OS
  • 13. What if it is not in memory? MySQL Please give me the data from the city table OS Get inode
  • 14. What if it is not in memory? MySQL Please give me the data from the city table OS Get inode Ask disk for data
  • 15. What if it is not in memory? MySQL Please give me the data from the city table OS Get inode Ask disk for data Get data into buffer
  • 16. What if it is not in memory? MySQL Please give me the data from the city table Load data into memory OS Get inode Ask disk for data Get data into buffer Hand buffer off
  • 17. What if it is not in memory? MySQL Please give me the data from the city table Load data into memory OS Get inode Ask disk for data Get data into buffer Hand buffer off Much longer than just reading from memory
  • 18. Rule #2 – Use Proper Hardware Databases have to do unpredictable queries, random I/O, and sequential scans so slow I/O kills performance
  • 19. Buffers What happens when you read a file into memory DISK Disk Controller Page Cache User Buffer
  • 20. Buffers Memory Lookup – 100 nanoseconds, 12GB/sec DISK Disk Controller Page Cache User Buffer
  • 21. Buffers Memory Lookup – 100 nanoseconds, 12GB/sec DISK seek – 10 milliseconds, 760MB/sec DISK Disk Controller Page Cache User Buffer
  • 22. Disk Reads A disk read is 100,000 slower than reading memory ● For comparison – 100,000 minutes is about 69.5 days – 100,000 feet is about 19 miles – 100,000 kilometers is 15.7 times around Earth's equator
  • 23. SSD Use standard RAID controller ● SSD as writeback cache ● Battery backed ● $2.5/GB verses .075/GB ● Very fast seek time ● Density
  • 24. Hardware recommendations 1. Memory – lots of it, ecc 2. DISKs – more spindles, high speed, fast controllers, RAID 10, write back cache, and XFS/ZFS/ext4 not ext2/3 3. Write-through caches with battery backup units for disks must be monitored, and have life span much longer than planned outages. Set 'learning cycles' to off hours 4. CPUs, Core less important (spend money on Memory and IO)
  • 25. Thing to do #3 – Understand Login/Privs The default MySQL Login and Privilege system is a little 
 primitive. Be Stingy with privs as they are hard to get back Some tools may not give the privs you want – DROP PRIV is given by default by one popular admin tool
  • 26. Quick Security Warning! MySQL login security is primitive. ● Database mysql has users table ● 'jsmith'@'co.com' or 'fred'@'10.10.%' – Matches host, then user, then password ● Be explicit ● Proxy and Pluggable logins in MySQL 5.6 ● 'joe'@'10.10.%' may not be the same as 'joe'@'yourco.com' or 'joe'@'home.net' MySQL privilege security ● GRANT functions or access ● Can get Byzantine quickly ● Use a GUI
  • 27. MySQL Workbench – set up roles
  • 28. Thing to do #4 – Use Current Release Speed – MySQL 5.5 is 20% faster than 5.1 – MySQL 5.6 is ~15% faster than 5.5 Features – Better optimizer – Sub-queries – NoSQL/memcached – Online DDL
  • 29. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.31 MySQL 5.6: Scalability ● Users can fully utilize latest generations of hardware and OS ● Scales as data volumes and users grow
  • 30. Thing to do #5 – Monitor You need 'something' monitoring your instances as you need a quick way to check status & record events – MySQL Enterprise Monitor – MySQL Workbench – Nagios, Cacti, phpMyAdmin, etc
  • 31. Turn on logging 1. Slow query log -- not all long running queries are bad 2. Log queries not using indexes 3. READ the logs!!! 4. Use monitoring software – MEM, Innotop, Cacti, Munin, Nagios, etc – and pay attention to it
  • 32. Just because you can not see all of the problem does not mean the problem is not there!
  • 33. Things to do #6 – Backups Backups are usually some sort of disk snap shot or serializing data to a file The more the better but you need to know steps to recover dropped table, lost databases, or mangled data. Use data replication to a slave and then backup slave. Be paranoid!!!!!
  • 34. Thing to do #7 -- Replication Replication for MySQL is the binary log for the master being copied to a slave. The slave then updates its copy of the data Two types: 1. Asynchronous – server does not check changes sent to slave before proceeding 2. Semi Synchronous – server checks that slave received changes before proceeding
  • 35. Replication – was messy! MySQL 5.6 is multi threaded and has GTIDs
  • 36. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.38  Simple to track & compare replication across the cluster ● Unique identifier for each transaction written to the Binlog  Automatically identify the most up-to-date slave for failover  Deploy n-tier replication hierarchies Master GTID=123456 GTID=123456 GTID=123456 GTID=123456 MySQL 5.6: Replication Global Transaction Ids Eliminates the need for complex 3rd party solutions
  • 37. Replication -- network Network latency will affect MySQL replication. So plan network topology to minimize bandwidth competition with other systems/services. Slaves do not need to be as fast as the master but try to keep things reasonably close Do not have to replicate all tables/databases to all slaves. Cut down on traffic by replicating what is needed!
  • 38. Writes & Reads Reads Reads ‱ Write to one master ‱ Read from many slaves, easily add more as needed ‱ Perfect for read/write intensive apps Application MySQL Replication Load Balancer MySQL Database Replication Enables Scalability
  • 39. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.41  New option: binlog-row-image=minimal  Increases throughput for master and slave – Reduces Binlog size, memory & network bandwidth  Only replicates elements of the Row image that have changed Primary Key Changed Columns MySQL 5.6: Replication Optimized Row Base Replication
  • 40. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.42 Before: – Transaction Data: in tables – Replication Info: in files MySQL 5.6 – Transaction Data: in tables – Replication Info: in tables Data Position Info CRASH! Time Data Position Info Time  Automatic recovery of a slave after a failure ● Binlog and table data are transactionally consistent  Resumes replication without Dev/Op intervention ● Automatically rolling back replication to last committed event Atomic Atomic MySQL 5.6: Crash safe Slaves Eliminates risk of data loss or corruption
  • 41. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.43 Master # Slave # MySQL 5.6: Replication Event Checksums Eliminates risk of data loss or corruption  Ensures replicated data is correct, consistent and accessible  Detects corrupt replication events before they’re applied – Returns an error  Protects entire replication path – Memory – Disk – Network – Bugs
  • 42. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.44 Thing to do #8 – Use InnoDB ● Transactional, speedy, crash safe, and where Oracle is concentrating development. ● Online DDL, SSD Optimizations, Dump/Restore warm buffer pool (great for cloud) ● NoSQL access via memcached API
  • 43. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.45 ● Enables export/import of tables between running MySQL instances MySQL 5.6: InnoDB Transportable Tablespaces CREATE TABLE t(c1 INT) engine=InnoDB; FLUSH TABLE t FOR EXPORT; -- quiesce the table and create the meta data file $innodb_data_home_dir/test/t.cfg UNLOCK TABLES; Export: Import: CREATE TABLE t(c1 INT) engine=InnoDB; -- if it doesn't already exist ALTER TABLE t DISCARD TABLESPACE; -- The user must stop all updates on the tables, prior to the IMPORT ALTER TABLE t IMPORT TABLESPACE; ● Better Elasticity - Quickly spin up new instances to meet demand ● Great for Cloud, Hosted, SaaS, On-premise deployments
  • 44. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.46 Same app can leverage:  Key-value access to InnoDB via familiar Memcached API  SQL for rich queries, JOINs, FKs, etc.  Fully transactional MySQL 5.6: InnoDB NoSQL Key Value Access to InnoDB ● Up to 9x performance boost for updates ● Great for fast data ingestion in Big Data pipeline
  • 45. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.47 ● Subquery Optimizations ● File sort optimizations for most web use cases ● 4x better execution time – 40s to 10s  Index Condition Pushdown ● 160x better execution time – 15s to 90ms  Batched Key Access and Multi Range Read ● 280x better execution time – 2800s to 10s MySQL 5.6: Optimizer Better complex query execution times ever growing data sets (Big D MEM + Query Analyzer key to utilizing full benefits of 5.6 Optimizer MySQL Consultative Support provides guidance on configuration
  • 46. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.48 Things to do #9 – Indexes Rough rule – look at columns used in joins or after a WHERE
  • 47. Indexes are good Without Index DB needs to scan entire table or table scan With Index DB can go right to record
  • 48. Indexes, the bad ‱ Overhead -- space, speed, maintenance (you can have too many) ‱ Not a panacea – does not cure all problems ‱ Will not help if you need to perform a table scan ‱ Composite indexes can be tricky – YearMonthDay usually better than DayMonthYear
  • 49. Slide to check if audience is still awake
  • 50. Thing to do #10 – Tuning ASet innodb_buffer_pool_size to 70- 80% of memory Turn off query cache
  • 51. Where to get help Lots of Help Available ● High Performance MySQL – Schwartz et al ● MySQL Administrator's Bible – Cabral ● Effective MySQL series – Bradford ● OurSQL podcast ● Forums.MySQL.Com Planet.MySQL.Com Local MySQL User Group
  • 52. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.54  Optimized for Web, Cloud-based, Embedded use cases  Simplified, Pluggable architecture – Maintainability, more extensible – More NoSQL options (HTTP, JSON, JavaScript, etc.)  Refactoring – Data Dictionary in InnoDB – Optimizer/Parser/Protocol  InnoDB – Optimized for SSD – GIS  Easy HA, Replication and Sharding MySQL Database Development Priorities
  • 53. MySQL Connect ConferenceMySQL Connect Conference Sept 21st - 23rd in San Francisco The Call for Proposals (CFP) for MySQL Connect 2013 just closed. Conference attendees will hear the best ideas from MySQL experts from around the globe: developers, visionaries, customers, partners. Book hotel early do to Americas Cup races in San Francisco.
  • 54. MySQL Marinate! Virtual self-study of MySQL through the Boston MySQL Users Group ( http://www.meetup.com/mysqlbos/) http://www.meetup.com/Virtual- Tech-Self-Study/events/84103332/