MySQL-5.6.34通過show global status like 來查看sql語句的執行情
阿新 • • 發佈:2018-01-19
cal erro optimize col resign relay trigge log sql語句 需求
或許要從程序入手,尋找問題原因和解決辦法。
老大:zain啊,咱們的數據庫今天有多少查詢語句啊?
我 :額,稍等,我看看啊; 心想,{尼瑪,我怎麽知道有多少select語句啊}
那麽問題來了,如何查看MySQL數據庫的生產服務器有多少的查詢語句那?這裏使用到了show global status like 命令來查詢,同時寫了一個簡單的腳本,每天定時00.00執行,然後發送到管理員郵箱來實現sql語句的執行狀態記錄;
通過 show global status;
可以列出MySQL服務器運行sql語句的各種狀態值,我個人較喜歡的用法是show global status like ‘查詢值%‘; 來查詢某個值,下面就說一下我們線上都做了那些值得記錄,
註意哦:要在並發量不大的情況下操作,在slave服務器上執行查詢語句,如果在線上並發量很大的情況下操作,出現問題自己負責,這裏已經做了說明,下面就開開始實操演練;mysql> show global status; #此次在內部測試服務器操作 +-----------------------------------------------+---------------------+ | Variable_name | Value | +-----------------------------------------------+---------------------+ | Aborted_clients | 0 | | Aborted_connects | 0 | | Binlog_cache_disk_use | 0 | | Binlog_cache_use | 1852 | | Binlog_stmt_cache_disk_use | 0 | | Binlog_stmt_cache_use | 2025 | | Bytes_received | 36011812 | | Bytes_sent | 331183221 | | Com_admin_commands | 0 | | Com_assign_to_keycache | 0 | | Com_alter_db | 0 | | Com_alter_db_upgrade | 0 | | Com_alter_event | 0 | | Com_alter_function | 0 | | Com_alter_procedure | 0 | | Com_alter_server | 0 | | Com_alter_table | 0 | | Com_alter_tablespace | 0 | | Com_alter_user | 0 | | Com_analyze | 0 | | Com_begin | 1854 | | Com_binlog | 0 | | Com_call_procedure | 0 | | Com_change_db | 32944 | | Com_change_master | 0 | | Com_check | 0 | | Com_checksum | 0 | | Com_commit | 1852 | | Com_create_db | 1 | | Com_create_event | 0 | | Com_create_function | 0 | | Com_create_index | 0 | | Com_create_procedure | 0 | | Com_create_server | 0 | | Com_create_table | 2009 | | Com_create_trigger | 0 | | Com_create_udf | 0 | | Com_create_user | 0 | | Com_create_view | 0 | | Com_dealloc_sql | 0 | | Com_delete | 18 | | Com_delete_multi | 0 | | Com_do | 0 | | Com_drop_db | 1 | | Com_drop_event | 0 | | Com_drop_function | 0 | | Com_drop_index | 0 | | Com_drop_procedure | 0 | | Com_drop_server | 0 | | Com_drop_table | 14 | | Com_drop_trigger | 0 | | Com_drop_user | 0 | | Com_drop_view | 0 | | Com_empty_query | 0 | | Com_execute_sql | 0 | | Com_flush | 6 | | Com_get_diagnostics | 0 | | Com_grant | 0 | | Com_ha_close | 0 | | Com_ha_open | 0 | | Com_ha_read | 0 | | Com_help | 0 | | Com_insert | 1825 | | Com_insert_select | 0 | | Com_install_plugin | 0 | | Com_kill | 0 | | Com_load | 0 | | Com_lock_tables | 0 | | Com_optimize | 0 | | Com_preload_keys | 0 | | Com_prepare_sql | 0 | | Com_purge | 0 | | Com_purge_before_date | 0 | | Com_release_savepoint | 44 | | Com_rename_table | 0 | | Com_rename_user | 0 | | Com_repair | 0 | | Com_replace | 0 | | Com_replace_select | 0 | | Com_reset | 0 | | Com_resignal | 0 | | Com_revoke | 0 | | Com_revoke_all | 0 | | Com_rollback | 0 | | Com_rollback_to_savepoint | 32812 | | Com_savepoint | 44 | | Com_select | 65692 | | Com_set_option | 229794 | | Com_signal | 0 | | Com_show_binlog_events | 0 | | Com_show_binlogs | 0 | | Com_show_charsets | 0 | | Com_show_collations | 0 | | Com_show_create_db | 44 | | Com_show_create_event | 0 | | Com_show_create_func | 0 | | Com_show_create_proc | 0 | | Com_show_create_table | 65628 | | Com_show_create_trigger | 0 | | Com_show_databases | 4 | | Com_show_engine_logs | 0 | | Com_show_engine_mutex | 0 | | Com_show_engine_status | 0 | | Com_show_events | 0 | | Com_show_errors | 0 | | Com_show_fields | 32816 | | Com_show_function_code | 0 | | Com_show_function_status | 44 | | Com_show_grants | 0 | | Com_show_keys | 0 | | Com_show_master_status | 2 | | Com_show_open_tables | 0 | | Com_show_plugins | 0 | | Com_show_privileges | 0 | | Com_show_procedure_code | 0 | | Com_show_procedure_status | 44 | | Com_show_processlist | 0 | | Com_show_profile | 0 | | Com_show_profiles | 0 | | Com_show_relaylog_events | 0 | | Com_show_slave_hosts | 0 | | Com_show_slave_status | 1 | | Com_show_status | 19 | | Com_show_storage_engines | 0 | | Com_show_table_status | 32816 | | Com_show_tables | 88 | | Com_show_triggers | 32812 | | Com_show_variables | 4 | | Com_show_warnings | 0 | | Com_slave_start | 0 | | Com_slave_stop | 0 | | Com_stmt_close | 0 | | Com_stmt_execute | 0 | | Com_stmt_fetch | 0 | | Com_stmt_prepare | 0 | | Com_stmt_reprepare | 0 | | Com_stmt_reset | 0 | | Com_stmt_send_long_data | 0 | | Com_truncate | 0 | | Com_uninstall_plugin | 0 | | Com_unlock_tables | 2 | | Com_update | 9 | | Com_update_multi | 0 | | Com_xa_commit | 0 | | Com_xa_end | 0 | | Com_xa_prepare | 0 | | Com_xa_recover | 0 | | Com_xa_rollback | 0 | | Com_xa_start | 0 | | Compression | OFF | | Connection_errors_accept | 0 | | Connection_errors_internal | 0 | | Connection_errors_max_connections | 0 | | Connection_errors_peer_address | 0 | | Connection_errors_select | 0 | | Connection_errors_tcpwrap | 0 | | Connections | 25 | | Created_tmp_disk_tables | 65718 | | Created_tmp_files | 6 | | Created_tmp_tables | 98673 | | Delayed_errors | 0 | | Delayed_insert_threads | 0 | | Delayed_writes | 0 | | Flush_commands | 5 | | Handler_commit | 40181 | | Handler_delete | 18 | | Handler_discover | 0 | | Handler_external_lock | 69652 | | Handler_mrr_init | 0 | | Handler_prepare | 7408 | | Handler_read_first | 32892 | | Handler_read_key | 32800 | | Handler_read_last | 0 | | Handler_read_next | 2446 | | Handler_read_prev | 0 | | Handler_read_rnd | 2 | | Handler_read_rnd_next | 1625151 | | Handler_rollback | 0 | | Handler_savepoint | 44 | | Handler_savepoint_rollback | 32812 | | Handler_update | 9 | | Handler_write | 581378 | | Innodb_buffer_pool_dump_status | not started | | Innodb_buffer_pool_load_status | not started | | Innodb_buffer_pool_pages_data | 2938 | | Innodb_buffer_pool_bytes_data | 48136192 | | Innodb_buffer_pool_pages_dirty | 0 | | Innodb_buffer_pool_bytes_dirty | 0 | | Innodb_buffer_pool_pages_flushed | 13248 | | Innodb_buffer_pool_pages_free | 1024 | | Innodb_buffer_pool_pages_misc | 134 | | Innodb_buffer_pool_pages_total | 4096 | | Innodb_buffer_pool_read_ahead_rnd | 0 | | Innodb_buffer_pool_read_ahead | 2995 | | Innodb_buffer_pool_read_ahead_evicted | 0 | | Innodb_buffer_pool_read_requests | 3195417 | | Innodb_buffer_pool_reads | 117058 | | Innodb_buffer_pool_wait_free | 0 | | Innodb_buffer_pool_write_requests | 659438 | | Innodb_data_fsyncs | 13372 | | Innodb_data_pending_fsyncs | 0 | | Innodb_data_pending_reads | 0 | | Innodb_data_pending_writes | 0 | | Innodb_data_read | 1969115136 | | Innodb_data_reads | 152955 | | Innodb_data_writes | 40775 | | Innodb_data_written | 484839424 | | Innodb_dblwr_pages_written | 13248 | | Innodb_dblwr_writes | 225 | | Innodb_have_atomic_builtins | ON | | Innodb_log_waits | 0 | | Innodb_log_write_requests | 84221 | | Innodb_log_writes | 20817 | | Innodb_os_log_fsyncs | 4488 | | Innodb_os_log_pending_fsyncs | 0 | | Innodb_os_log_pending_writes | 0 | | Innodb_os_log_written | 50665472 | | Innodb_page_size | 16384 | | Innodb_pages_created | 9189 | | Innodb_pages_read | 120052 | | Innodb_pages_written | 13248 | | Innodb_row_lock_current_waits | 0 | | Innodb_row_lock_time | 0 | | Innodb_row_lock_time_avg | 0 | | Innodb_row_lock_time_max | 0 | | Innodb_row_lock_waits | 0 | | Innodb_rows_deleted | 18 | | Innodb_rows_inserted | 109509 | | Innodb_rows_read | 1019289 | | Innodb_rows_updated | 9 | | Innodb_num_open_files | 500 | | Innodb_truncated_status_writes | 0 | | Innodb_available_undo_logs | 128 | | Key_blocks_not_flushed | 0 | | Key_blocks_unused | 3349 | | Key_blocks_used | 20 | | Key_read_requests | 154 | | Key_reads | 40 | | Key_write_requests | 0 | | Key_writes | 0 | | Last_query_cost | 0.000000 | | Last_query_partial_plans | 0 | | Max_used_connections | 2 | | Not_flushed_delayed_rows | 0 | | Open_files | 48 | | Open_streams | 0 | | Open_table_definitions | 1024 | | Open_tables | 1024 | | Opened_files | 338824 | | Opened_table_definitions | 69472 | | Opened_tables | 67459 | | Performance_schema_accounts_lost | 0 | | Performance_schema_cond_classes_lost | 0 | | Performance_schema_cond_instances_lost | 0 | | Performance_schema_digest_lost | 400946 | | Performance_schema_file_classes_lost | 0 | | Performance_schema_file_handles_lost | 0 | | Performance_schema_file_instances_lost | 0 | | Performance_schema_hosts_lost | 0 | | Performance_schema_locker_lost | 0 | | Performance_schema_mutex_classes_lost | 0 | | Performance_schema_mutex_instances_lost | 0 | | Performance_schema_rwlock_classes_lost | 0 | | Performance_schema_rwlock_instances_lost | 0 | | Performance_schema_session_connect_attrs_lost | 0 | | Performance_schema_socket_classes_lost | 0 | | Performance_schema_socket_instances_lost | 0 | | Performance_schema_stage_classes_lost | 0 | | Performance_schema_statement_classes_lost | 0 | | Performance_schema_table_handles_lost | 0 | | Performance_schema_table_instances_lost | 19582 | | Performance_schema_thread_classes_lost | 0 | | Performance_schema_thread_instances_lost | 0 | | Performance_schema_users_lost | 0 | | Prepared_stmt_count | 0 | | Qcache_free_blocks | 1 | | Qcache_free_memory | 8371208 | | Qcache_hits | 0 | | Qcache_inserts | 0 | | Qcache_lowmem_prunes | 0 | | Qcache_not_cached | 65692 | | Qcache_queries_in_cache | 0 | | Qcache_total_blocks | 1 | | Queries | 531413 | | Questions | 525683 | | Select_full_join | 0 | | Select_full_range_join | 0 | | Select_range | 0 | | Select_range_check | 0 | | Select_scan | 131435 | | Slave_heartbeat_period | 1800.000 | | Slave_last_heartbeat | 2018-01-19 16:04:15 | | Slave_open_temp_tables | 0 | | Slave_received_heartbeats | 104 | | Slave_retried_transactions | 0 | | Slave_running | ON | | Slow_launch_threads | 0 | | Slow_queries | 32788 | | Sort_merge_passes | 0 | | Sort_range | 0 | | Sort_rows | 0 | | Sort_scan | 4 | | Ssl_accept_renegotiates | 0 | | Ssl_accepts | 0 | | Ssl_callback_cache_hits | 0 | | Ssl_cipher | | | Ssl_cipher_list | | | Ssl_client_connects | 0 | | Ssl_connect_renegotiates | 0 | | Ssl_ctx_verify_depth | 0 | | Ssl_ctx_verify_mode | 0 | | Ssl_default_timeout | 0 | | Ssl_finished_accepts | 0 | | Ssl_finished_connects | 0 | | Ssl_server_not_after | | | Ssl_server_not_before | | | Ssl_session_cache_hits | 0 | | Ssl_session_cache_misses | 0 | | Ssl_session_cache_mode | NONE | | Ssl_session_cache_overflows | 0 | | Ssl_session_cache_size | 0 | | Ssl_session_cache_timeouts | 0 | | Ssl_sessions_reused | 0 | | Ssl_used_session_cache_entries | 0 | | Ssl_verify_depth | 0 | | Ssl_verify_mode | 0 | | Ssl_version | | | Table_locks_immediate | 34826 | | Table_locks_waited | 0 | | Table_open_cache_hits | 99275 | | Table_open_cache_misses | 67459 | | Table_open_cache_overflows | 64385 | | Tc_log_max_pages_used | 0 | | Tc_log_page_size | 0 | | Tc_log_page_waits | 0 | | Threads_cached | 1 | | Threads_connected | 1 | | Threads_created | 2 | | Threads_running | 1 | | Uptime | 196795 | | Uptime_since_flush_status | 196795 | +-----------------------------------------------+---------------------+
那麽那些是我麽需要註意的那?
Com_insert: 執行insert的操作次數,插入一次,累加一次,對於批量插入,也只能算一次
Com_delete: 執行delete的操作次數
Com_update: 執行update的操作次數
Com_select: 執行select的操作次數,查詢一次,累加一次
Slow:為滿查詢次數
除了增刪改查外,還包括存儲過程,事務提交,回滾,表鎖等情況的分析。
從對應的value值,可以知道每種語句執行的次數。
通過Com_commit,Com_rollback參數能分析出提交和回滾的狀態,如果發現回滾
次數太多,這個時候一般是我們的程序編寫有問題,導致程序操作數據庫時,總是出現事務的回滾,
命令行通過命令來查看select語句的次數
# mysql -uroot -p -e "show global status like ‘Com_select%‘;"
+--------------------+--------+
| Variable_name | Value |
+-------------------+---------+
| Com_select | 65693 |
+------------------+----------+
到這裏,就可以去交差了;
希望對大家有幫助!!!
MySQL-5.6.34通過show global status like 來查看sql語句的執行情