スロークエリを書き込み、遅いクエリロギングをテストしますか?
質問
遅いクエリロガーをテストできるように、2秒以上かかる簡単なクエリはありますか?
私は一般的な再帰的または反復的な声明のようなものを探しています。
解決
簡単なクエリは次のとおりです。
SELECT SLEEP(2);
あなたはそれを反復したいですか?
DELIMITER $$
DROP FUNCTION IF EXISTS `iterateSleep` $$
CREATE FUNCTION `iterateSleep` (iterations INT)
RETURNS INT DETERMINISTIC
BEGIN
DECLARE remainder INT;
SET remainder = iterations;
read_loop: LOOP
IF remainder=0 THEN
LEAVE read_loop;
END IF;
SELECT SLEEP(2) INTO @test;
SET remainder = remainder - 1;
END LOOP;
RETURN iterations;
END $$
DELIMITER ;
-- TO TEST IT OUT
mysql> SELECT iterateSleep(2);
+-----------------+
| iterateSleep(2) |
+-----------------+
| 2 |
+-----------------+
1 row in set (4.01 sec)
または、slow_query_logをテストしたい場合は、変更を変更します。long_query_time'まで(すべてのクエリを記録するため):
SET long_query_time=0;
他のヒント
これがかなり恐ろしいクエリです。非アンジースタイルの結合を使用したデカルト製品です。
use master
select * from sys.objects, sys.indexes
所属していません dba.stackexchange