この記事には広告を含む場合があります。
記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。
目次
warningの確認方法
MySQLをコマンドで打ち込んでいると、warningを見かけることがあります。
MySQLはerrorのときはエラー内容が表示されますが、warningのときは表示されません。warningの内容を確認する方法は無いのか!?ということで、MySQLにてwarningを確認する方法を確認してみましょう。
warningを確認するコマンド
MySQLのWARNINGを確認するときは、「SHOW WARNINGS」コマンドで行います。
SHOW WARNINGS;
直前に実行したSQLのWARNINGのみ確認が可能です。つまり別コマンドを実行すると「SHOW WARNINGS」で確認できる内容は上書きされます。
warningを確認したときのサンプル
サンプルとして、AWSのEC2環境にて、
OS:Ubuntu 16.0.4
DB:MySQL 5.7.16
の環境で動作確認を行ったときの内容を記載しています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
mysql> GRANT USAGE ON *.* TO 'hogehoge'@'localhost' WITH MAX_USER_CONNECTIONS 0; Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> SHOW WARNINGS; +---------+------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Level | Code | Message | +---------+------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Warning | 1287 | Using GRANT statement to modify existing user's properties other than privileges is deprecated and will be removed in future release. Use ALTER USER statement for this operation. | +---------+------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ mysql> SHOW WARNINGS\G *************************** 1. row *************************** Level: Warning Code: 1287 Message: Using GRANT statement to modify existing user's properties other than privileges is deprecated and will be removed in future release. Use ALTER USER statement for this operation. 1 row in set (0.00 sec) |
SQL実行時にwarningも表示させる方法
「SHOW WARNINGS」コマンドを何度も実行するのも大変なので、SQL 実行時にすぐに WARNING を表示する方法も一緒に紹介します。
MySQL にログインするときに
–show-warnings
のオプションを付与する方法です。
※phpmyadmin などのツールでは使用できませんので悪しからず(苦笑)。
SQL実行時にwarningを表示させたサンプル
1 2 3 4 5 6 |
root@hostname:# mysql -uroot -p --show-warnings (中略) mysql> GRANT USAGE ON *.* TO 'hogehoge'@'localhost' WITH MAX_USER_CONNECTIONS 0; Query OK, 0 rows affected, 1 warning (0.00 sec) Warning (Code 1287): Using GRANT statement to modify existing user's properties other than privileges is deprecated and will be removed in future release. Use ALTER USER statement for this operation. |
ウェブプログラミングについては下記の本も参考になるので、スキルアップにお役立てください。