MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLを再起動せずにMySQLの低速クエリログを有効にするにはどうすればよいですか?


SETステートメントを使用してMySQLの低速クエリログを有効にできます。

構文は次のとおりです。

SET GLOBAL slow_query_log = 'Value';

上記の構文では、値にON/OFFを入力できます。遅いクエリログを有効にするには、クエリを見てみましょう。

mysql> SET GLOBAL slow_query_log = 'ON';
Query OK, 0 rows affected (0.00 sec)

低速クエリがオンになっているかどうかを確認するには、次のクエリを実装します-

mysql> SHOW GLOBAL VARIABLES LIKE 'slow\_%';

これが出力です。

+---------------------+--------------------------+
| Variable_name       | Value                    |
+---------------------+--------------------------+
| slow_launch_time    | 2                        |
| slow_query_log      | ON                       |                     
| slow_query_log_file | DESKTOP-QN2RB3H-slow.log |
+---------------------+--------------------------+
3 rows in set (0.00 sec)

遅いクエリ時間を秒単位で設定しました。これは、クエリが指定された秒を超えると、遅いクエリのログファイルに記録されるためです。

秒を設定することもできます。これが秒を設定するためのクエリです。

mysql> SET GLOBAL long_query_time = 20;
Query OK, 0 rows affected (0.00 sec)

時刻が挿入されているかどうかを確認します。

mysql> SHOW GLOBAL VARIABLES LIKE 'long_query_time';

上記のクエリの出力は次のとおりです。

+-----------------+-----------+
| Variable_name   | Value     |
+-----------------+-----------+
| long_query_time | 20.000000 |
+-----------------+-----------+
1 row in set (0.00 sec)

上記のタスクを実行した後、ログをフラッシュする必要があります。

mysql> FLUSH LOGS;
Query OK, 0 rows affected (0.25 sec)

−my.cnfファイルを使用して永久に無効にすることができます。 slow_query_log=0に設定します。無効にします。


  1. MySQLにinnoDBをインストールまたは有効にするにはどうすればよいですか?

    MySQでinnoDBを有効にするには、 my.iniを回避する必要があります ファイル。ただし、MySQLバージョン8では、デフォルトのストレージエンジンはinnoDBです。 my.iniから同じことを確認してください ファイル- テーブル作成時に設定することもできます- mysql> create table DemoTable    (    StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,    StudentFirstName varchar(100), &

  2. MySQLクエリでORステートメントが多すぎるのを避けるにはどうすればよいですか?

    MySQL IN()を使用して、ORステートメントが多すぎないようにします。まずテーブルを作成しましょう- mysql> create table DemoTable (    Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,    Name varchar(40) ); Query OK, 0 rows affected (0.89 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable(Name) values('