MySQL SYS Schema Deep Dive

Size: px
Start display at page:

Download "MySQL SYS Schema Deep Dive"

Transcription

1 MySQL SYS Schema Deep Dive Mark Leith Senior Software Development Manager MySQL Enterprise Tools, Oracle

2 Program Agenda Introduction to the MySQL sys schema Installation Formatting / Helper Routines Tracing Routines Summary Views

3 Program Agenda Introduction to the MySQL sys schema Installation Formatting / Helper Routines Tracing Routines Summary Views

4 You are : Using 5.1? Using 5.5? Using 5.6? Using 5.7? A Performance Schema user? A Sys Schema user?

5 Why the sys schema? Performance Schema exposes a huge amount of data Many of its tables can implement multiple different use cases, depending on the type of data The sys schema layers on top the (sometimes complex) queries in to a packaged set of easy to use views It also adds a number of functions and procedures that help format, configure the output of, and record, Performance Schema data Implements many of the common day to day DBA and Developer debugging and tuning use cases

6 Program Agenda Introduction to the MySQL sys schema Installation Formatting / Helper Routines Tracing Routines Summary Views

7 Installation from the command line $ git clone /tmp/sys $ cd /tmp/sys $ mysql -u user -p < sys_<version>.sql <version> can be 56 or 57, for 5.6 and 5.7 respectively

8 Installation from MySQL Workbench 6.1+

9 Installation on the new MySQL 5.7 GA Do nothing other than install/mysql_upgrade it is there by default! You will be able to install future upgrades from the sys repository as you wish, no restrictions there

10 Checking sys is loaded select * from sys.version; sys_version mysql_version mysql> select * -> from sys.schema_object_overview -> where db = 'sys'; db object_type count sys BASE TABLE 1 sys INDEX (BTREE) 1 sys TRIGGER 2 sys FUNCTION 21 sys PROCEDURE 26 sys VIEW

11 Program Agenda Introduction to the MySQL sys schema Installation Formatting / Helper Routines Tracing Routines Summary Views

12 Formatting / Helper Functions Make output human readable Format time appropriately Format bytes appropriately Truncate output for large width values for CLI Extract object names Check instrumentation state format_time format_bytes format_path format_statement extract_table_from_file_name extract_schema_from_file_name ps_is_account_enabled ps_is_consumer_enabled ps_is_instrument_default_enabled ps_is_instrument_default_timed ps_is_thread_instrumented 12

13 format_time() function mysql> select format_time( ) as time -> union select format_time( ) -> union select format_time( ); time ms 8.33 s 00:01:

14 format_bytes() function mysql> select format_bytes(23423) as bytes -> union select format_bytes( ) -> union select format_bytes( ) -> union select format_bytes( ); bytes KiB MiB GiB 2.09 TiB

15 Performance Schema Config Helper Procedures ps_setup_show_disabled() / ps_setup_show_enabled() ps_setup_disable_thread() / ps_setup_enable_thread() ps_setup_disable_background_threads() / ps_setup_enable_background_threads() ps_setup_disable_instrument() / ps_setup_enable_instrument() ps_setup_disable_consumer() / ps_setup_enable_consumer() ps_setup_save() / ps_setup_reload_saved() ps_setup_reset_to_default() / ps_truncate_all_tables()

16 Program Agenda Introduction to the MySQL sys schema Installation Formatting / Helper Routines Tracing Routines Summary Views

17 Statement Tracing Routines Dump all P_S data to a dot graph file to trace a thread Look in the statement history table to capture more info on a statement digest Show detailed transaction info Dump as much diagnostics info as possible (support enabler) ps_trace_thread ps_trace_statement_digest ps_thread_trx_info ps_thread_stack ps_statement_avg_latency_histogram diagnostics 17

18 ps_trace_statement_digest procedure ps_trace_statement_digest() analyses live traffic looking for certain statement digest for a period of time Captures statistics on each matching statement it finds Returns a report of the captured stats An overall summary A break down for the longest running example An EXPLAIN (if the statement is not truncated)

19 ps_trace_statement_digest procedure ps_trace_statement_digest() parameters in_digest The statement digest to analyse in_runtime How long to run analysis for in_interval How often to snapshot data in_start_fresh Whether to truncate P_S tables first in_auto_enable Whether to auto enable required config

20 ps_trace_statement_digest procedure example mysql> call ps_trace_statement_digest( 6134e9d6f25eb8e6cddf11f6938f202a, 60, 1, true, true); SUMMARY STATISTICS SUMMARY STATISTICS row in set (59.93 sec) executions exec_time lock_time rows_sent rows_examined tmp_tables full_scans s ms row in set (59.93 sec) event_name count latency stage/sql/sending data s stage/sql/update ms stage/sql/removing tmp table ms...

21 ps_trace_statement_digest procedure example LONGEST RUNNING STATEMENT LONGEST RUNNING STATEMENT row in set (59.95 sec) thread_id exec_time lock_time rows_sent rows_examined tmp_tables full_scan ms us row in set (59.95 sec) sql_text /* mem dbpool.default */ insert into `mem quan`.`normalized_statements_by_server_by_schema` (firstseen, lastseen, normalized_statement_id, `schema`, server, id) values ( , , x'808aceb88fc4b45bc47c4fe9d86c7f26', 'mem', '753c939e-1b99-11e3-b6d4-bc761a1f4f2f', x'7cfe81f98b1e3fe0895d1aa2c39b326d') ON DUPLICATE KEY UPDATE

22 ps_trace_statement_digest procedure example event_name latency stage/sql/init ms stage/sql/checking permissions 2.35 us stage/sql/opening tables us stage/sql/init us stage/sql/system lock 3.66 us stage/sql/update ms stage/sql/end 1.11 us stage/sql/query end 1.31 us stage/sql/closing tables 5.44 ms stage/sql/freeing items us rows in set (59.99 sec) id select_type table type possible_keys key key_len ref rows Extra SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used

