SlideShare a Scribd company logo
www.fromdual.com
1 / 31
MySQL für Oracle DBAs
DOAG Webinar 14. Juni 2013
Oli Sennhauser
Senior MySQL Consultant, FromDual GmbH
oli.sennhauser@fromdual.com
www.fromdual.com
2 / 31
Über FromDual GmbH
● FromDual bietet neutral und unabhängig:
● Beratung für MySQL
● Support für MySQL und Galera Cluster
● Remote-DBA Dienstleistungen für MySQL
● MySQL Schulungen
● Oracle Silver Partner (OPN)
● Mitglied der SOUG, DOAG, /ch/open
www.fromdual.com
www.fromdual.com
3 / 31
Inhalt
HA Solutions
➢
Read scale-out
➢
Replication set-up for HA
➢
Active/passive fail-over
➢
MySQL Cluster
➢
Replication Cluster
➢
Storage-Engine-Replication
MySQL für Oracle DBAs
➢
Einsatz von MySQL
➢
Installation, Konfiguration, Starten/Stoppen
➢
Architektur, Storage Engines
➢
InnoDB
➢
Monitoring, Logging
➢
Backup, Restore, Point-in-Time-Recovery
➢
Replikation
➢
Hochverfügbarkeit
➢
RAC für MySQL
www.fromdual.com
4 / 31
Einsatz von MySQL
●
Wo wird MySQL eingesetzt:
● Facebook – 1 Mia User, 72 M QPS
● Google – Adwords, Mia Umsatz/Jahr
(M→O→M→F1)
● Wikipedia – z. Zt. #6 weltweit
● BörseGo – Online Börsenhandel
● Playboy – Drupal CMS
● EMKA – ERP, 1000 MA
● V-Zug – Hybris Webshop
● Buch.de – #2 online Buchhändler in D
● Kikxxl – Callcenter, 1000 MA
● Integrics – VoIP Lösungen, 1000e Anschlüssen
● RePower – zig 1000 Windmühlen
www.fromdual.com
5 / 31
Installation
Oracle: OUI (Oracle Universal Installer)
● MySQL: Windows: Installer
C:Program filesmysqlmysql­server­5.6
C:Program filesmysqlmysql­server­5.6data
● MySQL Linux:
● Pakete: *.rpm, *.deb
/usr/
/var/lib/mysql
● Binary Tar-Ball: mysql­5.7.1­linux­x86_64.tar.gz
● Quellen → Kompilieren: cmake; make; make install
● MySQL Community vs. Enterprise, Drittanbieter
www.fromdual.com
6 / 31
MySQL Plattform
● „Exotische“ Plattformen führen aus
statistischen Gründen eher zu Problemen!
● 85.7% Linux
● 10.5% Windows
● 1.7% Solaris
● 1.4% BSD
● 0.7% Others
www.fromdual.com
7 / 31
Konfiguration
Oracle: $ORACLE_HOME/dbs/init<SID>.ora
●
MySQL:
● Windows:
C:Program Filesmysqlmysql­server­5.6my.ini
● Linux:
/etc/my.cnf, /etc/mysql/my.cnf, $basedir/my.cnf
● !includedir /etc/mysql/conf.d/
● ­­defaults­file, ­­defaults­extra­file
www.fromdual.com
8 / 31
Konfigurations-Parameter
● my.cnf / my.ini
● mysql> SHOW GLOBAL VARIABLES;
● 5.1.69: 277
● 5.5.31: 317
● 5.6.11: 429
● mysql> SET GLOBAL variable = value;
● Kein Persistieren (spfile)
www.fromdual.com
9 / 31
Starten / stoppen
Oracle: sqlplus / as sysdba STARTUP
● MySQL Linux:
● Alt: shell> /etc/init.d/mysql start|stop|restart
● Neu: shell> service mysql start|stop|restart
● „von Hand“:
● shell> bin/mysqld_safe &
● shell> bin/mysqld &
● shell> mysqladmin ­­user=root shutdown
● MySQL Windows
● Windows Service Utility
● cmd> net start|stop|restart MySQL
www.fromdual.com
10 / 31
Tools
● Tools:
● sqlplus → mysql
● srvmgrl → mysqladmin
● MySQL Workbench
● Admin
● Query Browser
● ER - Diagramme
● Heidi SQL, phpMyAdmin
www.fromdual.com
11 / 31
Prozess-Architektur
Oracle: Multi-Prozess Modell
Shared Memory
PMON, SMON, RECO, DBW0, LGWR, ARC0, ...
● MySQL: Multi-Thread Modell
mysqld
● Angel-Prozess
mysqld_safe
● Vordergrund- und Hintergrund-Threads:
www.fromdual.com
12 / 31
MySQL Thread Architektur
mysql> SELECT thread_id, name AS 'thread_name', type, processlist_user AS user
FROM performance_schema.threads;
+-----------+----------------------------------------+------------+------+
| thread_id | thread_name | type | user |
+-----------+----------------------------------------+------------+------+
| 1 | thread/sql/main | BACKGROUND | NULL |
| 2 | thread/innodb/io_ibuf_thread | BACKGROUND | NULL |
| 3 | thread/innodb/io_log_thread | BACKGROUND | NULL |
| 4 | thread/innodb/io_read_thread | BACKGROUND | NULL |
| 11 | thread/innodb/io_write_thread | BACKGROUND | NULL |
| 14 | thread/innodb/srv_error_monitor_thread | BACKGROUND | NULL |
| 15 | thread/innodb/srv_lock_timeout_thread | BACKGROUND | NULL |
| 16 | thread/innodb/srv_monitor_thread | BACKGROUND | NULL |
| 17 | thread/innodb/srv_master_thread | BACKGROUND | NULL |
| 18 | thread/innodb/srv_purge_thread | BACKGROUND | NULL |
| 19 | thread/innodb/page_cleaner_thread | BACKGROUND | NULL |
| 20 | thread/sql/signal_handler | BACKGROUND | NULL |
| 22 | thread/sql/one_connection | FOREGROUND | root |
| 28 | thread/sql/one_connection | FOREGROUND | oli |
+-----------+----------------------------------------+------------+------+
shell> ps -efL | egrep 'mysqld|PID'
UID PID PPID LWP C NLWP STIME TTY TIME CMD
mysql 3248 1 3248 0 1 16:28 pts/0 00:00:00 /bin/sh bin/mysqld_safe
mysql 3925 3248 3925 0 23 16:28 pts/0 00:00:00 bin/mysqld
...
mysql 3925 3248 4088 0 23 16:31 pts/0 00:00:00 bin/mysqld
www.fromdual.com
13 / 31
Connections / Connectors
● Verbindung
● In MySQL billig: oft KEIN Connection-Pooling
● 1 Verbindung = 1 Thread → 1 Query → 1 Core
● Thread Pool (1000e von Verbindungen)
● Connectors:
● JDBC/ODBC
● PHP, Perl, Python, Ruby, .NET
www.fromdual.com
14 / 31
User und Schema
● User
● 'oli'@'localhost' → Unix Socket
● 'oli'@'127.0.0.1' → TCP Port
● 'oli'@'%' → TCP von überall her
● Privilegien
● Global: *.*, pro Schema , pro Tabelle, pro Spalte
● Schema (= Database)
● Unabhängig vom User (→ gehört System)
www.fromdual.com
15 / 31
Storage Engines
mysqld
Application / Client
Thread
Cache
Connection
Manager
User Au-
thentication
Command
Dispatcher
Logging
Query Cache
Module
Query
Cache
Parser
Optimizer
Access Control
Table Manager
Table Open
Cache (.frm, fh)
Table Definition
Cache (tbl def.)
Handler Interface
MyISAM Memory NDB TokutekInnoDB ...Aria
Bright-
house
Federated-X
www.fromdual.com
16 / 31
InnoDB (default SE >= 5.5.)
● Transaktionen (ACID)
● Isolation Level (repeatable-read vs read-committed)
● Tabelspaces
● System TS = ibdata1
● Table TS (innodb_files_per_table = 1)
● InnoDB: PK geclusterte Tabellen → IOT
● InnoDB Buffer Pool (16k Block Buffer)
● REDO Logs: ib_logfile? (5M default)
www.fromdual.com
17 / 31
Logging
● Error Log (~ alert_<SID>.log)
● /var/log/mysql*
● General Query Log
general_log = 1
● Slow Query Log
● slow_query_log = 1
● Binary Log (~ archive.log)
● log_bin = 1 / binary­log
● DML + DDL aller SE
● (Transaktions-Log, ib_logfile?, SE abhängig) (~ redo.log)
● DML InnoDB
www.fromdual.com
18 / 31
Logisches Backup
Oracle: exp/imp (vor Datapump)
● MySQL: mysqldump/mysql
● Jede Row wird angelangt:
● Langsam
● Restore SEHR langsam!
mysql> mysqldump ­­all­databases ­­single­
transaction ­­master­data=1 > 
full_dump.sql
mysql> mysql < full_dump.sql
www.fromdual.com
19 / 31
Physisches Backup
Oracle: rman, ALTER TABLESPACE ... BEGIN|END BACKUP;
● MySQL:
● Snapshot mit LVM, BtreeFS oder ZFS
● mylvmbackup
● Xtrabackup, MySQL Enterprise Backup (MEB)
shell> innobackupex /data/backups
shell> innobackupex ­­apply­log /data/backups/2012­11­13/
shell> innobackupex ­­copy­back /data/backups/2012­11­13/
shell> chown ­R mysql:mysql /var/lib/mysql
● Links:
http://www.lenzg.net/mylvmbackup/
● http://www.percona.com/doc/percona-xtrabackup
www.fromdual.com
20 / 31
Binary Log
~ Oracle Archive Logs
● MySQL Binary-Log:
● DDL + DML aller SE (nicht nur InnoDB)!
● für:
●
Replikation
● Point-in-Time-Recovery (PiTR)
● 3 Varianten:
● Statement Based Replication (SBR) <= 5.0
● Row Based Replication (RBR) ab 5.1
● Transaction Based Replication (TBR) ab 5.6
www.fromdual.com
21 / 31
Point-in-Time-Recovery (PITR)
Application ApplicationApplication
mysqld
binary
log
writer
thread
bin-log.1 bin-log.2 bin-log.n...
log_bin = on
t
fullbackup
pos/time?
www.fromdual.com
22 / 31
MySQL Replikation
● MySQL Basis-Fuktionalität
● Sehr einfach aufzusetzen (5 min)
● Streaming-Replication (kein Log Shipping)
● Basiert auf MySQL Binary Logs
● Braucht:
● Unique server_id (Master und Slave) (restart)
● Binary Loggin auf Master einschalten (restart)
● Replikations-User
● Konsistentes Backup + Binary Log Position
www.fromdual.com
23 / 31
...
Master – Slave Replikation
Application
Master
log_bin = on
server_id = 42
Slave
● Wir brauchen:
● Binary Log
● Server Id
● User für die Replikation (auf dem Master)
● Konsistentes Backup MIT Binary Log Position
bin-log.m bin-log.n relay-log.m relay-log.n...
IO_
thread
SQL_
thread
www.fromdual.com
24 / 31
High-Availability mit Replikation
Application
Master
Slave Backup
Slave Reporting
rt
w
Load balancer
read only
Slave 1
Slave 2
Slave 3 ...
async!
Slave M
VIP
www.fromdual.com
25 / 31
RAC: Galera Cluster
App App App
Load balancing (LB)
Node 2 Node 3Node 1
wsrep
Galera replication
wsrep wsrep
rwrw
Oracle Real Application Cluster (RAC)
● MySQL: Galera Cluster
● Shared-Nothing Architektur
www.fromdual.com
26 / 31
Galera Cluster für MySQL
App App App
Load balancing (LB)
Node 2 Node 3Node 1
wsrep
Galera replication
wsrep wsrep
● Hardware-Ausfall
● Wartungsarbeiten
● HW/OS/DB Upgrade
● 5x9 HA: 99.999%
www.fromdual.com
27 / 31
Monitoring
● OEM/DBC/Grid-Control/Cloud-Control
● MySQL Enterprise Monitor (MEM) €€€
● MySQL Performance Monitor (mpm)
● mysql> SHOW GLOBAL STATUS;
● Nagios / Icinga
● Links:
http://www.mysql.com/products/enterprise/monitor.html
http://www.fromdual.com/mysql-performance-monitor
http://www.fromdual.com/download#nagios
www.fromdual.com
28 / 31
Performance Tuning
● mysql> SHOW GLOBAL STATUS;
● PERFORMANCE_SCHEMA
● Slow Query Log
● slow_query_log = 1
● long_query_time = 0.5
● shell> mysqldumpslow ­s t slow.log > profile
● Query Execution Plan:
mysql> EXPLAIN SELECT * FROM test;
www.fromdual.com
29 / 31
Stored Programs
Oracle: PL/SQL, Java
● MySQL:
● Stored Procedures
● Stored Functions
● User Defined Functions (UDF): C/C++
● Plugin: C/C++
www.fromdual.com
30 / 31
Volltext-Suche
Oracle: Kostenpflichtiges Modul?
● MySQL: Standardmässig dabei!
ALTER TABLE test ADD FULLTEXT INDEX (data);
SELECT * FROM test WHERE MATCH data AGAINST('DBA');
+----+----------------------------------------+
| id | data |
+----+----------------------------------------+
| 1 | Wir suchen zur Zeit einen Support DBA! |
+----+----------------------------------------+
www.fromdual.com
31 / 31
Q & A
Fragen ?
Diskussion?
Wir haben Zeit für ein persönliches Gespräch...
● FromDual bietet neutral und unabhängig:
● Beratung
● Remote-DBA
● Support für MySQL, Galera, Percona Server und MariaDB
● Schulung
www.fromdual.com/presentations

