Dave Stokes MySQL Community Manager

Similar documents
<Insert Picture Here> MySQL Security In A Cloudy World

MySQL Strategy. Morten Andersen, MySQL Enterprise Sales. Copyright 2014 Oracle and/or its affiliates. All rights reserved.

MySQL Security: Best Practices

Monitoring MySQL. Presented by, MySQL & O Reilly Media, Inc. A quick overview of available tools

Tushar Joshi Turtle Networks Ltd

Using MySQL for Big Data Advantage Integrate for Insight Sastry Vedantam

Andrew Moore Amsterdam 2015

Who did what, when, where and how MySQL Audit Logging. Jeremy Glick & Andrew Moore 20/10/14

MySQL: Cloud vs Bare Metal, Performance and Reliability

MySQL Replication. openark.org

Monitoring MySQL. Kristian Köhntopp

What s New in MySQL 5.7 Security Georgi Joro Kodinov Team Lead MySQL Server General Team

DBA Tutorial Kai Voigt Senior MySQL Instructor Sun Microsystems Santa Clara, April 12, 2010

JAMF Software Server Installation Guide for Windows. Version 8.6

Practical Cassandra. Vitalii

MySQL. Leveraging. Features for Availability & Scalability ABSTRACT: By Srinivasa Krishna Mamillapalli

Database Administration with MySQL

Zero Downtime Deployments with Database Migrations. Bob Feldbauer

JAMF Software Server Installation Guide for Linux. Version 8.6

High Availability Solutions for the MariaDB and MySQL Database

Parallel Replication for MySQL in 5 Minutes or Less

MySQL Enterprise Monitor

MySQL Backup IEDR

Scaling Graphite Installations

Welcome to Virtual Developer Day MySQL!

An overview of Drupal infrastructure and plans for future growth. prepared by Kieran Lal and Gerhard Killesreiter for the Drupal Association

Installation Guide for contineo

Percona Server features for OpenStack and Trove Ops

Maintaining Non-Stop Services with Multi Layer Monitoring

General DBA Best Practices

Websense Support Webinar: Questions and Answers

Application Note 116: Gauntlet System High Availability Using Replication

Installing Oracle 12c Enterprise on Windows 7 64-Bit

IceWarp to IceWarp Server Migration

MySQL Security for Security Audits

Administration Guide NetIQ Privileged Account Manager 3.0.1

MySQL Administration and Management Essentials

Outline. Failure Types

Getting Started with Attunity CloudBeam for Azure SQL Data Warehouse BYOL

Vantage Report. Quick Start Guide

How to Install SMTPSwith Mailer on Centos Server/VPS

Workflow Templates Library

Firebird. A really free database used in free and commercial projects

Oracle 12c Multitenant and Encryption in Real Life. Christian Pfundtner

Parallels. for your Linux or Windows Server. Small Business Panel. Getting Started Guide. Parallels Small Business Panel // Linux & Windows Server

Best Practices for Using MySQL in the Cloud

Enterprise Remote Control 5.6 Manual

Data Replication in Privileged Credential Vaults

BI xpress Product Overview

Exploring Amazon EC2 for Scale-out Applications

Oracle E-Business Suite APPS, SYSADMIN, and oracle Securing Generic Privileged Accounts. Stephen Kost Chief Technology Officer Integrigy Corporation

Applications Manager Best Practices document

Monitoring MySQL. Geert Vanderkelen MySQL Senior Support Engineer Sun Microsystems

High Availability and Scalability for Online Applications with MySQL

Reboot the ExtraHop System and Test Hardware with the Rescue USB Flash Drive

TSM Studio Server User Guide

Enterprise Application Monitoring with

Sawmill Log Analyzer Best Practices!! Page 1 of 6. Sawmill Log Analyzer Best Practices

Managing MySQL Scale Through Consolidation

Securing Oracle E-Business Suite in the Cloud

Planning Domain Controller Capacity

MySQL Cluster New Features. Johan Andersson MySQL Cluster Consulting johan.andersson@sun.com

MySQL performance in a cloud. Mark Callaghan

Hands-On Microsoft Windows Server 2008

Preparing for the Big Oops! Disaster Recovery Sites for MySQL. Robert Hodges, CEO, Continuent MySQL Conference 2011

Metalogix SharePoint Backup. Advanced Installation Guide. Publication Date: August 24, 2015

High Availability Solutions for MySQL. Lenz Grimmer DrupalCon 2008, Szeged, Hungary

Best Practices for Monitoring Databases on VMware. Dean Richards Senior DBA, Confio Software