23 sys.ps_thread_trx_info(<thread_id>) SELECT sys.ps_thread_trx_info(48) as trx_info\g *************************** 1. row *************************** trx_info: [ { "time": " us", "state": "COMMITTED", "mode": "READ WRITE", "autocommitted": "NO", "gtid": "AUTOMATIC", "isolation": "REPEATABLE READ", "statements_executed": [ { "sql_text": "INSERT INTO info VALUES (1, 'foo')", "time": " us", "schema": "trx", "rows_examined": 0, "rows_affected": 1, "rows_sent": 0, "tmp_tables": 0, "tmp_disk_tables": 0, "sort_rows": 0, "sort_merge_passes": 0 },... Pass in thread id

24 ps_trace_thread procedure ps_trace_thread() monitors a specific thread for a period Captures as much information on the thread activity as possible Returns a dot formatted file, that can graph the event hierarchy

25 ps_trace_thread procedure ps_trace_thread parameters in_thread_id The thread to analyse in_outfile The file to dump the data to (INTO OUTFILE) in_max_runtime How long to run analysis for in_interval How often to snapshot for data in_start_fresh Whether to truncate P_S tables first in_auto_setup Whether to auto enable required config in_debug Whether to also print debug info (source info)

26 ps_trace_thread procedure example mysql> call ps_trace_thread(27768, '/tmp/stack_27768.dot', 60, 0.1, true, true, true); Info Data collection starting for THREAD_ID = row in set (4.82 sec) Info Stack trace written to /tmp/stack_27768.dot row in set (60.90 sec) Convert to PDF dot -Tpdf -o /tmp/stack_27768.pdf /tmp/stack_27768.dot row in set (60.90 sec) Convert to PNG dot -Tpng -o /tmp/stack_27768.png /tmp/stack_27768.dot row in set (60.90 sec)+

27 ps_trace_thread procedure example cerberus:~ mark$ more Documents/statement_graphs/deletes.dot digraph events { graph [rankdir=lr, nodesep="0.10"]; node [label="\n"]; graph [bb="0,0,1860,17476"]; 1 [label="(0.20μ) mysys/thr_lock_threads\n", style=filled, color=lightskyblue, pos="209,18", width="3.19", height="0.50"]; 2 [label="(0.18μ) sql/thd::lock_thd_data\n", style=filled, color=lightskyblue, pos="209,61", width="3.06", height="0.50"]; 3 [label="(0.24μ) sql/hash_filo::lock\n", style=filled, color=lightskyblue, pos="209,104", width="2.42", height= 0.50"]; 4 [label="(0.31μ) sql/logger::lock_logger - read_lock\n", style=filled, color=orchid, pos="209,147", width="4.22", height="0.50"]; 5 [label="(0.08μ) sql/log::lock_log\n", style=filled, color=lightskyblue, pos="209,190", width="2.64", height="0.50"]; 6 [label="(12.97μ) wait/io/file/sql/query_log - write 49 bytes\n/users/mark/mysql/lp-mysql-trunk/mysql-test/var/mysqld.1/ mysqld.log\n", style=filled, color=red, shape=box, pos="209,235", width="5.78", height="0.56"]; 7 [label="(176.14μ) limit 1\nerrors: 0\nwarnings: 0\nlock time: 0.00μ\nrows affected: 0\nrows sent:\ 209,18", width="3.19", height="0.50"];mp disk tables: 0\nselect scan: 0\nselect full join: : 2 [label="(0.18μ) sql/thd::lock_thd_data\n", style=filled, color=lightskyblue, pos="209,61", width="3.06", height="0.50"]; 3 [label="(0.24μ) sql/hash_filo::lock\n", style=filled, color=lightskyblue, pos="209,104", width="2.42", height="0.50"]; 4 [label="(0.31μ) sql/logger::lock_logger - read_lock\n", style=filled, color=orchid, pos="209,147", width="4.22", height="0.50"]; 5 [label="(0.08μ) sql/log::lock_log\n", style=filled, color=lightskyblue, pos="209,190", width="2.64", height="0.50"];

28 ps_trace_thread procedure example MySQL 5.7 Procedures Transactions Statements Stages Waits

29

30

31

32

33

34

35 Program Agenda Introduction to the MySQL sys schema Installation Formatting / Helper Routines Tracing Routines Summary Views

36 MySQL sys views Reference set of views solving various administrator use cases Simple views, create/copy your own, sys is not locked down Build upon both performance_schema and INFORMATION_SCHEMA Both formatted and raw views are available All raw views are prefixed with x$ Raw views are there for tools to poll Formatted views are for humans and the command line

37 User / Host Summary Views High level user/host overviews Breakdowns by: IO usage Stages Statement details Following show users only user_summary user_summary_by_file_io user_summary_by_file_io_type user_summary_by_stages user_summary_by_statement_latency user_summary_by_statement_type host_summary host_summary_by_file_io host_summary_by_file_io_type host_summary_by_stages host_summary_by_statement_latency host_summary_by_statement_type 37

38 user_summary view mysql> select * from user_summary\g *************************** 1. row *************************** user: mark statements: 3072 statement_latency: 1.77 s statement_avg_latency: us table_scans: 7 file_ios: file_io_latency: ms current_connections: 1 total_connections: 1 unique_hosts: 1 MySQL 5.7 current_memory: KiB total_memory_allocated: MiB

39 user_summary_by_file_io_type view mysql> select * from user_summary_by_file_io_type; user event_name total latency max_latency mark wait/io/file/myisam/dfile ms ms mark wait/io/file/myisam/kfile ms ms mark wait/io/file/sql/dbopt us 9.17 us root wait/io/file/innodb/innodb_log_file :28: s root wait/io/file/myisam/kfile :17: s root wait/io/file/myisam/dfile :07: s root wait/io/file/sql/binlog :03: s root wait/io/file/innodb/innodb_data_file :02: ms root wait/io/file/sql/frm s ms root wait/io/file/sql/dbopt s ms

40 user_summary_by_statement_latency view mysql> select * from user_summary_by_statement_latency\g *************************** 1. row *************************** user: mark total: 176 total_latency: 1.26 s max_latency: ms lock_latency: ms rows_sent: 311 rows_examined: 307 rows_affected: 0 full_scans: 7

41 user_summary_by_statement_type view mysql> select * from user_summary_by_statement_type\g *************************** 1. row *************************** user: mark statement: commit total: total_latency: 13.33h max_latency: s lock_latency: 0 ps rows_sent: 0 rows_examined: 0 rows_affected: 0 full_scans: 0

42 IO Summary Views IO by current threads Global summaries by file and class, aggregating by bytes or latency Stream of last file IO events in raw form io_by_thread_by_latency io_global_by_file_by_bytes io_global_by_file_by_latency io_global_by_wait_by_bytes io_global_by_wait_by_latency 42

43 io_by_thread_by_latency view mysql> select * from io_by_thread_by_latency\g *************************** 1. row *************************** user: main total: 1193 total_latency: ms min_latency: ns avg_latency: us max_latency: ms thread_id: 1 processlist_id: NULL *************************** 2. row *************************** user: root@localhost total: 533 total_latency: ms min_latency: ns avg_latency: 8.41 ms max_latency: ms thread_id: 23 processlist_id: 4

44 io_global_by_file_by_latency view mysql> select * from io_global_by_file_by_latency limit 1\G *************************** 1. row *************************** total: total_latency: 00:28:53.06 count_read: 1006 read_latency: 4.51 s count_write: write_latency: s count_misc: misc_latency: 00:28:15.16

45 latest_file_io view mysql> select * from latest_file_io; thread file latency operation requested us lock NULL 6.16 us write 1.50 KiB ms sync NULL us write 905 bytes us write 1.00 KiB us read 905 bytes 6.65 us write 1.00 KiB us sync NULL us write 1.00 KiB us sync NULL us write 601 bytes 7.55 us read 601 bytes us write 1.00 KiB us sync NULL us write 601 bytes 6.47 us read 601 bytes 9.22 us write 1.50 KiB

46 Schema Analysis Views Object overview Table usage statistics Index usage statistics Following show users only schema_index_statistics schema_object_overview schema_table_statistics schema_table_statistics_with_buffer schema_tables_with_full_table_scans schema_unused_indexes 46

47 schema_table_statistics view mysql> select * from schema_table_statistics limit 1\G *************************** 1. row *************************** table_schema: mem quan table_name: normalized_statements_by_server_by_schema_data total_latency: 00:55:07.80 rows_fetched: fetch_latency: s rows_inserted: insert_latency: 00:52:18.10 rows_updated: update_latency: 00:02:28.62 rows_deleted: delete_latency: 3.98 s io_read_requests: io_read: MiB io_read_latency: 00:03:04.10 io_write_requests: io_write: GiB io_write_latency: s io_misc_requests: io_misc_latency: 00:14:06.02

48 schema_index_statistics view mysql> select * from schema_index_statistics limit 1\G *************************** 1. row *************************** table_schema: mem inventory table_name: mysqlconnectionconfiguration index_name: PRIMARY rows_selected: select_latency: 00:07:05.03 rows_inserted: 0 insert_latency: 0 ps rows_updated: update_latency: s rows_deleted: 0 delete_latency: 0 ps

49 schema_tables_with_full_table_scans view mysql> select * from schema_tables_with_full_table_scans limit 10; object_schema object_name rows_full_scanned latency mem30 instruments fsstatistics s mem30 instruments preparedstatementapidata ms mem30 instruments mysqlprocessactivity ms mem30 instruments querycachequeriesincachedata ms mem30 instruments rowaccessesdata s mem30 instruments connectionsmaxdata ms mem30 instruments innodbdatadictionarymemorydata ms mem30 instruments innodbbufferpooldata s mem30 instruments avgrowaccessesdata s mem30 instruments innodbrowdetailsdata ms

50 schema_unused_indexes view mysql> select * from schema_unused_indexes limit 10; object_schema object_name index_name mem30 bean_config plists path mem30 config group_selections name mem30 config notification_groups name mem30 config user_form_defaults FKC1AEF1F9E7EE2CFB mem30 enterprise whats_new_entries entryid mem30 events action_logs policyid mem30 events action_logs eventid mem30 events action_logs ts mem30 events advisor_scopes_advisorcategoryids FKF0CB0DB962CAB4 mem30 events advisor_scopes_advisorclassids FK650AF1BF962CAB You should ensure you have representative time frame before taking any actions!

51 Wait Analysis Views Wait summaries by class Wait details per: User Host Globally wait_classes_global_by_avg_latency wait_classes_global_by_latency waits_by_host_by_latency waits_by_user_by_latency waits_global_by_latency 51

52 waits_global_by_latency view mysql> select * from waits_global_by_latency limit 10; events total total_latency avg_latency max_latency wait/io/table/sql/handler h us 2.29 s wait/io/file/innodb/innodb_data_file h us 1.49 s wait/io/file/innodb/innodb_log_file :36: us 1.30 s wait/io/file/myisam/kfile :18: us 1.17 s wait/io/file/myisam/dfile :08: us 1.18 s wait/io/file/sql/binlog :03: us 1.42 s wait/lock/table/sql/handler :01: us ms wait/io/socket/sql/client_connection s 6.54 us ms wait/io/file/sql/frm s us ms wait/io/file/sql/dbopt s us ms InnoDB only instance, this MyISAM IO is all temporary tables, focus tuning there!

53 waits_by_user_by_latency view mysql> select * from waits_by_user_by_latency; user event total total_latency avg_latency max_latency mark wait/io/file/myisam/dfile ms us ms mark wait/io/file/myisam/kfile ms us ms mark wait/io/file/sql/dbopt us 8.64 us 9.17 us root wait/io/table/sql/handler h us 2.29 s root wait/io/file/innodb/innodb_log_file :30: us 1.30 s root wait/io/file/myisam/kfile :18: us 1.17 s root wait/io/file/myisam/dfile :07: us 1.18 s root wait/io/file/sql/binlog :03: us 1.42 s root wait/io/file/innodb/innodb_data_file :03: ms ms root wait/lock/table/sql/handler :01: us ms root is doing the most temporary table IO

54 Lock Wait Views Table Metadata Lock Waits InnoDB Row Lock Waits schema_table_lock_waits innodb_lock_waits 54

55 sys.schema_table_lock_waits mysql> select * from sys.schema_table_lock_waits\g *************************** 1. row *************************** object_schema: test object_name: t waiting_thread_id: 43 waiting_pid: 21 waiting_account: msandbox@localhost waiting_lock_type: SHARED_UPGRADABLE waiting_lock_duration: TRANSACTION waiting_query: alter table test.t add foo int waiting_query_secs: 988 waiting_query_rows_affected: 0 waiting_query_rows_examined: 0 blocking_thread_id: 42 blocking_pid: 20 blocking_account: msandbox@localhost blocking_lock_type: SHARED_NO_READ_WRITE blocking_lock_duration: TRANSACTION sql_kill_blocking_query: KILL QUERY 20 sql_kill_blocking_connection: KILL 20

56 sys.innodb_lock_waits mysql> SELECT * FROM sys.innodb_lock_waits\g *************************** 1. row *************************** wait_started: :39:20 wait_age: 00:00:07 wait_age_secs: 7 locked_table: `db1`.`t1` locked_index: PRIMARY locked_type: RECORD waiting_trx_id: waiting_trx_started: :39:15 waiting_trx_age: 00:00:12 waiting_trx_rows_locked: 0 waiting_trx_rows_modified: 0 waiting_pid: 3 waiting_query: UPDATE t1 SET val = val + 1 WHERE id = 2 waiting_lock_id: :2363:3:3 waiting_lock_mode: X blocking_trx_id: blocking_pid: 4... blocking_query: UPDATE t1 SET val blocking_lock_id: :2363:3:3 blocking_lock_mode: X blocking_trx_started: :39:11 blocking_trx_age: 00:00:16 blocking_trx_rows_locked: 1 blocking_trx_rows_modified: 1 sql_kill_blocking_query: KILL QUERY 4 sql_kill_blocking_connection: KILL 4

57 Statement Analysis Views Statement overview Find statements by: Those with errors Those with full table scans Those creating temp tables Those that cause sorting With latency in 95th %ile statement_analysis statements_with_errors_or_warnings statements_with_full_table_scans statements_with_runtimes_in_95th_p ercentile statements_with_sorting statements_with_temp_tables 57

58 statement_analysis view mysql> select * from statement_analysis limit 2\G *************************** 1. row *************************** query: INSERT INTO `mem30 quan`. `n... nduration` = IF ( VALUES (... db: mem full_scan: exec_count: 4657 err_count: 0 warn_count: 0 total_latency: 00:03:57.40 max_latency: s avg_latency: ms lock_latency: 00:03:00.93 rows_sent: 0 rows_sent_avg: 0 rows_examined: 0 rows_examined_avg: 0 rows_affected: 4794 rows_affected_avg: 1 tmp_tables: 0 tmp_disk_tables: 0 rows_sorted: 0 sort_merge_passes: 0 digest: b98bfe333642e8e4e72c d865 first_seen: :27:01 last_seen: :53:00

59 statements_with_errors_or_warnings view mysql> select * from statements_with_errors_or_warnings limit 1\G *************************** 1. row *************************** query: CREATE TEMPORARY TABLE IF NOT... _logs` ( `id` INT8 NOT NULL ) db: mem exec_count: 1725 errors: 1725 error_pct: warnings: 0 warning_pct: first_seen: :42:32 last_seen: :39:22 digest: 51fb979dbc3910a6294c7cdabd7839c3

60 statements_with_temp_tables view mysql> select * from statements_with_temp_tables limit 1\G *************************** 1. row *************************** query: SELECT * FROM ( SELECT `digest... `, `sum_no_index_used` AS... db: mysql exec_count: 68 total_latency: 2.31 s memory_tmp_tables: 476 disk_tmp_tables: 204 avg_tmp_tables_per_query: 7 tmp_tables_to_disk_pct: 43 first_seen: :26:18 last_seen: :33:00 digest: 50761c6a d8a136b9ed6

61 statements_with_full_table_scans view mysql> select * from statements_with_full_table_scans limit 1\G *************************** 1. row *************************** query: SELECT `pojotimese0_`. `id` A... ty_timeseries` `pojotimese0_` db: mem exec_count: 1 total_latency: us no_index_used_count: 1 no_good_index_used_count: 0 no_index_used_pct: 100 rows_sent: 116 rows_examined: 116 rows_sent_avg: 116 rows_examined_avg: 116 first_seen: :25:03 last_seen: :25:03 digest: f81b5ce10baee9be754cf35fd245a516

62 Miscellaneous Views Better SHOW PROCESSLIST No mutex contention Live statistics for query Consolidated metrics processlist session metrics 62

63 processlist / session views mysql> select * from session\g *************************** 1. row *************************** thd_id: 7890 conn_id: 7870 user: root@localhost db: mem command: Query state: update time: 0 current_statement: /* mem dbpool.default */ inser...<truncated> lock_latency: 0 ps rows_examined: 0 rows_sent: 0 rows_affected: 0 tmp_tables: 0 tmp_disk_tables: 0 full_scan: NO last_statement: NULL last_statement_latency: NULL last_wait: wait/io/table/sql/handler last_wait_latency: Still Waiting source: handler.cc:7274

64 sys.sessions progress estimation mysql> select * from sys.sessions\g *************************** 1. row *************************** thd_id: conn_id: user: msandbox@localhost db: test command: Query state: alter table (flush) time: 18 current_statement: alter table t1 add column g int statement_latency: s progress: lock_latency: ms rows_examined: 0 rows_sent: 0 rows_affected: 0 tmp_tables: 0 tmp_disk_tables: 0...

65 sys.metrics performance_schema.global_status mysql> select * from sys.metrics limit 199, 10; Variable_name Variable_value Type Enabled tc_log_page_waits 0 Global Status YES threads_cached 7 Global Status YES threads_connected 3 Global Status YES threads_created 10 Global Status YES threads_running 3 Global Status YES uptime Global Status YES uptime_since_flush_status Global Status YES adaptive_hash_pages_added 0 InnoDB Metrics - adaptive_hash_index NO adaptive_hash_pages_removed 0 InnoDB Metrics - adaptive_hash_index NO adaptive_hash_rows_added 0 InnoDB Metrics - adaptive_hash_index NO information_schema.innodb_metrics

66

67

Using MySQL 5.6 Performance Schema to Troubleshoot Typical Workload Bottlenecks. Peter Zaitsev, CEO, Percona Percona Technical Webinars May 15, 2013

Using MySQL 5.6 Performance Schema to Troubleshoot Typical Workload Bottlenecks. Peter Zaitsev, CEO, Percona Percona Technical Webinars May 15, 2013 Using MySQL 5.6 Performance Schema to Troubleshoot Typical Workload Bottlenecks Peter Zaitsev, CEO, Percona Percona Technical Webinars May 15, 2013 About Presentation Introduction to Performance Schema

More information

Copyright 2013, Oracle and/or its affiliates. All rights reserved.

Copyright 2013, Oracle and/or its affiliates. All rights reserved. 1 Making the Performance Schema Easier to Use Jesper Wisborg Krogh Principal Technical Support Engineer, Oracle 2 Safe Harbour Statement THE FOLLOWING IS INTENDED TO OUTLINE OUR GENERAL PRODUCT DIRECTION.

More information

Improving Performance with MySQL Performance Schema. Jesper Wisborg Krogh Principal Technical Support Engineer, MySQL

Improving Performance with MySQL Performance Schema. Jesper Wisborg Krogh Principal Technical Support Engineer, MySQL Improving Performance with MySQL Performance Schema Jesper Wisborg Krogh Principal Technical Support Engineer, MySQL Background Information To login to the virtual machine: Username ouser Password Oracle123

More information

Performance Schema. Slides Sheeri Cabral. Senior DB Admin/Architect, Mozilla Oracle ACE

Performance Schema. Slides  Sheeri Cabral. Senior DB Admin/Architect, Mozilla Oracle ACE Performance Schema Slides http://bit.ly/mysql_ps Sheeri Cabral Senior DB Admin/Architect, Mozilla Oracle ACE Director @sheeri www.sheeri.com What is performance schema? Performance Schema Introduced in

More information

Performance Schema and Sys Schema

Performance Schema and Sys Schema Performance Schema and Sys Schema Mark Leith Senior Software Development Manager MySQL Enterprise Tools, Oracle Copyright 2016, 2014, Oracle and/or its affiliates. All rights reserved. Program Agenda 1

More information

Troubleshooting Slow Queries. Sveta Smirnova Principal Support Engineer April, 28, 2016

Troubleshooting Slow Queries. Sveta Smirnova Principal Support Engineer April, 28, 2016 Troubleshooting Slow Queries Sveta Smirnova Principal Support Engineer April, 28, 2016 Table of Contents Before we start What affects query execution EXPLAIN: how to find out how optimizer works Data matters:

More information

Performance Schema. for MySQL Troubleshooting. March, 1, 2018 Sveta Smirnova

Performance Schema. for MySQL Troubleshooting. March, 1, 2018 Sveta Smirnova Performance Schema for MySQL Troubleshooting March, 1, 2018 Sveta Smirnova Table of Contents Overview and Configuration Statements Memory Usage Locks Diagnostics Variables and Status Errors Summary Connection

More information

PERFORMANCE_SCHEMA and sys schema. What can we do with it?

PERFORMANCE_SCHEMA and sys schema. What can we do with it? PERFORMANCE_SCHEMA and sys schema What can we do with it? FOSDEM 2016, January 30 th, Brussels Oli Sennhauser Senior MySQL Consultant at FromDual GmbH oli.sennhauser@fromdual.com 1 / 32 About FromDual

More information

MySQL Query Patterns, Optimized

MySQL Query Patterns, Optimized MySQL Query Patterns, Optimized Bill Karwin, Percona Welcome Everybody! Bill Karwin Senior Knowledge Manager in Percona Support Joined Percona in 2010 Percona offers MySQL services Consulting Support for

More information

Performance Schema for MySQL Troubleshooting. April, 25, 2017 Sveta Smirnova

Performance Schema for MySQL Troubleshooting. April, 25, 2017 Sveta Smirnova Performance Schema for MySQL Troubleshooting April, 25, 2017 Sveta Smirnova Sveta Smirnova 2 MySQL Support engineer Author of MySQL Troubleshooting JSON UDF functions FILTER clause for MySQL Speaker Percona

More information

Query Optimization With MySQL 8.0 and MariaDB 10.3: The Basics

Query Optimization With MySQL 8.0 and MariaDB 10.3: The Basics Query Optimization With MySQL 8.0 and MariaDB 10.3: The Basics Jaime Crespo Percona Live Europe 2018 -Frankfurt, 5 Nov 2018- dbahire.com/pleu18 Agenda 1. Introduction 6. Joins 2. Query Profiling 7. Subqueries

More information

MySQL Performance Schema in Action. April, 23, 2018 Sveta Smirnova, Alexander Rubin

MySQL Performance Schema in Action. April, 23, 2018 Sveta Smirnova, Alexander Rubin MySQL Performance Schema in Action April, 23, 2018 Sveta Smirnova, Alexander Rubin Table of Contents Performance Schema Configuration 5.6+: Statements Instrumentation 5.7+: Prepared Statements 5.7+: Stored

More information

How to Analyze and Tune MySQL Queries for Better Performance

How to Analyze and Tune MySQL Queries for Better Performance How to Analyze and Tune MySQL Queries for Better Performance Øystein Grøvlen Senior Principal Software Engineer MySQL Optimizer Team, Oracle Copyright 2017, Oracle and/or its its affiliates. All All rights

More information

MySQL Schema Best Practices

MySQL Schema Best Practices MySQL Schema Best Practices 2 Agenda Introduction 3 4 Introduction - Sample Schema Key Considerations 5 Data Types 6 Data Types [root@plive-2017-demo plive_2017]# ls -alh action*.ibd -rw-r-----. 1 mysql

More information

How to Analyze and Tune MySQL Queries for Better Performance

How to Analyze and Tune MySQL Queries for Better Performance How to Analyze and Tune MySQL Queries for Better Performance Øystein Grøvlen Senior Principal Software Engineer MySQL Optimizer Team, Oracle April 16, 2015 Program Agenda 1 2 3 4 5 6 Introduction to MySQL

More information

How to Analyze and Tune MySQL Queries for Better Performance

How to Analyze and Tune MySQL Queries for Better Performance How to Analyze and Tune MySQL Queries for Better Performance Øystein Grøvlen Senior Principal Software Engineer MySQL Optimizer Team, Oracle Copyright 2018, Oracle and/or its its affiliates. All All rights

More information

Troubleshooting Locking Issues. Sveta Smirnova Principal Technical Services Engineer May, 12, 2016

Troubleshooting Locking Issues. Sveta Smirnova Principal Technical Services Engineer May, 12, 2016 Troubleshooting Locking Issues Sveta Smirnova Principal Technical Services Engineer May, 12, 2016 Table of Contents Introduction How to diagnose MDL locks Possible fixes and best practices How to diagnose

More information

Percona Server: secret features

Percona Server: secret features Date, time, place: MySQL Conference & Expo 2011 Reporter: Vadim Tkachenko Co-founder, CTO, Percona Inc In this talk: some not high profile, but addictive features. Once you start to use them you can t

More information

Maximizing SQL reviews with pt-query-digest

Maximizing SQL reviews with pt-query-digest PALOMINODB OPERATIONAL EXCELLENCE FOR DATABASES Maximizing SQL reviews with pt-query-digest Mark Filipi www.palominodb.com What is pt-query-digest Analyzes MySQL queries from slow, general and binary log

More information

Practical Performance Tuning using Digested SQL Logs. Bob Burgess Salesforce Marketing Cloud

Practical Performance Tuning using Digested SQL Logs. Bob Burgess Salesforce Marketing Cloud Practical Performance Tuning using Digested SQL Logs Bob Burgess Salesforce Marketing Cloud Who?! Database Architect! Salesforce Marketing Cloud (Radian6 & Buddy Media stack) Why?! I can t be the only

More information

Introduction to Troubleshooting Performance What Affects Query Execution? Sveta Smirnova Principal Support Engineer April, 7, 2016

Introduction to Troubleshooting Performance What Affects Query Execution? Sveta Smirnova Principal Support Engineer April, 7, 2016 Introduction to Troubleshooting Performance What Affects Query Execution? Sveta Smirnova Principal Support Engineer April, 7, 2016 Terms of conditions The query Controlling optimizer Concurrency Hardware

More information

MySQL Database Administrator Training NIIT, Gurgaon India 31 August-10 September 2015

MySQL Database Administrator Training NIIT, Gurgaon India 31 August-10 September 2015 MySQL Database Administrator Training Day 1: AGENDA Introduction to MySQL MySQL Overview MySQL Database Server Editions MySQL Products MySQL Services and Support MySQL Resources Example Databases MySQL

More information

MySQL Performance Tuning 101

MySQL Performance Tuning 101 MySQL Performance Tuning 101 Hands-on-Lab Mirko Ortensi Senior Support Engineer MySQL Support @ Oracle October 3, 2017 Copyright 2017, Oracle and/or its affiliates. All rights reserved. Safe Harbor Statement

More information

<Insert Picture Here> Looking at Performance - What s new in MySQL Workbench 6.2

<Insert Picture Here> Looking at Performance - What s new in MySQL Workbench 6.2 Looking at Performance - What s new in MySQL Workbench 6.2 Mario Beck MySQL Sales Consulting Manager EMEA The following is intended to outline our general product direction. It is

More information

Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Copyright 2014, Oracle and/or its affiliates. All rights reserved. Basic MySQL Troubleshooting for Oracle DBAs Sveta Smirnova Senior Principal Technical Support Engineer MySQL Support September 29, 2014 Safe Harbor Statement The following is intended to outline our general

More information

Tired of MySQL Making You Wait? Alexander Rubin, Principal Consultant, Percona Janis Griffin, Database Evangelist, SolarWinds

Tired of MySQL Making You Wait? Alexander Rubin, Principal Consultant, Percona Janis Griffin, Database Evangelist, SolarWinds Tired of MySQL Making You Wait? Alexander Rubin, Principal Consultant, Percona Janis Griffin, Database Evangelist, SolarWinds Who Am I? Senior DBA / Performance Evangelist for Solarwinds Janis.Griffin@solarwinds.com

More information

ITS. MySQL for Database Administrators (40 Hours) (Exam code 1z0-883) (OCP My SQL DBA)

ITS. MySQL for Database Administrators (40 Hours) (Exam code 1z0-883) (OCP My SQL DBA) MySQL for Database Administrators (40 Hours) (Exam code 1z0-883) (OCP My SQL DBA) Prerequisites Have some experience with relational databases and SQL What will you learn? The MySQL for Database Administrators

More information

MYSQL 5.6. Online Operations and Improved Diagnostics. Tuesday, 20 August, 13

MYSQL 5.6. Online Operations and Improved Diagnostics. Tuesday, 20 August, 13 MYSQL 5.6 Online Operations and Improved Diagnostics ABOUT ME 1998 2013 Web designer Developer (PHP) DBA Architect/Devops MYSQL RELEASES IN HISTORY MySQL 5.0 - October 2005 Many New Features (Triggers,

More information

Advanced MySQL Query Tuning

Advanced MySQL Query Tuning Advanced MySQL Query Tuning Alexander Rubin August 6, 2014 About Me My name is Alexander Rubin Working with MySQL for over 10 years Started at MySQL AB, then Sun Microsystems, then Oracle (MySQL Consulting)

More information

Troubleshooting Best Practices

Troubleshooting Best Practices Troubleshooting Best Practices Monitoring the Production Database Without Killing Performance June, 27, 2018 Sveta Smirnova Table of Contents Introduction: Between Desire and Reality Why Monitoring is

More information

Advanced MySQL Query Tuning

Advanced MySQL Query Tuning Advanced MySQL Query Tuning Alexander Rubin July 21, 2013 About Me My name is Alexander Rubin Working with MySQL for over 10 years Started at MySQL AB, then Sun Microsystems, then Oracle (MySQL Consulting)

More information

CO MySQL for Database Administrators

CO MySQL for Database Administrators CO-61762 MySQL for Database Administrators Summary Duration 5 Days Audience Administrators, Database Designers, Developers Level Professional Technology Oracle MySQL 5.5 Delivery Method Instructor-led

More information

#MySQL #oow16. MySQL Server 8.0. Geir Høydalsvik

#MySQL #oow16. MySQL Server 8.0. Geir Høydalsvik #MySQL #oow16 MySQL Server 8.0 Geir Høydalsvik Copyright Copyright 2 2016, 016,Oracle Oracle aand/or nd/or its its aaffiliates. ffiliates. AAll ll rights rights reserved. reserved. Safe Harbor Statement

More information

MySQL Schema Review 101

MySQL Schema Review 101 MySQL Schema Review 101 How and What you should be looking at... Mike Benshoof - Technical Account Manager, Percona Agenda Introduction Key things to consider and review Tools to isolate issues Common

More information

Oracle Exam 1z0-883 MySQL 5.6 Database Administrator Version: 8.0 [ Total Questions: 100 ]

Oracle Exam 1z0-883 MySQL 5.6 Database Administrator Version: 8.0 [ Total Questions: 100 ] s@lm@n Oracle Exam 1z0-883 MySQL 5.6 Database Administrator Version: 8.0 [ Total Questions: 100 ] Oracle 1z0-883 : Practice Test Question No : 1 Consider the Mysql Enterprise Audit plugin. You are checking

More information

Oracle 1Z MySQL 5.6 Database Administrator. Download Full Version :

Oracle 1Z MySQL 5.6 Database Administrator. Download Full Version : Oracle 1Z0-883 MySQL 5.6 Database Administrator Download Full Version : http://killexams.com/pass4sure/exam-detail/1z0-883 D. The mysqld binary was not compiled with SSL support. E. The server s SSL certificate

More information

MySQL for Database Administrators Ed 3.1

MySQL for Database Administrators Ed 3.1 Oracle University Contact Us: 1.800.529.0165 MySQL for Database Administrators Ed 3.1 Duration: 5 Days What you will learn The MySQL for Database Administrators training is designed for DBAs and other

More information

1Z MySQL 5 Database Administrator Certified Professional Exam, Part II Exam.

1Z MySQL 5 Database Administrator Certified Professional Exam, Part II Exam. Oracle 1Z0-874 MySQL 5 Database Administrator Certified Professional Exam, Part II Exam TYPE: DEMO http://www.examskey.com/1z0-874.html Examskey Oracle 1Z0-874 exam demo product is here for you to test

More information

Analyze MySQL Query Performance with Percona Cloud Tools

Analyze MySQL Query Performance with Percona Cloud Tools Analyze MySQL Query Performance with Percona Cloud Tools Vadim Tkachenko Percona, Co-founder /CTO www.percona.com cloud.percona.com www.mysqlperformanceblog.com 2 This webinar Performance Percona Cloud

More information

MySQL 5.7 For Operational DBAs an Introduction. Peter Zaitsev, CEO, Percona February 16, 2016 Percona Technical Webinars

MySQL 5.7 For Operational DBAs an Introduction. Peter Zaitsev, CEO, Percona February 16, 2016 Percona Technical Webinars MySQL 5.7 For Operational DBAs an Introduction Peter Zaitsev, CEO, Percona February 16, 2016 Percona Technical Webinars MySQL 5.7 is Great! A lot of Worthy Changes for Developers and DBAs 2 What Developers

More information

MySQL Performance Tuning

MySQL Performance Tuning MySQL Performance Tuning Student Guide D61820GC30 Edition 3.0 January 2017 D89524 Learn more from Oracle University at education.oracle.com Authors Mark Lewin Jeremy Smyth Technical Contributors and Reviewers

More information

MySQL for Developers with Developer Techniques Accelerated

MySQL for Developers with Developer Techniques Accelerated Oracle University Contact Us: 02 696 8000 MySQL for Developers with Developer Techniques Accelerated Duration: 5 Days What you will learn This MySQL for Developers with Developer Techniques Accelerated

More information

MySQL 5.6: Advantages in a Nutshell. Peter Zaitsev, CEO, Percona Percona Technical Webinars March 6, 2013

MySQL 5.6: Advantages in a Nutshell. Peter Zaitsev, CEO, Percona Percona Technical Webinars March 6, 2013 MySQL 5.6: Advantages in a Nutshell Peter Zaitsev, CEO, Percona Percona Technical Webinars March 6, 2013 About Presentation Brief Overview Birds eye view of features coming in 5.6 Mainly documentation

More information

Covering indexes. Stéphane Combaudon - SQLI

Covering indexes. Stéphane Combaudon - SQLI Covering indexes Stéphane Combaudon - SQLI Indexing basics Data structure intended to speed up SELECTs Similar to an index in a book Overhead for every write Usually negligeable / speed up for SELECT Possibility

More information

MySQL Query Tuning 101. Sveta Smirnova, Alexander Rubin April, 16, 2015

MySQL Query Tuning 101. Sveta Smirnova, Alexander Rubin April, 16, 2015 MySQL Query Tuning 101 Sveta Smirnova, Alexander Rubin April, 16, 2015 Agenda 2 Introduction: where to find slow queries Indexes: why and how do they work All about EXPLAIN More tools Where to find more

More information

<Insert Picture Here> Upcoming Changes in MySQL 5.7 Morgan Tocker, MySQL Community Manager

<Insert Picture Here> Upcoming Changes in MySQL 5.7 Morgan Tocker, MySQL Community Manager Upcoming Changes in MySQL 5.7 Morgan Tocker, MySQL Community Manager http://www.tocker.ca/ Safe Harbor Statement The following is intended to outline our general product direction.

More information

MySQL Utilities, part 1. Sheeri Cabral. Senior DB Admin/Architect,

MySQL Utilities, part 1. Sheeri Cabral. Senior DB Admin/Architect, MySQL Utilities, part 1 Sheeri Cabral Senior DB Admin/Architect, Mozilla @sheeri www.sheeri.com A set of tools What are they? What are they? A set of tools Like Percona toolkit, Open Ark Kit What are they?

More information

MySQL Group Replication in a nutshell

MySQL Group Replication in a nutshell 1 / 126 2 / 126 MySQL Group Replication in a nutshell the core of MySQL InnoDB Cluster Oracle Open World September 19th 2016 Frédéric Descamps MySQL Community Manager 3 / 126 Safe Harbor Statement The

More information

MySQL and OpenStack Deep Dive

MySQL and OpenStack Deep Dive MySQL and OpenStack Deep Dive Peter Boros, Percona Jay Pipes, Mirantis www.mirantis.com November, 2014 Diving into MySQL and OpenStack Our setup Analyzing MySQL query loads Takeaways Objectives Examine

More information

Creating a Best-in-Class Backup and Recovery System for Your MySQL Environment. Akshay Suryawanshi DBA Team Manager,

Creating a Best-in-Class Backup and Recovery System for Your MySQL Environment. Akshay Suryawanshi DBA Team Manager, Creating a Best-in-Class Backup and Recovery System for Your MySQL Environment Akshay Suryawanshi DBA Team Manager, 2015-07-15 Agenda Why backups? Backup Types Binary or Raw Backups Logical Backups Binlog

More information

When and How to Take Advantage of New Optimizer Features in MySQL 5.6. Øystein Grøvlen Senior Principal Software Engineer, MySQL Oracle

When and How to Take Advantage of New Optimizer Features in MySQL 5.6. Øystein Grøvlen Senior Principal Software Engineer, MySQL Oracle When and How to Take Advantage of New Optimizer Features in MySQL 5.6 Øystein Grøvlen Senior Principal Software Engineer, MySQL Oracle Program Agenda Improvements for disk-bound queries Subquery improvements

More information

MySQL Performance Schema in Action. November, 5, 2018 Sveta Smirnova, Alexander Rubin with Nickolay Ihalainen

MySQL Performance Schema in Action. November, 5, 2018 Sveta Smirnova, Alexander Rubin with Nickolay Ihalainen MySQL Performance Schema in Action November, 5, 2018 Sveta Smirnova, Alexander Rubin with Nickolay Ihalainen Table of Contents Internal Diagnostic in MySQL Configuration 5.6+: Statements Instrumentation

More information

MySQL Community Patches and Extensions

MySQL Community Patches and Extensions MySQL Community Patches and Extensions OSCON 2009 July 20-24 2009 San Jose,CA Peter Zaitsev, Percona Inc, Define Terminology Fork Complitely separate product, not fully compatible Drizzle Branch - Separate

More information

InnoDB: Status, Architecture, and Latest Enhancements

InnoDB: Status, Architecture, and Latest Enhancements InnoDB: Status, Architecture, and Latest Enhancements O'Reilly MySQL Conference, April 14, 2011 Inaam Rana, Oracle John Russell, Oracle Bios Inaam Rana (InnoDB / MySQL / Oracle) Crash recovery speedup

More information

MySQL Server 8.0. Geir Høydalsvik. Copyright 2016, 2017, Oracle and/or its its affiliates. All All rights reserved.

MySQL Server 8.0. Geir Høydalsvik. Copyright 2016, 2017, Oracle and/or its its affiliates. All All rights reserved. MySQL Server 8.0 Geir Høydalsvik Copyright 2016, 2017, Oracle and/or its its affiliates. All All rights reserved. Safe Harbor Statement The following is intended to outline our general product direction.

More information

OKC MySQL Users Group

OKC MySQL Users Group OKC MySQL Users Group OKC MySQL Discuss topics about MySQL and related open source RDBMS Discuss complementary topics (big data, NoSQL, etc) Help to grow the local ecosystem through meetups and events

More information

How To Remove Information_schema From Sql File

How To Remove Information_schema From Sql File How To Remove Information_schema From Sql File Just remove TABLE_CATALOG from your query. exists ( select 1 from information_schema.tables where table_catalog = @dbname and table_schema = 'dbo' You can

More information

Backup & Restore. Maximiliano Bubenick Sr Remote DBA

Backup & Restore. Maximiliano Bubenick Sr Remote DBA Backup & Restore Maximiliano Bubenick Sr Remote DBA Agenda Why backups? Backup Types Raw Backups Logical Backups Binlog mirroring Backups Locks Tips Why Backups? Why Backups? At some point something will

More information

MySQL 5.0 Certification Study Guide

MySQL 5.0 Certification Study Guide MySQL 5.0 Certification Study Guide Paul DuBois, Stefan Hinz, and Carsten Pedersen MySQC Press 800 East 96th Street, Indianapolis, Indiana 46240 USA Table of Contents Introduction 1 About This Book 1 Sample

More information

MySQL Performance Tuning

MySQL Performance Tuning MySQL Performance Tuning Sumi Ryu Senior Sales Consultant 1 Program Agenda Basics: Hardware, Storage Engines and Versions Server Tuning Index, Query and Schema Optimization MySQL Performance Schema Introduction

More information

Why we re excited about MySQL 8

Why we re excited about MySQL 8 Why we re excited about MySQL 8 Practical Look for Devs and Ops Peter Zaitsev, CEO, Percona February 4nd, 2018 FOSDEM 1 In the Presentation Practical view on MySQL 8 Exciting things for Devs Exciting things

More information

Optimizing BOINC project databases

Optimizing BOINC project databases Optimizing BOINC project databases Oliver Bock Max Planck Institute for Gravitational Physics Hannover, Germany 5th Pan-Galactic BOINC Workshop Catalan Academy of Letters, Sciences and Humanities Barcelona,

More information

What's New in MySQL 5.7?

What's New in MySQL 5.7? What's New in MySQL 5.7? Norvald H. Ryeng Software Engineer norvald.ryeng@oracle.com Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information

More information

Delegates must have a working knowledge of MariaDB or MySQL Database Administration.

Delegates must have a working knowledge of MariaDB or MySQL Database Administration. MariaDB Performance & Tuning SA-MARDBAPT MariaDB Performance & Tuning Course Overview This MariaDB Performance & Tuning course is designed for Database Administrators who wish to monitor and tune the performance

More information

Practical MySQL indexing guidelines

Practical MySQL indexing guidelines Practical MySQL indexing guidelines Percona Live October 24th-25th, 2011 London, UK Stéphane Combaudon stephane.combaudon@dailymotion.com Agenda Introduction Bad indexes & performance drops Guidelines

More information

Avoiding Common (but Deadly) MySQL Operations Mistakes

Avoiding Common (but Deadly) MySQL Operations Mistakes Avoiding Common (but Deadly) MySQL Operations Mistakes Bill Karwin bill.karwin@percona.com Bill Karwin Percona Live 2013 MySQL Operations Mistakes MYSTERY CONFIGURATION Who Changed the Config? Database

More information

Monday, September 15, 14

Monday, September 15, 14 1 Copyright 2013, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12 MySQL Server Performance Tuning 101 Ligaya Turmelle Principle Technical

More information

An Oracle White Paper April MySQL Enterprise Monitor and Query Analyzer Feature

An Oracle White Paper April MySQL Enterprise Monitor and Query Analyzer Feature An Oracle White Paper April 2010 MySQL Enterprise Monitor and Query Analyzer Feature Introduction... 2 Application Strategy: Performance and Scalability... 3 Common Challenges to Performance and Scalability...

More information

Mysql Information Schema Update Time Null >>>CLICK HERE<<< doctrine:schema:update --dump-sql ALTER TABLE categorie

Mysql Information Schema Update Time Null >>>CLICK HERE<<< doctrine:schema:update --dump-sql ALTER TABLE categorie Mysql Information Schema Update Time Null I want to update a MySQL database schema (with MySQL code) but I am unfortunately not sure 'name' VARCHAR(64) NOT NULL 'password' VARCHAR(64) NOT NULL fieldname

More information

Load Testing Tools. for Troubleshooting MySQL Concurrency Issues. May, 23, 2018 Sveta Smirnova

Load Testing Tools. for Troubleshooting MySQL Concurrency Issues. May, 23, 2018 Sveta Smirnova Load Testing Tools for Troubleshooting MySQL Concurrency Issues May, 23, 2018 Sveta Smirnova Introduction This is very personal webinar No intended use No best practices No QA-specific tools Real life

More information

XA Transactions in MySQL

XA Transactions in MySQL XA Transactions in MySQL An overview and troubleshooting guide to distributed transactions Dov Endress Senior MySQL DBA July 25th 2018 1 2016 Percona ACID Compliant Distributed Transactions Distributed

More information

MySQL Security, Privileges & User Management Kenny Gryp Percona Live Washington DC /

MySQL Security, Privileges & User Management Kenny Gryp Percona Live Washington DC / MySQL Security, Privileges & User Management Kenny Gryp Percona Live Washington DC / 2012-01-11 Security, Privileges & User Management Privilege System User Management Pluggable

More information

MySQL for Developers Ed 3

MySQL for Developers Ed 3 Oracle University Contact Us: 1.800.529.0165 MySQL for Developers Ed 3 Duration: 5 Days What you will learn This MySQL for Developers training teaches developers how to plan, design and implement applications

More information

Writing High Performance SQL Statements. Tim Sharp July 14, 2014

Writing High Performance SQL Statements. Tim Sharp July 14, 2014 Writing High Performance SQL Statements Tim Sharp July 14, 2014 Introduction Tim Sharp Technical Account Manager Percona since 2013 16 years working with Databases Optimum SQL Performance Schema Indices

More information

MySQL 8.0: Atomic DDLs Implementation and Impact

MySQL 8.0: Atomic DDLs Implementation and Impact MySQL 8.0: Atomic DDLs Implementation and Impact Ståle Deraas, Senior Development Manager Oracle, MySQL 26 Sept 2017 Copyright 2017, Oracle and/or its its affiliates. All All rights reserved. Safe Harbor

More information

PostgreSQL to MySQL A DBA's Perspective. Patrick

PostgreSQL to MySQL A DBA's Perspective. Patrick PostgreSQL to MySQL A DBA's Perspective Patrick King @mr_mustash Yelp s Mission Connecting people with great local businesses. My Database Experience Started using Postgres 7 years ago Postgres 8.4 (released

More information

IT Certification Exams Provider! Weofferfreeupdateserviceforoneyear! h ps://www.certqueen.com

IT Certification Exams Provider! Weofferfreeupdateserviceforoneyear! h ps://www.certqueen.com IT Certification Exams Provider! Weofferfreeupdateserviceforoneyear! h ps://www.certqueen.com Exam : 005-002 Title : Certified MySQL 5.0 DBA Part I Version : Demo 1 / 10 1. Will the following SELECT query

More information

Chapter 8: Working With Databases & Tables

Chapter 8: Working With Databases & Tables Chapter 8: Working With Databases & Tables o Working with Databases & Tables DDL Component of SQL Databases CREATE DATABASE class; o Represented as directories in MySQL s data storage area o Can t have

More information

Oracle Database 10g: New Features for Administrators Release 2

Oracle Database 10g: New Features for Administrators Release 2 Oracle University Contact Us: +27 (0)11 319-4111 Oracle Database 10g: New Features for Administrators Release 2 Duration: 5 Days What you will learn This course introduces students to the new features

More information

Mysql Cluster Global Schema Lock

Mysql Cluster Global Schema Lock Mysql Cluster Global Schema Lock This definitely was not the case with MySQL Cluster 7.3.x. (Warning) NDB: Could not acquire global schema lock (4009)Cluster Failure 2015-03-25 14:51:53. Using High-Speed

More information

Mysql Performance Schema Has The Wrong Structure

Mysql Performance Schema Has The Wrong Structure Mysql Performance Schema Has The Wrong Structure events_waits_summary_by_instance' has the wrong structure 141006 As for the performance schema problems they sound as though they are quite broken. events_waits_history_long'

More information

Oracle 1Z0-497 Exam Questions and Answers (PDF) Oracle 1Z0-497 Exam Questions 1Z0-497 BrainDumps

Oracle 1Z0-497 Exam Questions and Answers (PDF) Oracle 1Z0-497 Exam Questions 1Z0-497 BrainDumps Oracle 1Z0-497 Dumps with Valid 1Z0-497 Exam Questions PDF [2018] The Oracle 1Z0-497 Oracle Database 12c Essentials exam is an ultimate source for professionals to retain their credentials dynamic. And

More information

Indexes - What You Need to Know

Indexes - What You Need to Know Indexes - What You Need to Know http://www.percona.com/training/ 2011-2017 Percona, Inc. 1 / 53 Indexes - Need to Know QUERY PLANNING 2011-2017 Percona, Inc. 2 / 53 About This Chapter The number one goal

More information

CSED421 Database Systems Lab. Index

CSED421 Database Systems Lab. Index CSED421 Database Systems Lab Index Index of Index What is an index? When to Create an Index or Not? Index Syntax UNIQUE Index / Indexing Prefixes / Multiple-column index Confirming indexes Index types

More information

Switching to Innodb from MyISAM. Matt Yonkovit Percona

Switching to Innodb from MyISAM. Matt Yonkovit Percona Switching to Innodb from MyISAM Matt Yonkovit Percona -2- DIAMOND SPONSORSHIPS THANK YOU TO OUR DIAMOND SPONSORS www.percona.com -3- Who We Are Who I am Matt Yonkovit Principal Architect Veteran of MySQL/SUN/Percona

More information

MySQL Performance Tuning 101

MySQL Performance Tuning 101 MySQL Performance Tuning 101 Ligaya Turmelle MySQL Support Engineer ligaya@mysql.com 1 1 MySQL world's most popular open source database software a key part of LAMP (Linux, Apache, MySQL, PHP / Perl /

More information

Lecture 19 Query Processing Part 1

Lecture 19 Query Processing Part 1 CMSC 461, Database Management Systems Spring 2018 Lecture 19 Query Processing Part 1 These slides are based on Database System Concepts 6 th edition book (whereas some quotes and figures are used from

More information

MySQL for Developers. Duration: 5 Days

MySQL for Developers. Duration: 5 Days Oracle University Contact Us: 0800 891 6502 MySQL for Developers Duration: 5 Days What you will learn This MySQL for Developers training teaches developers how to develop console and web applications using

More information

MONITORING 101: POSTGRESQL JASON YEE, DATADOG

MONITORING 101: POSTGRESQL JASON YEE, DATADOG MONITORING 101: POSTGRESQL JASON YEE, DATADOG @gitbisect @gitbisect Technical Writer/Evangelist Docs & Talks Travel Hacker & Whiskey Hunter @datadoghq SaaS-based monitoring Trillions of data points per

More information

Oracle Database 12c Performance Management and Tuning

Oracle Database 12c Performance Management and Tuning Course Code: OC12CPMT Vendor: Oracle Course Overview Duration: 5 RRP: POA Oracle Database 12c Performance Management and Tuning Overview In the Oracle Database 12c: Performance Management and Tuning course,

More information

MySQL Group Replication. Bogdan Kecman MySQL Principal Technical Engineer

MySQL Group Replication. Bogdan Kecman MySQL Principal Technical Engineer MySQL Group Replication Bogdan Kecman MySQL Principal Technical Engineer Bogdan.Kecman@oracle.com 1 Safe Harbor Statement The following is intended to outline our general product direction. It is intended

More information

MySQL for Developers. Duration: 5 Days

MySQL for Developers. Duration: 5 Days Oracle University Contact Us: Local: 0845 777 7 711 Intl: +44 845 777 7 711 MySQL for Developers Duration: 5 Days What you will learn This MySQL for Developers training teaches developers how to develop

More information

MySQL for Developers Ed 3

MySQL for Developers Ed 3 Oracle University Contact Us: 0845 777 7711 MySQL for Developers Ed 3 Duration: 5 Days What you will learn This MySQL for Developers training teaches developers how to plan, design and implement applications

More information

Sql Server 2008 Query Table Schema Name In

Sql Server 2008 Query Table Schema Name In Sql Server 2008 Query Table Schema Name In Stored Procedures How to get the Stored Procedure's returnd table's structure in SQl Server SELECT p.name, OBJECT_NAME(OBject_ID) 'ProductionLog', p.parameter_id.

More information

Query Optimization Percona, Inc. 1 / 74

Query Optimization Percona, Inc. 1 / 74 Query Optimization http://www.percona.com/training/ 2011-2017 Percona, Inc. 1 / 74 Table of Contents 1. Query Planning 3. Composite Indexes 2. Explaining the EXPLAIN 4. Kitchen Sink 2011-2017 Percona,

More information

Optimizing Queries with EXPLAIN

Optimizing Queries with EXPLAIN Optimizing Queries with EXPLAIN Sheeri Cabral Senior Database Administrator Twitter: @sheeri What is EXPLAIN? SQL Extension Just put it at the beginning of your statement Can also use DESC or DESCRIBE

More information

SQL Gone Wild: Taming Bad SQL the Easy Way (or the Hard Way) Sergey Koltakov Product Manager, Database Manageability

SQL Gone Wild: Taming Bad SQL the Easy Way (or the Hard Way) Sergey Koltakov Product Manager, Database Manageability SQL Gone Wild: Taming Bad SQL the Easy Way (or the Hard Way) Sergey Koltakov Product Manager, Database Manageability Oracle Enterprise Manager Top-Down, Integrated Application Management Complete, Open,

More information

Database Security: Transactions, Access Control, and SQL Injection

Database Security: Transactions, Access Control, and SQL Injection .. Cal Poly Spring 2013 CPE/CSC 365 Introduction to Database Systems Eriq Augustine.. Transactions Database Security: Transactions, Access Control, and SQL Injection A transaction is a sequence of SQL

More information

Testing and Verifying your MySQL Backup Strategy

Testing and Verifying your MySQL Backup Strategy About the Author Ronald BRADFORD Testing and Verifying your MySQL Backup Strategy Ronald Bradford http://ronaldbradford.com @RonaldBradford 16 years with MySQL / 26 years with RDBMS Senior Consultant at

More information

Introduction to troubleshooting Basic techniques. Sveta Smirnova Principal Support Engineer March, 10, 2016

Introduction to troubleshooting Basic techniques. Sveta Smirnova Principal Support Engineer March, 10, 2016 Introduction to troubleshooting Basic techniques Sveta Smirnova Principal Support Engineer March, 10, 2016 Table of Contents Introduction How to find problematic query Solving issues Syntax errors Logic

More information