ধীর ক্যোয়ারী লগিং পরীক্ষা করতে একটি ধীর ক্যোরি লিখুন?


14

এমন কোনও সাধারণ ক্যোয়ারী রয়েছে যা> 2 সেকেন্ড নেবে যাতে আমি ধীর ক্যোয়ারি লগারের পরীক্ষা করতে পারি?

আমি জেনেরিক পুনরাবৃত্ত বা পুনরাবৃত্ত বিবৃতি মত কিছু খুঁজছি।

উত্তর:


22

একটি সহজ জিজ্ঞাসা হবে:

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)

বিকল্পভাবে যদি আপনি কেবল আপনার ধীর_ ক্যুরি_লগটি পরীক্ষা করতে চান, তবে ' লং_কোয়ারি_টাইম ' 0 তে 0 (সমস্ত প্রশ্নের লগ ইন করতে) পরিবর্তন করুন:

SET long_query_time=0;

সাইডেনোট হিসাবে এসকিউএল সার্ভারের সমতুল্যWAITFOR DELAY '00:00:02'
বেন ব্রোকা

সিলেক্ট স্লিপ (২) হ'ল আমি যে উত্তরটি খুঁজছিলাম; আমি দীর্ঘ_ প্রশ্ন_আপনি নিজে সেট করতে পারি না।
ডেভিড লেবাউর

সংক্ষিপ্ত এবং মিষ্টি সবসময় ঝরঝরে। দুর্দান্ত স্টোরড পদ্ধতিও। +1 !!!
RolandoMySQLDBA

SELECT sleep(2)ধীর লগে কিছু যোগ করা হয়নি - কিন্তু SET GLOBAL long_query_time=0আমাকে পরীক্ষা দ্রুত ইনপুট দিলেন। ধন্যবাদ।
জেস্পার গ্রান লরসেন

0

এখানে একটি দুর্দান্ত ভয়ঙ্কর জিজ্ঞাসা। এটি একটি কার্তেসিয়ান পণ্য, অ-আনসির শৈলীর যোগদান ব্যবহার করে।

use master
select * from sys.objects, sys.indexes

ঝরঝরে ... তবে আমি মনে করি না এটি মাইএসকিএল।
ডেরেক ডাউনি

উফ। দুঃখিত। আমি এটি মাইএসকিউএল এর জন্য লক্ষ্য করিনি।
ডেটাগোড
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.