1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【MySQL】MySQLのパスワードハッシュ作成時(SELECT PASSWORD)のエラー対処(ERROR 1064 (42000): You have an error in your SQL syntax)

Last updated at Posted at 2022-05-14

はじめに

Dockerの上に作成したMySQLのコンテナの中でselect passwordを実行したところ、Syntaxエラーが表示されて処理ができませんでした。
今回は、こちらの対処方法について書きます。

今回は、パスワードハッシュを取得するためだけにMySQLのコンテナを作成していることが前提になります。
(パスワードハッシュが取得できたらMySQLのコンテナは削除)

環境

  • MacBook Pro 2020年モデルを使用します。(macOS Monterey バージョン12.3.1)
    スクリーンショット 2022-04-12 16.47.38.png

  • Dockerのバージョン(20.10.0)

% docker -v
Docker version 20.10.0, build 7287ab3
%
  • MySQLのバージョン(8.0.29)
mysql> SELECT PASSWORD('mypass');
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '('mypass')' at line 1
mysql> select @@version;
+-----------+
| @@version |
+-----------+
| 8.0.29    |
+-----------+
1 row in set (0.00 sec)

mysql>

エラー内容

パスワードハッシュを作成しようとした際に以下エラーが発生。

mysql> select password('98mfa9af;iafj');
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '('98mfa9af;iafj')' at line 1
mysql>

対処

MySQLのコンテナを古いバージョンで作成し直してコマンドを再実行。

  • バージョン(5.7.38)
mysql> select @@version;
+-----------+
| @@version |
+-----------+
| 5.7.38    |
+-----------+
1 row in set (0.00 sec)

mysql>
  • コマンド再実行
mysql> select password('mypass')
    -> ;
+-------------------------------------------+
| password('mypass')                        |
+-------------------------------------------+
| *6C8989366EAF75BB670AD8EA7A7FC1176A95CEF4 |
+-------------------------------------------+
1 row in set, 1 warning (0.00 sec)

mysql>

補足:Dockerコンテナの再作成について

以下の記事をご覧下さい。

原因

password関数がMySQLのver5.6.7時点で廃止されたため。

参考記事

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?