SOFTELメモ Developer's blog

MySQL error 1449: The user specified as a definer does not exist

2018/02/09 linux, php

問題

MySQLのダンプをリストアしていたら、以下のようなエラーが発生しました。

Error 1449 The user specified as a definer (‘username’@’hostname’) does not exist

mysql

答え

MySQLのバージョンによるかもしれないが、ビューやストアドを含むデータベースのダンプをリストアするとき、DEFINER でエラーになることがある(かもしれない)。

/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`username`@`hostname` SQL SECURITY DEFINER */
/*!50001 VIEW `v_hogehoge` AS select ~略~

MySQLのユーザーが入っているmysqlデータベースのダンプをとって、先にリストアして、ユーザーがすべて存在する状態を作ってからダンプをリストアすると、エラーなくすべて取り込めると思います。

関連するメモ

コメント