মাইএসকিউএল টেবিল তৈরির প্রক্রিয়া অত্যন্ত ধীর


10

আমার মাইএসকিউএল ডাটাবেসের একটিতে একটি সাধারণ টেবিল তৈরি করতে চিরকাল লাগে:

mysql> CREATE TABLE blah (id BIGINT UNSIGNED NOT NULL PRIMARY KEY);
Query OK, 0 rows affected (16.58 sec)

মেশিনটি বেশ অলস:

01:21:26 PM       CPU     %user     %nice   %system   %iowait    %steal     %idle
01:21:27 PM       all      0.50      0.00      0.21      0.00      0.00     99.29

কোন ধারণা কীভাবে এটি তদন্ত করবেন?

সম্পাদনা : ডিটিস্টের পরামর্শ অনুসরণ করে, এটিই এক্সিকিউশন প্রোফাইল:

mysql> SHOW PROFILE FOR QUERY 1;
+----------------------+----------+
| Status               | Duration |
+----------------------+----------+
| starting             | 0.000044 |
| checking permissions | 0.000024 |
| creating table       | 8.668129 |
| After create         | 0.000014 |
| query end            | 0.000005 |
| freeing items        | 0.000028 |
| logging slow query   | 0.000004 |
| logging slow query   | 0.000206 |
| cleaning up          | 0.000006 |
+----------------------+----------+

@ ফিল একটি 16 গিগাবাইট মেমরি সহ একটি শারীরিক মেশিন।
— আদম মতান

@ ফিল এটি অনেক মাইএসকিউএল অপারেশন সহ একটি প্রোডাকশন সার্ভার, সুতরাং ডিস্কটি নিষ্ক্রিয় হওয়া উচিত নয়।
— আদম মতান

উত্তর:


10

এতক্ষণ কী লাগে সে সম্পর্কে ধারণা পেতে আমি প্রোফাইলিং চালু করব । মাইএসকিএল এর সিএলআই ব্যবহার করে একটি উদাহরণ:

SET profiling = 1;
CREATE TABLE blah (id BIGINT UNSIGNED NOT NULL PRIMARY KEY);
SET profiling = 1;

আপনার এই জাতীয় প্রতিক্রিয়া পাওয়া উচিত:

mysql> SHOW PROFILES;
| Query_ID | Duration   | Query |
+----------+------------+-------------------------------------------------------------+
|        1 | 0.00913800 | CREATE TABLE blah (id BIGINT UNSIGNED NOT NULL PRIMARY KEY) |
+----------+------------+-------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SHOW PROFILE FOR QUERY 1;
+----------------------+----------+
| Status               | Duration |
+----------------------+----------+
| starting             | 0.000071 |
| checking permissions | 0.000007 |
| Opening tables       | 0.001698 |
| System lock          | 0.000043 |
| creating table       | 0.007260 |
| After create         | 0.000004 |
| query end            | 0.000004 |
| closing tables       | 0.000015 |
| freeing items        | 0.000031 |
| logging slow query   | 0.000002 |
| cleaning up          | 0.000003 |
+----------------------+----------+
11 rows in set (0.00 sec)

1
@ অ্যাডাম্যাটান নিশ্চিত নন যে আপনি প্রোফাইলিং ডকুমেন্টেশন পড়েছেন, তবে ক্যোয়ারীর প্রোফাইল প্রদর্শন করার জন্য অন্যান্য পতাকা রয়েছে CPU, BLOCK IOযা 'টেবিল তৈরির' পর্যায়ে আপনাকে সহায়তা করতে পারে।
— ডেরেক ডউনি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.