SOS SO S O n O lin n e lin e Bac Ba kup cku ck p u USER MANUAL

Synchronous multi-master clusters with MySQL: an introduction to Galera

MySQL backups: strategy, tools, recovery scenarios. Akshay Suryawanshi Roman Vynar

Dell SupportAssist Version 2.0 for Dell OpenManage Essentials Quick Start Guide

MySQL Enterprise Backup

An overview of the Drupal infrastructure and plans for future growth

SCF/FEF Evaluation of Nagios and Zabbix Monitoring Systems. Ed Simmonds and Jason Harrington 7/20/2009

Who is my SAP HANA DBA? What can I expect from her/him? HANA DBA Role & Responsibility. Rajesh Gupta, Deloitte. Consulting September 24, 2015

F-Secure Messaging Security Gateway. Deployment Guide

Walton Centre. Document History Date Version Author Changes 01/10/ A Cobain L Wyatt 31/03/ L Wyatt Update to procedure

Solaris For The Modern Data Center. Taking Advantage of Solaris 11 Features

Microsoft SQL Database Administrator Certification

Attix5 Pro Storage Platform

Scaling Pinterest. Yash Nelapati Ascii Artist. Pinterest Engineering. Saturday, August 31, 13

YouTube Vitess. Cloud-Native MySQL. Oracle OpenWorld Conference October 26, Anthony Yeh, Software Engineer, YouTube.

How To Use The Listerv Maestro With A Different Database On A Different System (Oracle) On A New Computer (Orora)

escan SBS 2008 Installation Guide

IceWarp Server Windows Installation Guide

Bigdata High Availability (HA) Architecture

Table of Contents. Overview... 1 Introduction... 2 Common Architectures Technical Challenges with Magento ChinaNetCloud's Experience...

Scaling up = getting a better machine. Scaling out = use another server and add it to your cluster.

Using Apache Derby in the real world

Comparing MySQL and Postgres 9.0 Replication

National Fire Incident Reporting System (NFIRS 5.0) Configuration Tool User's Guide

StoreGrid Backup Server With MySQL As Backend Database:

How To Monitor Mysql With Zabbix

How To Set Up Dataprotect

SQL Databases Course. by Applied Technology Research Center. This course provides training for MySQL, Oracle, SQL Server and PostgreSQL databases.

Elastic Scalability in MySQL Fabric using OpenStack

Encrypting MySQL data at Google. Jonas Oreland and Jeremy Cole

Transcription:

The Proper Care and Feeding of a MySQL Server for Busy Linux Admins Dave Stokes MySQL Community Manager Email: David.Stokes@Oracle.com Twiter: @Stoker Slides: slideshare.net/davidmstokes

Safe Harbor Agreement 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.

So take anything on future products with a grain of

Happy Birthday to MySQL

Databases are Selfish Messy Want entire system to self Suck up memory, disk space, bandwidth, sanity Growing all the time Needs updates Suck up a good part of your life

Databases are nasty toddlers!!

The previous opinions are The views of most admins (and developers) who also have DBA duties added to all their other regular tasks to help fill all their lavish spare time*

The previous opinions are The views of most admins (and developers) who also have DBA duties added to all their other regular tasks to help fill all their lavish spare time* * This is the opinion of their bosses between rounds of golf, frozen adult beverages, and private jet 'business trip' to tropical locations.

Happy MySQL Databases Hardware Software Backups & Replication Tools to make life easier Configuration suggestions Q&A

Hardware Happiness Databases LOVE memory Spend money on good memory Lots of it More important than cores

Why memory? Reading from memory is 100,000 faster than reading from disk 100K miles if four times plus around the world At one situp a second, it would take 27.78 hours to do 100K

Disks or Disk Like Things Move data to separate controller/disk from logs Do not log on slow devices RAID to your favorite level RAID 10 Minimum DO NOT USE Consumer Grade Disks Use disks that are designed for 7/24/365 operation not a price point CACHES disk and controller Write through or write back caches Both lie Make sure they don't auto tune during production hours FusionIO cards Atomic rites = No Double buffering, therefor SPEED!!

Network Never expose your instances to outside world SCRUB rigorously all user data Keep separate net for replication and/or backup MySQL authentications uses host, user & Password Boss@Home May not equal Boss@Work Overly enthusiastic, first match in table gets in!!! Set switch to not do lookup in case DNS overloaded

Slave Servers Slaves need to have bigger/badder hardware than master Do more work Use MySQL Utilities to clone masters, set up slaves Dedicated network to avoid network contention

Software Run the latest greatest version of MySQL you can Performance Bug fixes Features Keep MySQL by itself Databases do not play well with other services Contention for resources Swapping Maybe a caching layer but watch memory use!!

