遠隔地のサーバーからデータベースのバックアップを作成しましたが、そのバックアップをインポートしようとしたときに、ローカル サーバーで問題が発生しました。次の行でエラーが発生します。
CREATE ALGORITHM=UNDEFINED DEFINER=root@% SQL SECURITY DEFINER VIEW tematics_field AS select....
.
どちらのサーバーにも mysql 5.5.2x があります。そして、ユーザーはその2つのサーバーで異なります。
遠隔地のサーバーからデータベースのバックアップを作成しましたが、そのバックアップをインポートしようとしたときに、ローカル サーバーで問題が発生しました。次の行でエラーが発生します。
CREATE ALGORITHM=UNDEFINED DEFINER=root@% SQL SECURITY DEFINER VIEW tematics_field AS select....
.
どちらのサーバーにも mysql 5.5.2x があります。そして、ユーザーはその2つのサーバーで異なります。
私はしようとします:
CREATE VIEW tematics_field AS select....
そして、すべてが完璧に機能し、インポートはうまくいきます。
ホスト名 (この場合はワイルドカード) を一重引用符で囲む必要があります。
CREATE ALGORITHM=UNDEFINED DEFINER=root@'%' SQL SECURITY DEFINER VIEW tematics_field AS
select.....
私は同様のことに直面しました。代わりに :
CREATE ALGORITHM=UNDEFINED DEFINER=`cccts_org`@`%` SQL SECURITY DEFINER VIEW
DEFINER を CURRENT_USER() に置き換えたところ、うまくいきました。
CREATE ALGORITHM=UNDEFINED DEFINER=CURRENT_USER() SQL SECURITY DEFINER VIEW
それが次のインポートで使用される場合、移植可能であり、古い資格情報につまずいてはなりません。