More Related Content

What's hot

MySQL Parallel Replication by Booking.com
MySQL Parallel Replication by Booking.comMySQL Parallel Replication by Booking.com
MySQL Parallel Replication by Booking.com
Jean-François Gagné
 
MariaDB Server on macOS - FOSDEM 2022 MariaDB Devroom
MariaDB Server on macOS -  FOSDEM 2022 MariaDB DevroomMariaDB Server on macOS -  FOSDEM 2022 MariaDB Devroom
MariaDB Server on macOS - FOSDEM 2022 MariaDB Devroom
Valeriy Kravchuk
 
Gdb basics for my sql db as (percona live europe 2019)
Gdb basics for my sql db as (percona live europe 2019)Gdb basics for my sql db as (percona live europe 2019)
Gdb basics for my sql db as (percona live europe 2019)
Valerii Kravchuk
 
LXC on Ganeti
LXC on GanetiLXC on Ganeti
LXC on Ganeti
kawamuray
 
MySQL always-up with Galera Cluster
MySQL always-up with Galera ClusterMySQL always-up with Galera Cluster
MySQL always-up with Galera Cluster
FromDual GmbH
 
Gdb basics for my sql db as (openfest 2017) final
Gdb basics for my sql db as (openfest 2017) finalGdb basics for my sql db as (openfest 2017) final
Gdb basics for my sql db as (openfest 2017) final
Valeriy Kravchuk
 
