mysqlのデータベースにスーパー権限を追加するには?

私はmysqlでクエリを実行しようとしています。

SET GLOBAL log_bin_trust_function_creators =1; 

エラーが発生しました。

SQLクエリ:
SET GLOBAL log_bin_trust_function_creators =1
MySQLは次のように言っています:

1227 - Access denied; You need the SUPER privilege for this operation

どのようにして任意のデータベースにSUPER権限を割り当てることができるのかを知りたいです。

ソリューション

ppmyadmin "を使ってスーパー権限を追加することができます。

PHPMYADMIN > privileges > Edit User > Administrator タブで SUPER をクリック > Go

コンソールから行う場合は、次のようにします。

 mysql> GRANT SUPER ON *.* TO user@'localhost' IDENTIFIED BY 'password';

上記のコードを実行した後、次のように終了します。

mysql> FLUSH PRIVILEGES;

SUPERは1つのデータベースだけに適用される権限ではなく、グローバルな権限なので、*.*で行う必要があります。

解説 (10)

特典はこちらでご覧いただけます!画像の説明をここに入力してください

次に、ユーザーを編集します。

解説 (2)

スーパーユーザを付与した後にphpmyadminが表示するクエリです。コンソールで誰かの助けになれば幸いです。

ON $.$ TO-> $=* は、2つの間にドットを入れても表示されません。

REVOKE ALL PRIVILEGES ON . FROM 'usr'@'localhost'; GRANT ALL PRIVILEGES ON . TO 'usr'@'localhost' REQUIRE NONE WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;

と、逆にグラントを削除したもの。

REVOKE ALL PRIVILEGES ON . FROM 'dos007'@'localhost'REVOKE GRANT OPTION ON . FROM 'dos007'@'localhost' GRANT ALL PRIVILEGES ON .. TO 'dos007'@'localhost'REQUIRE NONE WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0です。

vagrantで確認したところ、どのmysqlでも動作するはずです。

解説 (0)