status.test

来自「视频监控网络部分的协议ddns,的模块的实现代码,请大家大胆指正.」· TEST 代码 · 共 175 行

TEST
175
字号
# embedded server causes different stat-- source include/not_embedded.inc# PS causes different statistics--disable_ps_protocolconnect (con1,localhost,root,,);connect (con2,localhost,root,,);flush status;show status like 'Table_lock%';connection con1;SET SQL_LOG_BIN=0;--disable_warningsdrop table if exists t1;--enable_warningscreate table t1(n int) engine=myisam;insert into t1 values(1);connection con2;lock tables t1 read;unlock tables;lock tables t1 read;connection con1;--sendupdate t1 set n = 3;connection con2;sleep 1;unlock tables;connection con1;reap;show status like 'Table_lock%';drop table t1;disconnect con2;disconnect con1;connection default;# End of 4.1 tests## last_query_cost#select 1;show status like 'last_query_cost';## Test for Bug #15933 max_used_connections is wrong after FLUSH STATUS# if connections are cached### The first suggested fix from the bug report was chosen# (see http://bugs.mysql.com/bug.php?id=15933):##   a) On flushing the status, set max_used_connections to#   threads_connected, not to 0.##   b) Check if it is necessary to increment max_used_connections when#   taking a thread from the cache as well as when creating new threads## Wait for at most $disconnect_timeout seconds for disconnects to finish.let $disconnect_timeout = 10;# Wait for any previous disconnects to finish.FLUSH STATUS;--disable_query_log--disable_result_logeval SET @wait_left = $disconnect_timeout;let $max_used_connections = `SHOW STATUS LIKE 'max_used_connections'`;eval SET @max_used_connections = SUBSTRING('$max_used_connections', 21)+0;let $wait_more = `SELECT @max_used_connections != 1 && @wait_left > 0`;while ($wait_more){  sleep 1;  FLUSH STATUS;  SET @wait_left = @wait_left - 1;  let $max_used_connections = `SHOW STATUS LIKE 'max_used_connections'`;  eval SET @max_used_connections = SUBSTRING('$max_used_connections', 21)+0;  let $wait_more = `SELECT @max_used_connections != 1 && @wait_left > 0`;}--enable_query_log--enable_result_log# Prerequisite.SHOW STATUS LIKE 'max_used_connections';# Save original setting.SET @save_thread_cache_size=@@thread_cache_size;SET GLOBAL thread_cache_size=3;connect (con1,localhost,root,,);connect (con2,localhost,root,,);connection con1;disconnect con2;# Check that max_used_connections still reflects maximum value.SHOW STATUS LIKE 'max_used_connections';# Check that after flush max_used_connections equals to current number# of connections.  First wait for previous disconnect to finish.FLUSH STATUS;--disable_query_log--disable_result_logeval SET @wait_left = $disconnect_timeout;let $max_used_connections = `SHOW STATUS LIKE 'max_used_connections'`;eval SET @max_used_connections = SUBSTRING('$max_used_connections', 21)+0;let $wait_more = `SELECT @max_used_connections != 2 && @wait_left > 0`;while ($wait_more){  sleep 1;  FLUSH STATUS;  SET @wait_left = @wait_left - 1;  let $max_used_connections = `SHOW STATUS LIKE 'max_used_connections'`;  eval SET @max_used_connections = SUBSTRING('$max_used_connections', 21)+0;  let $wait_more = `SELECT @max_used_connections != 2 && @wait_left > 0`;}--enable_query_log--enable_result_log# Check that we don't count disconnected thread any longer.SHOW STATUS LIKE 'max_used_connections';# Check that max_used_connections is updated when cached thread is# reused...connect (con2,localhost,root,,);SHOW STATUS LIKE 'max_used_connections';# ...and when new thread is created.connect (con3,localhost,root,,);SHOW STATUS LIKE 'max_used_connections';# Restore original setting.connection default;SET GLOBAL thread_cache_size=@save_thread_cache_size;disconnect con3;disconnect con2;disconnect con1;## Bug #30377: EXPLAIN loses last_query_cost when used with UNION#CREATE TABLE t1 ( a INT );INSERT INTO t1 VALUES (1), (2);SELECT a FROM t1 LIMIT 1;SHOW SESSION STATUS LIKE 'Last_query_cost';EXPLAIN SELECT a FROM t1;SHOW SESSION STATUS LIKE 'Last_query_cost';SELECT a FROM t1 UNION SELECT a FROM t1 ORDER BY a;SHOW SESSION STATUS LIKE 'Last_query_cost';EXPLAIN SELECT a FROM t1 UNION SELECT a FROM t1 ORDER BY a;SHOW SESSION STATUS LIKE 'Last_query_cost';SELECT a IN (SELECT a FROM t1) FROM t1 LIMIT 1;SHOW SESSION STATUS LIKE 'Last_query_cost';SELECT (SELECT a FROM t1 LIMIT 1) x FROM t1 LIMIT 1;SHOW SESSION STATUS LIKE 'Last_query_cost';SELECT * FROM t1 a, t1 b LIMIT 1;SHOW SESSION STATUS LIKE 'Last_query_cost';DROP TABLE t1;# End of 5.0 tests

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?