More on gdb for my sql db as (fosdem 2016)
More on gdb for my sql db as (fosdem 2016)More on gdb for my sql db as (fosdem 2016)
More on gdb for my sql db as (fosdem 2016)
Valeriy Kravchuk
 
TechDay - April - Customizing VM Images
TechDay - April - Customizing VM ImagesTechDay - April - Customizing VM Images
TechDay - April - Customizing VM Images
OpenNebula Project
 
Optimization_of_Virtual_Machines_for_High_Performance
Optimization_of_Virtual_Machines_for_High_PerformanceOptimization_of_Virtual_Machines_for_High_Performance
Optimization_of_Virtual_Machines_for_High_Performance
StorPool Storage
 
The New MariaDB Offering - MariaDB 10, MaxScale and more
The New MariaDB Offering - MariaDB 10, MaxScale and moreThe New MariaDB Offering - MariaDB 10, MaxScale and more
The New MariaDB Offering - MariaDB 10, MaxScale and more
MariaDB Corporation
 
Highly efficient backups with percona xtrabackup
Highly efficient backups with percona xtrabackupHighly efficient backups with percona xtrabackup
Highly efficient backups with percona xtrabackup
Nilnandan Joshi
 
Applying profilers to my sql (fosdem 2017)
Applying profilers to my sql (fosdem 2017)Applying profilers to my sql (fosdem 2017)
Applying profilers to my sql (fosdem 2017)
Valeriy Kravchuk
 
MYSQLDUMP & ZRM COMMUNITY (EN)
MYSQLDUMP & ZRM COMMUNITY (EN)MYSQLDUMP & ZRM COMMUNITY (EN)
MYSQLDUMP & ZRM COMMUNITY (EN)
Cédric P
 
More on bpftrace for MariaDB DBAs and Developers - FOSDEM 2022 MariaDB Devroom
More on bpftrace for MariaDB DBAs and Developers - FOSDEM 2022 MariaDB DevroomMore on bpftrace for MariaDB DBAs and Developers - FOSDEM 2022 MariaDB Devroom
More on bpftrace for MariaDB DBAs and Developers - FOSDEM 2022 MariaDB Devroom
Valeriy Kravchuk
 
Customizing Virtual Machine Images - Javier Fontán
Customizing Virtual Machine Images - Javier FontánCustomizing Virtual Machine Images - Javier Fontán
Customizing Virtual Machine Images - Javier Fontán
OpenNebula Project
 
M|18 Under the Hood: Galera Cluster
M|18 Under the Hood: Galera ClusterM|18 Under the Hood: Galera Cluster
M|18 Under the Hood: Galera Cluster
MariaDB plc
 
Flame Graphs for MySQL DBAs - FOSDEM 2022 MySQL Devroom
Flame Graphs for MySQL DBAs - FOSDEM 2022 MySQL DevroomFlame Graphs for MySQL DBAs - FOSDEM 2022 MySQL Devroom
Flame Graphs for MySQL DBAs - FOSDEM 2022 MySQL Devroom
Valeriy Kravchuk
 
TechDay - Cambridge 2016 - OpenNebula at Harvard Univerity
TechDay - Cambridge 2016 - OpenNebula at Harvard UniverityTechDay - Cambridge 2016 - OpenNebula at Harvard Univerity
TechDay - Cambridge 2016 - OpenNebula at Harvard Univerity
OpenNebula Project
 
Linux /proc filesystem for MySQL DBAs - FOSDEM 2021
Linux  /proc filesystem for MySQL DBAs - FOSDEM 2021Linux  /proc filesystem for MySQL DBAs - FOSDEM 2021
Linux /proc filesystem for MySQL DBAs - FOSDEM 2021
Valeriy Kravchuk
 

What's hot (20)

MySQL Parallel Replication by Booking.com
MySQL Parallel Replication by Booking.comMySQL Parallel Replication by Booking.com
MySQL Parallel Replication by Booking.com
 
MariaDB Server on macOS - FOSDEM 2022 MariaDB Devroom
MariaDB Server on macOS -  FOSDEM 2022 MariaDB DevroomMariaDB Server on macOS -  FOSDEM 2022 MariaDB Devroom
MariaDB Server on macOS - FOSDEM 2022 MariaDB Devroom
 
Gdb basics for my sql db as (percona live europe 2019)
Gdb basics for my sql db as (percona live europe 2019)Gdb basics for my sql db as (percona live europe 2019)
Gdb basics for my sql db as (percona live europe 2019)
 
LXC on Ganeti
LXC on GanetiLXC on Ganeti
LXC on Ganeti
 
MySQL always-up with Galera Cluster
MySQL always-up with Galera ClusterMySQL always-up with Galera Cluster
MySQL always-up with Galera Cluster
 
Gdb basics for my sql db as (openfest 2017) final
Gdb basics for my sql db as (openfest 2017) finalGdb basics for my sql db as (openfest 2017) final
Gdb basics for my sql db as (openfest 2017) final
 
Kvm optimizations
Kvm optimizationsKvm optimizations
Kvm optimizations
 
More on gdb for my sql db as (fosdem 2016)
More on gdb for my sql db as (fosdem 2016)More on gdb for my sql db as (fosdem 2016)
More on gdb for my sql db as (fosdem 2016)
 
TechDay - April - Customizing VM Images
TechDay - April - Customizing VM ImagesTechDay - April - Customizing VM Images
TechDay - April - Customizing VM Images
 
Optimization_of_Virtual_Machines_for_High_Performance
Optimization_of_Virtual_Machines_for_High_PerformanceOptimization_of_Virtual_Machines_for_High_Performance
Optimization_of_Virtual_Machines_for_High_Performance
 
The New MariaDB Offering - MariaDB 10, MaxScale and more
The New MariaDB Offering - MariaDB 10, MaxScale and moreThe New MariaDB Offering - MariaDB 10, MaxScale and more
The New MariaDB Offering - MariaDB 10, MaxScale and more
 