Backups & Replication Thou shalt make backups!!! Make sure you backup your data so frequently it verges on being painful and then look for ways to increase that! Know how to restore entire instances, entire databases, or a table. Save views, functions, etc. And others on staff need to be able to do this too (cross train) Keep off site backups off site and test randomly Make sure multiple people can get to off site backups Nobody ever got fired for doing too many backups Paranoia should be your friend!!!!

Replication MySQL replications is easy to set up and misunderstand Two types of replications Async slave grabs copy of changes from master and applies them to own set of data, master unaware of what slave is doing Semi-sync master waits for acknowledgment from at least one slave before proceeding Three forms Statement, Row, and Mixed Single threaded before 5.6, multi threaded for different databases in 5,6, multi infra databases threaded for 5.7

Replication Filters Do not need to replicate everything Check churn of data, maybe 1x day backup Filter tables Can change filters on the fly with 5.7 Something going on in manufacturing, can we get ALL of their data copied someplace?'

Global Transaction IDs Each transaction has unique GTID starting 5.6 Easy for slaves to get caught up to master No longer have to look at file offsets on master and slave to get start position Saves time and $ and sanity Storing replication data in InnoDB tables plus adding check sums make crash safe Row based can exploit only sending key and changed items, not entire row of data

Multimaster and Multisource Multimaster Not recommended but many do it System A auto_increment odd numbers and System B auto_increment even numbers Needs to be watched Multi source MySQL 5.7 Multiple masters send data to one slave for master backup Make sure sharded data does not overlap

Group Replication

Oracle Database Shops! IF you also have a big Oracle DB shop: You can backup to the big Oracle STB backup devices Great if you are in an Oracle shop MySQL can use oracle Database Firewall & Audit Vault Enterprise Customers Audit Vault

Replication for backup Replication uses three threads Master to slave Slave to log Log to data Shut down log to data thread, run backup, then restart log to data Data from master still stored but not written during backup but applied when backup is done

Tools to make life easier There are lots of tools to make life easier for DBA chores Monitoring Yes, you need to monitor Administration Yes, you can type everything by hand on the command line but don't you have better things to do!? Documentation of instances Backup

Monitoring Active Watches instances and send alerts MySQL Enterprise Monitor (supported customers) Nagios, cacti, etc. Percona has plugins Soalrwinds, Vivid Cortex Your favorite that is not mentioned Helps to be able to comb historical data Semi-active MySQL Workbench Dashboard & SYS Schema PhpMyAdmin Your favorite tool that is not mentioned

You can't the full size of a problem at first glance!!

MySQL Workbench Query tool Visual Explain to aid in optimization Admin tool Users, backup, imports, change settings No more fat finger 'UPDATE user set 'SELECT_PRIV='Y',... Dashboard and System Monitoring Sys Schema Entity Relationship Mapper Migration tool And more!

MySQL Utilities Written in Python, easy to extend Setup replication and automatic fail over Copy user settings Copy data Look for bad processed and kill 'em Move binary logs Grep for a columng And much more

And more Percona tool kit Toad for MySQL from Dell Your favorite tool that is not mentioned

Config Suggestions Turn off DNS lookups zone transfer dies Use skip-name-resolve Save/Load statistics Use innodb_stats_persistent See 14.13.16.1 Configuring Persistent Optimizer Statistics Parameters in the MySQL Manual innodb_buffer_pool_dump=on innodb_buffer_pool_dump_at_shutdown=on & innodb_buffer_pool_load_at_startup=on

Config continued Tune log level (5.7) log_error_verbosity errors, errors & warnings, E&W + notes Send to SYSLOG Turn off query cache (5.7 Default) Single threaded, use memcached/redis Free up memory InnoDB buffer pool size 75-80% of RAM

Big Hint #1 BE DAMN STINGY with permissions & grants Easier to say no than to constantly be restoring --safe-updates or i-am-a-dummy No more 'opps, I forgot the where clause'

Big Hint #2 Sys_schema please use Views, functions, and procedures on top of the Performance_schema and Information_schema Who is hogging resources Indexes not being used Problematic queries Other routine PITAs

Big Hint #3 5.7 Security Secure install becomes the default Forced root password No anonymous account, no test DB Password rotation Configure rules Length, characters mysql_config_editor (5.6.6) Store encrypted auth credentials (no clear text) Use mysql --login-path=finance

Q&A Slides: slideshare.net/davidmstokes Twitter: @Stoker Email: David.Stokes@Oracle.com Blog: OpenSourceDBA.wordpress.com