首页 > 解决方案 > 我已经尝试过任何方法。无法授予超级特权我尝试设置 log_bin_trust_function_creators

问题描述

我试过了

mysql> SHOW GLOBAL VARIABLES LIKE 'log_bin_trust_function_creators';
+---------------------------------+-------+
| Variable_name                   | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | ON    |
+---------------------------------+-------+
1 row in set (0.00 sec)

你可以看到它设置得很好。然后它重新启动了 RDS。数据库已多次刷新。此外,还可以识别以下内容:

mysql> SELECT * FROM mysql.user WHERE User='new_root' and Host='%'\G
*************************** 1. row ***************************
                  Host: %
                  User: new_root
           Select_priv: Y
           Insert_priv: Y
           Update_priv: Y
           Delete_priv: Y
           Create_priv: Y
             Drop_priv: Y
           Reload_priv: Y
         Shutdown_priv: N
          Process_priv: Y
             File_priv: N
            Grant_priv: Y
       References_priv: Y
            Index_priv: Y
            Alter_priv: Y
          Show_db_priv: Y
            Super_priv: N
 Create_tmp_table_priv: Y
      Lock_tables_priv: Y
          Execute_priv: Y
       Repl_slave_priv: Y
      Repl_client_priv: Y
      Create_view_priv: Y
        Show_view_priv: Y
   Create_routine_priv: Y
    Alter_routine_priv: Y
      Create_user_priv: Y
            Event_priv: Y
          Trigger_priv: Y
Create_tablespace_priv: N
              ssl_type:
            ssl_cipher:
           x509_issuer:
          x509_subject:
         max_questions: 0
           max_updates: 0
       max_connections: 0
  max_user_connections: 0
                plugin: mysql_native_password
 authentication_string: *5EDA56336D7A85D9D6FC7EEBFE91E063ACD5A87E
      password_expired: N
 password_last_changed: 2020-03-12 06:25:00
     password_lifetime: NULL
        account_locked: N
1 row in set (0.00 sec)

mysql> GRANT ALL privileges ON *.* TO 'new_root'@'%' IDENTIFIED BY 'password';
ERROR 1045 (28000): Access denied for user 'new_root'@'%' (using password: YES)
mysql> UPDATE mysql.user SET Super_Priv='Y' WHERE user='new_root' AND host='%';
ERROR 1644 (45000): SUPER PRIVILEGE CANNOT BE GRANTED
mysql> SET GLOBAL time_zone = 'Asia/Seoul';
ERROR 1227 (42000): Access denied; you need (at least one of) the SUPER privilege(s) for this operation

我终于尝试改变全球时间。只有绝望的情绪高涨。流中堆积的相关信息很多,但不知道是我的搜索不佳还是异常。我醒着五个小时来改变这个全球时间。你能帮助我吗?我很累,很累。

我的mysql版本是...

mysql> SELECT VERSION();
+------------+
| VERSION()  |
+------------+
| 5.7.26-log |
+------------+
1 row in set (0.00 sec)

标签: mysqlserverrds

解决方案


我解决了。如果您使用 RDS,您似乎没有 localhost 那样的完全权限。我通过更改time_zone参数组中的 解决了这个问题,而不是最初尝试使用SET GLOBAL time_zone = 'Asia/Seoul'.


推荐阅读