Highly efficient backups with percona xtrabackup
Highly efficient backups with percona xtrabackupHighly efficient backups with percona xtrabackup
Highly efficient backups with percona xtrabackup
 
Applying profilers to my sql (fosdem 2017)
Applying profilers to my sql (fosdem 2017)Applying profilers to my sql (fosdem 2017)
Applying profilers to my sql (fosdem 2017)
 
MYSQLDUMP & ZRM COMMUNITY (EN)
MYSQLDUMP & ZRM COMMUNITY (EN)MYSQLDUMP & ZRM COMMUNITY (EN)
MYSQLDUMP & ZRM COMMUNITY (EN)
 
More on bpftrace for MariaDB DBAs and Developers - FOSDEM 2022 MariaDB Devroom
More on bpftrace for MariaDB DBAs and Developers - FOSDEM 2022 MariaDB DevroomMore on bpftrace for MariaDB DBAs and Developers - FOSDEM 2022 MariaDB Devroom
More on bpftrace for MariaDB DBAs and Developers - FOSDEM 2022 MariaDB Devroom
 
Customizing Virtual Machine Images - Javier Fontán
Customizing Virtual Machine Images - Javier FontánCustomizing Virtual Machine Images - Javier Fontán
Customizing Virtual Machine Images - Javier Fontán
 
M|18 Under the Hood: Galera Cluster
M|18 Under the Hood: Galera ClusterM|18 Under the Hood: Galera Cluster
M|18 Under the Hood: Galera Cluster
 
Flame Graphs for MySQL DBAs - FOSDEM 2022 MySQL Devroom
Flame Graphs for MySQL DBAs - FOSDEM 2022 MySQL DevroomFlame Graphs for MySQL DBAs - FOSDEM 2022 MySQL Devroom
Flame Graphs for MySQL DBAs - FOSDEM 2022 MySQL Devroom
 
TechDay - Cambridge 2016 - OpenNebula at Harvard Univerity
TechDay - Cambridge 2016 - OpenNebula at Harvard UniverityTechDay - Cambridge 2016 - OpenNebula at Harvard Univerity
TechDay - Cambridge 2016 - OpenNebula at Harvard Univerity
 
Linux /proc filesystem for MySQL DBAs - FOSDEM 2021
Linux  /proc filesystem for MySQL DBAs - FOSDEM 2021Linux  /proc filesystem for MySQL DBAs - FOSDEM 2021
Linux /proc filesystem for MySQL DBAs - FOSDEM 2021
 

Viewers also liked

DOAG: NoSQL with MySQL
DOAG: NoSQL with MySQLDOAG: NoSQL with MySQL
DOAG: NoSQL with MySQLFromDual GmbH
 
MySQL Performance Tuning für Entwickler
MySQL Performance Tuning für EntwicklerMySQL Performance Tuning für Entwickler
MySQL Performance Tuning für Entwickler
FromDual GmbH
 
OpenExpo: MySQL, Where are you going?
OpenExpo: MySQL, Where are you going?OpenExpo: MySQL, Where are you going?
OpenExpo: MySQL, Where are you going?FromDual GmbH
 
MySQL - New Features 5.6
MySQL - New Features 5.6MySQL - New Features 5.6
MySQL - New Features 5.6FromDual GmbH
 
Froscon 2012 DWH
Froscon 2012 DWHFroscon 2012 DWH
Froscon 2012 DWH
FromDual GmbH
 
FOSDEM 2012: New Features in MySQL 5.6
FOSDEM 2012: New Features in MySQL 5.6FOSDEM 2012: New Features in MySQL 5.6
FOSDEM 2012: New Features in MySQL 5.6FromDual GmbH
 
MySQL configuration - The most important Variables
MySQL configuration - The most important VariablesMySQL configuration - The most important Variables
MySQL configuration - The most important Variables
FromDual GmbH
 

Viewers also liked (8)

DOAG: NoSQL with MySQL
DOAG: NoSQL with MySQLDOAG: NoSQL with MySQL
DOAG: NoSQL with MySQL
 
NoSQL with MySQL
NoSQL with MySQLNoSQL with MySQL
NoSQL with MySQL
 
MySQL Performance Tuning für Entwickler
MySQL Performance Tuning für EntwicklerMySQL Performance Tuning für Entwickler
MySQL Performance Tuning für Entwickler
 
OpenExpo: MySQL, Where are you going?
OpenExpo: MySQL, Where are you going?OpenExpo: MySQL, Where are you going?
OpenExpo: MySQL, Where are you going?
 
MySQL - New Features 5.6
MySQL - New Features 5.6MySQL - New Features 5.6
MySQL - New Features 5.6
 
Froscon 2012 DWH
Froscon 2012 DWHFroscon 2012 DWH
Froscon 2012 DWH
 
FOSDEM 2012: New Features in MySQL 5.6
FOSDEM 2012: New Features in MySQL 5.6FOSDEM 2012: New Features in MySQL 5.6
FOSDEM 2012: New Features in MySQL 5.6
 
MySQL configuration - The most important Variables
MySQL configuration - The most important VariablesMySQL configuration - The most important Variables
MySQL configuration - The most important Variables
 

Similar to MySQL for Oracle DBAs

MySQL Performance Tuning Variables
MySQL Performance Tuning VariablesMySQL Performance Tuning Variables
MySQL Performance Tuning Variables
FromDual GmbH
 
Ukoug 2011 mysql_arch_for_orcl_dba
Ukoug 2011 mysql_arch_for_orcl_dbaUkoug 2011 mysql_arch_for_orcl_dba
Ukoug 2011 mysql_arch_for_orcl_dba
orablue11
 
MySQL High Availability Solutions
MySQL High Availability SolutionsMySQL High Availability Solutions
MySQL High Availability Solutions
Lenz Grimmer
 
MySQL High Availability Solutions
MySQL High Availability SolutionsMySQL High Availability Solutions
MySQL High Availability SolutionsLenz Grimmer
 
Mysqlhacodebits20091203 1260184765-phpapp02
Mysqlhacodebits20091203 1260184765-phpapp02Mysqlhacodebits20091203 1260184765-phpapp02
Mysqlhacodebits20091203 1260184765-phpapp02Louis liu
 
MySQL HA Orchestrator Proxysql Consul.pdf
MySQL HA Orchestrator Proxysql Consul.pdfMySQL HA Orchestrator Proxysql Consul.pdf
MySQL HA Orchestrator Proxysql Consul.pdf
YunusShaikh49
 
High-availability with Galera Cluster for MySQL
High-availability with Galera Cluster for MySQLHigh-availability with Galera Cluster for MySQL
High-availability with Galera Cluster for MySQL
FromDual GmbH
 
The Proper Care and Feeding of MySQL Databases
The Proper Care and Feeding of MySQL DatabasesThe Proper Care and Feeding of MySQL Databases
The Proper Care and Feeding of MySQL Databases
Dave Stokes
 
PL22 - Backup and Restore Performance.pptx
PL22 - Backup and Restore Performance.pptxPL22 - Backup and Restore Performance.pptx
PL22 - Backup and Restore Performance.pptx
Vinicius M Grippa
 
Collaborate 2012 - Administering MySQL for Oracle DBAs
Collaborate 2012 - Administering MySQL for Oracle DBAsCollaborate 2012 - Administering MySQL for Oracle DBAs
Collaborate 2012 - Administering MySQL for Oracle DBAs
Nelson Calero
 
BITS: Introduction to MySQL - Introduction and Installation
BITS: Introduction to MySQL - Introduction and InstallationBITS: Introduction to MySQL - Introduction and Installation
BITS: Introduction to MySQL - Introduction and Installation
BITS
 
MySQL Workbench for DFW Unix Users Group
MySQL Workbench for DFW Unix Users GroupMySQL Workbench for DFW Unix Users Group
MySQL Workbench for DFW Unix Users Group
Dave Stokes
 
UKOUG 2011: Practical MySQL Tuning
UKOUG 2011: Practical MySQL TuningUKOUG 2011: Practical MySQL Tuning
UKOUG 2011: Practical MySQL TuningFromDual GmbH
 
MariaDB / MySQL tripping hazard and how to get out again?
MariaDB / MySQL tripping hazard and how to get out again?MariaDB / MySQL tripping hazard and how to get out again?
MariaDB / MySQL tripping hazard and how to get out again?
FromDual GmbH
 
Breaking the Monolith - Microservice Extraction at SoundCloud
Breaking the Monolith - Microservice Extraction at SoundCloudBreaking the Monolith - Microservice Extraction at SoundCloud
Breaking the Monolith - Microservice Extraction at SoundCloud
Jan Kischkel
 
Percona Live '18 Tutorial: The Accidental DBA
Percona Live '18 Tutorial: The Accidental DBAPercona Live '18 Tutorial: The Accidental DBA
Percona Live '18 Tutorial: The Accidental DBA
Jenni Snyder
 
My sql introduction for Bestcom
My sql introduction for BestcomMy sql introduction for Bestcom
My sql introduction for BestcomIvan Tu
 
My S Q L Introduction for 1 day training
My S Q L  Introduction for 1 day trainingMy S Q L  Introduction for 1 day training
My S Q L Introduction for 1 day trainingIvan Tu
 
Scaling up and accelerating Drupal 8 with NoSQL
Scaling up and accelerating Drupal 8 with NoSQLScaling up and accelerating Drupal 8 with NoSQL
Scaling up and accelerating Drupal 8 with NoSQL
OSInet
 

Similar to MySQL for Oracle DBAs (20)

MySQL Performance Tuning Variables
MySQL Performance Tuning VariablesMySQL Performance Tuning Variables
MySQL Performance Tuning Variables
 
Ukoug 2011 mysql_arch_for_orcl_dba
Ukoug 2011 mysql_arch_for_orcl_dbaUkoug 2011 mysql_arch_for_orcl_dba
Ukoug 2011 mysql_arch_for_orcl_dba
 
MySQL High Availability Solutions
MySQL High Availability SolutionsMySQL High Availability Solutions
MySQL High Availability Solutions
 
MySQL High Availability Solutions
MySQL High Availability SolutionsMySQL High Availability Solutions
MySQL High Availability Solutions
 
Mysqlhacodebits20091203 1260184765-phpapp02
Mysqlhacodebits20091203 1260184765-phpapp02Mysqlhacodebits20091203 1260184765-phpapp02
Mysqlhacodebits20091203 1260184765-phpapp02
 
MySQL HA Orchestrator Proxysql Consul.pdf
MySQL HA Orchestrator Proxysql Consul.pdfMySQL HA Orchestrator Proxysql Consul.pdf
MySQL HA Orchestrator Proxysql Consul.pdf
 
High-availability with Galera Cluster for MySQL
High-availability with Galera Cluster for MySQLHigh-availability with Galera Cluster for MySQL
High-availability with Galera Cluster for MySQL
 
The Proper Care and Feeding of MySQL Databases
The Proper Care and Feeding of MySQL DatabasesThe Proper Care and Feeding of MySQL Databases
The Proper Care and Feeding of MySQL Databases
 
PL22 - Backup and Restore Performance.pptx
PL22 - Backup and Restore Performance.pptxPL22 - Backup and Restore Performance.pptx
PL22 - Backup and Restore Performance.pptx
 
Collaborate 2012 - Administering MySQL for Oracle DBAs
Collaborate 2012 - Administering MySQL for Oracle DBAsCollaborate 2012 - Administering MySQL for Oracle DBAs
Collaborate 2012 - Administering MySQL for Oracle DBAs
 
The Accidental DBA
The Accidental DBAThe Accidental DBA
The Accidental DBA
 
BITS: Introduction to MySQL - Introduction and Installation
BITS: Introduction to MySQL - Introduction and InstallationBITS: Introduction to MySQL - Introduction and Installation
BITS: Introduction to MySQL - Introduction and Installation
 
MySQL Workbench for DFW Unix Users Group
MySQL Workbench for DFW Unix Users GroupMySQL Workbench for DFW Unix Users Group
MySQL Workbench for DFW Unix Users Group
 
UKOUG 2011: Practical MySQL Tuning
UKOUG 2011: Practical MySQL TuningUKOUG 2011: Practical MySQL Tuning
UKOUG 2011: Practical MySQL Tuning
 
MariaDB / MySQL tripping hazard and how to get out again?
MariaDB / MySQL tripping hazard and how to get out again?MariaDB / MySQL tripping hazard and how to get out again?
MariaDB / MySQL tripping hazard and how to get out again?
 
Breaking the Monolith - Microservice Extraction at SoundCloud
Breaking the Monolith - Microservice Extraction at SoundCloudBreaking the Monolith - Microservice Extraction at SoundCloud
Breaking the Monolith - Microservice Extraction at SoundCloud
 
Percona Live '18 Tutorial: The Accidental DBA
Percona Live '18 Tutorial: The Accidental DBAPercona Live '18 Tutorial: The Accidental DBA
Percona Live '18 Tutorial: The Accidental DBA
 
My sql introduction for Bestcom
My sql introduction for BestcomMy sql introduction for Bestcom
My sql introduction for Bestcom
 
My S Q L Introduction for 1 day training
My S Q L  Introduction for 1 day trainingMy S Q L  Introduction for 1 day training
My S Q L Introduction for 1 day training
 
Scaling up and accelerating Drupal 8 with NoSQL
Scaling up and accelerating Drupal 8 with NoSQLScaling up and accelerating Drupal 8 with NoSQL
Scaling up and accelerating Drupal 8 with NoSQL
 

More from FromDual GmbH

MariaDB/MySQL pitfalls - And how to come out again...
MariaDB/MySQL pitfalls - And how to come out again...MariaDB/MySQL pitfalls - And how to come out again...
MariaDB/MySQL pitfalls - And how to come out again...
FromDual GmbH
 
PXC 5.5 to MariaDB 10.4 Galera Cluster Migration Workshop
PXC 5.5 to MariaDB 10.4 Galera Cluster Migration WorkshopPXC 5.5 to MariaDB 10.4 Galera Cluster Migration Workshop
PXC 5.5 to MariaDB 10.4 Galera Cluster Migration Workshop
FromDual GmbH
 
IT Tage 2019 MariaDB 10.4 New Features
IT Tage 2019 MariaDB 10.4 New FeaturesIT Tage 2019 MariaDB 10.4 New Features
IT Tage 2019 MariaDB 10.4 New Features
FromDual GmbH
 
MariaDB 10.4 New Features
MariaDB 10.4 New FeaturesMariaDB 10.4 New Features
MariaDB 10.4 New Features
FromDual GmbH
 
MariaDB 10.2 New Features
MariaDB 10.2 New FeaturesMariaDB 10.2 New Features
MariaDB 10.2 New Features
FromDual GmbH
 
MySQL für Oracle DBA's
MySQL für Oracle DBA'sMySQL für Oracle DBA's
MySQL für Oracle DBA's
FromDual GmbH
 
MySQL Backup/Recovery
MySQL Backup/RecoveryMySQL Backup/Recovery
MySQL Backup/Recovery
FromDual GmbH
 
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?
FromDual GmbH
 
MySQL-Server im Teamwork - Replikation und Cluster
MySQL-Server im Teamwork - Replikation und ClusterMySQL-Server im Teamwork - Replikation und Cluster
MySQL-Server im Teamwork - Replikation und Cluster
FromDual GmbH
 
Der Datenbank-Backup ist gemacht - was nun?
Der Datenbank-Backup ist gemacht - was nun?Der Datenbank-Backup ist gemacht - was nun?
Der Datenbank-Backup ist gemacht - was nun?
FromDual GmbH
 
Weltweite Produktionsdatenverwaltung mit MySQL-Replikation
Weltweite Produktionsdatenverwaltung mit MySQL-ReplikationWeltweite Produktionsdatenverwaltung mit MySQL-Replikation
Weltweite Produktionsdatenverwaltung mit MySQL-Replikation
FromDual GmbH
 
MySQL Performance Tuning für Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA'sMySQL Performance Tuning für Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA's
FromDual GmbH
 
MySQL Security SLAC 2015
MySQL Security SLAC 2015MySQL Security SLAC 2015
MySQL Security SLAC 2015
FromDual GmbH
 
MySQL Replikation - Die Eier legende Wollmilchsau?
MySQL Replikation - Die Eier legende Wollmilchsau?MySQL Replikation - Die Eier legende Wollmilchsau?
MySQL Replikation - Die Eier legende Wollmilchsau?
FromDual GmbH
 
Reading MySQL fingerprints
Reading MySQL fingerprintsReading MySQL fingerprints
Reading MySQL fingerprints
FromDual GmbH
 
MySQL Indexierung CeBIT 2014
MySQL Indexierung CeBIT 2014MySQL Indexierung CeBIT 2014
MySQL Indexierung CeBIT 2014
FromDual GmbH
 
MySQL Cluster with Galera Cluster for MySQL
MySQL Cluster with Galera Cluster for MySQLMySQL Cluster with Galera Cluster for MySQL
MySQL Cluster with Galera Cluster for MySQL
FromDual GmbH
 
MySQL Backup
MySQL BackupMySQL Backup
MySQL Backup
FromDual GmbH
 
Need for Speed: Mysql indexing
Need for Speed: Mysql indexingNeed for Speed: Mysql indexing
Need for Speed: Mysql indexing
FromDual GmbH
 
MySQL HA and Security
MySQL HA and SecurityMySQL HA and Security
MySQL HA and Security
FromDual GmbH
 

More from FromDual GmbH (20)

MariaDB/MySQL pitfalls - And how to come out again...
MariaDB/MySQL pitfalls - And how to come out again...MariaDB/MySQL pitfalls - And how to come out again...
MariaDB/MySQL pitfalls - And how to come out again...
 
PXC 5.5 to MariaDB 10.4 Galera Cluster Migration Workshop
PXC 5.5 to MariaDB 10.4 Galera Cluster Migration WorkshopPXC 5.5 to MariaDB 10.4 Galera Cluster Migration Workshop
PXC 5.5 to MariaDB 10.4 Galera Cluster Migration Workshop
 
IT Tage 2019 MariaDB 10.4 New Features
IT Tage 2019 MariaDB 10.4 New FeaturesIT Tage 2019 MariaDB 10.4 New Features
IT Tage 2019 MariaDB 10.4 New Features
 
MariaDB 10.4 New Features
MariaDB 10.4 New FeaturesMariaDB 10.4 New Features
MariaDB 10.4 New Features
 
MariaDB 10.2 New Features
MariaDB 10.2 New FeaturesMariaDB 10.2 New Features
MariaDB 10.2 New Features
 
MySQL für Oracle DBA's
MySQL für Oracle DBA'sMySQL für Oracle DBA's
MySQL für Oracle DBA's
 
MySQL Backup/Recovery
MySQL Backup/RecoveryMySQL Backup/Recovery
MySQL Backup/Recovery
 
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?
 
MySQL-Server im Teamwork - Replikation und Cluster
MySQL-Server im Teamwork - Replikation und ClusterMySQL-Server im Teamwork - Replikation und Cluster
MySQL-Server im Teamwork - Replikation und Cluster
 
Der Datenbank-Backup ist gemacht - was nun?
Der Datenbank-Backup ist gemacht - was nun?Der Datenbank-Backup ist gemacht - was nun?
Der Datenbank-Backup ist gemacht - was nun?
 
Weltweite Produktionsdatenverwaltung mit MySQL-Replikation
Weltweite Produktionsdatenverwaltung mit MySQL-ReplikationWeltweite Produktionsdatenverwaltung mit MySQL-Replikation
Weltweite Produktionsdatenverwaltung mit MySQL-Replikation
 
MySQL Performance Tuning für Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA'sMySQL Performance Tuning für Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA's
 
MySQL Security SLAC 2015
MySQL Security SLAC 2015MySQL Security SLAC 2015
MySQL Security SLAC 2015
 
MySQL Replikation - Die Eier legende Wollmilchsau?
MySQL Replikation - Die Eier legende Wollmilchsau?MySQL Replikation - Die Eier legende Wollmilchsau?
MySQL Replikation - Die Eier legende Wollmilchsau?
 
Reading MySQL fingerprints
Reading MySQL fingerprintsReading MySQL fingerprints
Reading MySQL fingerprints
 
MySQL Indexierung CeBIT 2014
MySQL Indexierung CeBIT 2014MySQL Indexierung CeBIT 2014
MySQL Indexierung CeBIT 2014
 
MySQL Cluster with Galera Cluster for MySQL
MySQL Cluster with Galera Cluster for MySQLMySQL Cluster with Galera Cluster for MySQL
MySQL Cluster with Galera Cluster for MySQL
 
MySQL Backup
MySQL BackupMySQL Backup
MySQL Backup
 
Need for Speed: Mysql indexing
Need for Speed: Mysql indexingNeed for Speed: Mysql indexing
Need for Speed: Mysql indexing
 
MySQL HA and Security
MySQL HA and SecurityMySQL HA and Security
MySQL HA and Security
 

Recently uploaded

Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 

Recently uploaded (20)

Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 

MySQL for Oracle DBAs

  • 1. www.fromdual.com 1 / 31 MySQL für Oracle DBAs DOAG Webinar 14. Juni 2013 Oli Sennhauser Senior MySQL Consultant, FromDual GmbH oli.sennhauser@fromdual.com
  • 2. www.fromdual.com 2 / 31 Über FromDual GmbH ● FromDual bietet neutral und unabhängig: ● Beratung für MySQL ● Support für MySQL und Galera Cluster ● Remote-DBA Dienstleistungen für MySQL ● MySQL Schulungen ● Oracle Silver Partner (OPN) ● Mitglied der SOUG, DOAG, /ch/open www.fromdual.com
  • 3. www.fromdual.com 3 / 31 Inhalt HA Solutions ➢ Read scale-out ➢ Replication set-up for HA ➢ Active/passive fail-over ➢ MySQL Cluster ➢ Replication Cluster ➢ Storage-Engine-Replication MySQL für Oracle DBAs ➢ Einsatz von MySQL ➢ Installation, Konfiguration, Starten/Stoppen ➢ Architektur, Storage Engines ➢ InnoDB ➢ Monitoring, Logging ➢ Backup, Restore, Point-in-Time-Recovery ➢ Replikation ➢ Hochverfügbarkeit ➢ RAC für MySQL
  • 4. www.fromdual.com 4 / 31 Einsatz von MySQL ● Wo wird MySQL eingesetzt: ● Facebook – 1 Mia User, 72 M QPS ● Google – Adwords, Mia Umsatz/Jahr (M→O→M→F1) ● Wikipedia – z. Zt. #6 weltweit ● BörseGo – Online Börsenhandel ● Playboy – Drupal CMS ● EMKA – ERP, 1000 MA ● V-Zug – Hybris Webshop ● Buch.de – #2 online Buchhändler in D ● Kikxxl – Callcenter, 1000 MA ● Integrics – VoIP Lösungen, 1000e Anschlüssen ● RePower – zig 1000 Windmühlen
  • 5. www.fromdual.com 5 / 31 Installation Oracle: OUI (Oracle Universal Installer) ● MySQL: Windows: Installer C:Program filesmysqlmysql­server­5.6 C:Program filesmysqlmysql­server­5.6data ● MySQL Linux: ● Pakete: *.rpm, *.deb /usr/ /var/lib/mysql ● Binary Tar-Ball: mysql­5.7.1­linux­x86_64.tar.gz ● Quellen → Kompilieren: cmake; make; make install ● MySQL Community vs. Enterprise, Drittanbieter
  • 6. www.fromdual.com 6 / 31 MySQL Plattform ● „Exotische“ Plattformen führen aus statistischen Gründen eher zu Problemen! ● 85.7% Linux ● 10.5% Windows ● 1.7% Solaris ● 1.4% BSD ● 0.7% Others
  • 7. www.fromdual.com 7 / 31 Konfiguration Oracle: $ORACLE_HOME/dbs/init<SID>.ora ● MySQL: ● Windows: C:Program Filesmysqlmysql­server­5.6my.ini ● Linux: /etc/my.cnf, /etc/mysql/my.cnf, $basedir/my.cnf ● !includedir /etc/mysql/conf.d/ ● ­­defaults­file, ­­defaults­extra­file
  • 8. www.fromdual.com 8 / 31 Konfigurations-Parameter ● my.cnf / my.ini ● mysql> SHOW GLOBAL VARIABLES; ● 5.1.69: 277 ● 5.5.31: 317 ● 5.6.11: 429 ● mysql> SET GLOBAL variable = value; ● Kein Persistieren (spfile)
  • 9. www.fromdual.com 9 / 31 Starten / stoppen Oracle: sqlplus / as sysdba STARTUP ● MySQL Linux: ● Alt: shell> /etc/init.d/mysql start|stop|restart ● Neu: shell> service mysql start|stop|restart ● „von Hand“: ● shell> bin/mysqld_safe & ● shell> bin/mysqld & ● shell> mysqladmin ­­user=root shutdown ● MySQL Windows ● Windows Service Utility ● cmd> net start|stop|restart MySQL
  • 10. www.fromdual.com 10 / 31 Tools ● Tools: ● sqlplus → mysql ● srvmgrl → mysqladmin ● MySQL Workbench ● Admin ● Query Browser ● ER - Diagramme ● Heidi SQL, phpMyAdmin
  • 11. www.fromdual.com 11 / 31 Prozess-Architektur Oracle: Multi-Prozess Modell Shared Memory PMON, SMON, RECO, DBW0, LGWR, ARC0, ... ● MySQL: Multi-Thread Modell mysqld ● Angel-Prozess mysqld_safe ● Vordergrund- und Hintergrund-Threads:
  • 12. www.fromdual.com 12 / 31 MySQL Thread Architektur mysql> SELECT thread_id, name AS 'thread_name', type, processlist_user AS user FROM performance_schema.threads; +-----------+----------------------------------------+------------+------+ | thread_id | thread_name | type | user | +-----------+----------------------------------------+------------+------+ | 1 | thread/sql/main | BACKGROUND | NULL | | 2 | thread/innodb/io_ibuf_thread | BACKGROUND | NULL | | 3 | thread/innodb/io_log_thread | BACKGROUND | NULL | | 4 | thread/innodb/io_read_thread | BACKGROUND | NULL | | 11 | thread/innodb/io_write_thread | BACKGROUND | NULL | | 14 | thread/innodb/srv_error_monitor_thread | BACKGROUND | NULL | | 15 | thread/innodb/srv_lock_timeout_thread | BACKGROUND | NULL | | 16 | thread/innodb/srv_monitor_thread | BACKGROUND | NULL | | 17 | thread/innodb/srv_master_thread | BACKGROUND | NULL | | 18 | thread/innodb/srv_purge_thread | BACKGROUND | NULL | | 19 | thread/innodb/page_cleaner_thread | BACKGROUND | NULL | | 20 | thread/sql/signal_handler | BACKGROUND | NULL | | 22 | thread/sql/one_connection | FOREGROUND | root | | 28 | thread/sql/one_connection | FOREGROUND | oli | +-----------+----------------------------------------+------------+------+ shell> ps -efL | egrep 'mysqld|PID' UID PID PPID LWP C NLWP STIME TTY TIME CMD mysql 3248 1 3248 0 1 16:28 pts/0 00:00:00 /bin/sh bin/mysqld_safe mysql 3925 3248 3925 0 23 16:28 pts/0 00:00:00 bin/mysqld ... mysql 3925 3248 4088 0 23 16:31 pts/0 00:00:00 bin/mysqld
  • 13. www.fromdual.com 13 / 31 Connections / Connectors ● Verbindung ● In MySQL billig: oft KEIN Connection-Pooling ● 1 Verbindung = 1 Thread → 1 Query → 1 Core ● Thread Pool (1000e von Verbindungen) ● Connectors: ● JDBC/ODBC ● PHP, Perl, Python, Ruby, .NET
  • 14. www.fromdual.com 14 / 31 User und Schema ● User ● 'oli'@'localhost' → Unix Socket ● 'oli'@'127.0.0.1' → TCP Port ● 'oli'@'%' → TCP von überall her ● Privilegien ● Global: *.*, pro Schema , pro Tabelle, pro Spalte ● Schema (= Database) ● Unabhängig vom User (→ gehört System)
  • 15. www.fromdual.com 15 / 31 Storage Engines mysqld Application / Client Thread Cache Connection Manager User Au- thentication Command Dispatcher Logging Query Cache Module Query Cache Parser Optimizer Access Control Table Manager Table Open Cache (.frm, fh) Table Definition Cache (tbl def.) Handler Interface MyISAM Memory NDB TokutekInnoDB ...Aria Bright- house Federated-X
  • 16. www.fromdual.com 16 / 31 InnoDB (default SE >= 5.5.) ● Transaktionen (ACID) ● Isolation Level (repeatable-read vs read-committed) ● Tabelspaces ● System TS = ibdata1 ● Table TS (innodb_files_per_table = 1) ● InnoDB: PK geclusterte Tabellen → IOT ● InnoDB Buffer Pool (16k Block Buffer) ● REDO Logs: ib_logfile? (5M default)
  • 17. www.fromdual.com 17 / 31 Logging ● Error Log (~ alert_<SID>.log) ● /var/log/mysql* ● General Query Log general_log = 1 ● Slow Query Log ● slow_query_log = 1 ● Binary Log (~ archive.log) ● log_bin = 1 / binary­log ● DML + DDL aller SE ● (Transaktions-Log, ib_logfile?, SE abhängig) (~ redo.log) ● DML InnoDB
  • 18. www.fromdual.com 18 / 31 Logisches Backup Oracle: exp/imp (vor Datapump) ● MySQL: mysqldump/mysql ● Jede Row wird angelangt: ● Langsam ● Restore SEHR langsam! mysql> mysqldump ­­all­databases ­­single­ transaction ­­master­data=1 >  full_dump.sql mysql> mysql < full_dump.sql
  • 19. www.fromdual.com 19 / 31 Physisches Backup Oracle: rman, ALTER TABLESPACE ... BEGIN|END BACKUP; ● MySQL: ● Snapshot mit LVM, BtreeFS oder ZFS ● mylvmbackup ● Xtrabackup, MySQL Enterprise Backup (MEB) shell> innobackupex /data/backups shell> innobackupex ­­apply­log /data/backups/2012­11­13/ shell> innobackupex ­­copy­back /data/backups/2012­11­13/ shell> chown ­R mysql:mysql /var/lib/mysql ● Links: http://www.lenzg.net/mylvmbackup/ ● http://www.percona.com/doc/percona-xtrabackup
  • 20. www.fromdual.com 20 / 31 Binary Log ~ Oracle Archive Logs ● MySQL Binary-Log: ● DDL + DML aller SE (nicht nur InnoDB)! ● für: ● Replikation ● Point-in-Time-Recovery (PiTR) ● 3 Varianten: ● Statement Based Replication (SBR) <= 5.0 ● Row Based Replication (RBR) ab 5.1 ● Transaction Based Replication (TBR) ab 5.6
  • 21. www.fromdual.com 21 / 31 Point-in-Time-Recovery (PITR) Application ApplicationApplication mysqld binary log writer thread bin-log.1 bin-log.2 bin-log.n... log_bin = on t fullbackup pos/time?
  • 22. www.fromdual.com 22 / 31 MySQL Replikation ● MySQL Basis-Fuktionalität ● Sehr einfach aufzusetzen (5 min) ● Streaming-Replication (kein Log Shipping) ● Basiert auf MySQL Binary Logs ● Braucht: ● Unique server_id (Master und Slave) (restart) ● Binary Loggin auf Master einschalten (restart) ● Replikations-User ● Konsistentes Backup + Binary Log Position
  • 23. www.fromdual.com 23 / 31 ... Master – Slave Replikation Application Master log_bin = on server_id = 42 Slave ● Wir brauchen: ● Binary Log ● Server Id ● User für die Replikation (auf dem Master) ● Konsistentes Backup MIT Binary Log Position bin-log.m bin-log.n relay-log.m relay-log.n... IO_ thread SQL_ thread
  • 24. www.fromdual.com 24 / 31 High-Availability mit Replikation Application Master Slave Backup Slave Reporting rt w Load balancer read only Slave 1 Slave 2 Slave 3 ... async! Slave M VIP
  • 25. www.fromdual.com 25 / 31 RAC: Galera Cluster App App App Load balancing (LB) Node 2 Node 3Node 1 wsrep Galera replication wsrep wsrep rwrw Oracle Real Application Cluster (RAC) ● MySQL: Galera Cluster ● Shared-Nothing Architektur
  • 26. www.fromdual.com 26 / 31 Galera Cluster für MySQL App App App Load balancing (LB) Node 2 Node 3Node 1 wsrep Galera replication wsrep wsrep ● Hardware-Ausfall ● Wartungsarbeiten ● HW/OS/DB Upgrade ● 5x9 HA: 99.999%
  • 27. www.fromdual.com 27 / 31 Monitoring ● OEM/DBC/Grid-Control/Cloud-Control ● MySQL Enterprise Monitor (MEM) €€€ ● MySQL Performance Monitor (mpm) ● mysql> SHOW GLOBAL STATUS; ● Nagios / Icinga ● Links: http://www.mysql.com/products/enterprise/monitor.html http://www.fromdual.com/mysql-performance-monitor http://www.fromdual.com/download#nagios
  • 28. www.fromdual.com 28 / 31 Performance Tuning ● mysql> SHOW GLOBAL STATUS; ● PERFORMANCE_SCHEMA ● Slow Query Log ● slow_query_log = 1 ● long_query_time = 0.5 ● shell> mysqldumpslow ­s t slow.log > profile ● Query Execution Plan: mysql> EXPLAIN SELECT * FROM test;
  • 29. www.fromdual.com 29 / 31 Stored Programs Oracle: PL/SQL, Java ● MySQL: ● Stored Procedures ● Stored Functions ● User Defined Functions (UDF): C/C++ ● Plugin: C/C++
  • 30. www.fromdual.com 30 / 31 Volltext-Suche Oracle: Kostenpflichtiges Modul? ● MySQL: Standardmässig dabei! ALTER TABLE test ADD FULLTEXT INDEX (data); SELECT * FROM test WHERE MATCH data AGAINST('DBA'); +----+----------------------------------------+ | id | data | +----+----------------------------------------+ | 1 | Wir suchen zur Zeit einen Support DBA! | +----+----------------------------------------+
  • 31. www.fromdual.com 31 / 31 Q & A Fragen ? Diskussion? Wir haben Zeit für ein persönliches Gespräch... ● FromDual bietet neutral und unabhängig: ● Beratung ● Remote-DBA ● Support für MySQL, Galera, Percona Server und MariaDB ● Schulung www.fromdual.com/presentations