溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

怎么解決mysql刪除用戶后再新建該用戶仍然具有原來權(quán)限的問題

發(fā)布時間:2021-09-16 11:19:18 來源:億速云 閱讀:174 作者:chen 欄目:MySQL數(shù)據(jù)庫

本篇內(nèi)容主要講解“怎么解決mysql刪除用戶后再新建該用戶仍然具有原來權(quán)限的問題”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“怎么解決mysql刪除用戶后再新建該用戶仍然具有原來權(quán)限的問題”吧!

所以如果需要減小權(quán)限,需要刪除原來的用戶然后再從新建立一個新用戶!

還有,重新建立用戶后 (grant select,update on *.* to 'aa'@'%' identified by 'aa';),發(fā)現(xiàn)還是能delete 和 insert數(shù)據(jù)

這是因為除了在user表控制權(quán)限外,db表也控制對數(shù)據(jù)庫的權(quán)限,需要把這里邊的相應(yīng)數(shù)據(jù)刪除后flush privileges后就可以了!

[@more@]
用戶問題:

發(fā)現(xiàn)先按下列語句建立用戶:

mysql> grant all privileges on *.* to 'aa'@'%' identified by 'aa';
Query OK, 0 rows affected (0.00 sec)

mysql> select * from mysql.user where user = 'aa' G
*************************** 1. row ***************************
                Host: %
                User: aa
            Password: *DEE59C300700AF9B586F9F2A702231C0AC373A13
         Select_priv: Y
         Insert_priv: Y
         Update_priv: Y
         Delete_priv: Y
         Create_priv: Y
           Drop_priv: Y
         Reload_priv: Y
       Shutdown_priv: Y
        Process_priv: Y
           File_priv: Y
          Grant_priv: N
     References_priv: Y
          Index_priv: Y
          Alter_priv: Y
        Show_db_priv: Y
          Super_priv: Y
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
            ssl_type:
          ssl_cipher:
         x509_issuer:
        x509_subject:
       max_questions: 0
         max_updates: 0
     max_connections: 0
max_user_connections: 0
1 row in set (0.00 sec)

然后:

mysql> grant select,update on *.* to 'aa'@'%' identified by 'aa';
Query OK, 0 rows affected (0.00 sec)

mysql> select * from mysql.user where user = 'aa' G
*************************** 1. row ***************************
                Host: %
                User: aa
            Password: *DEE59C300700AF9B586F9F2A702231C0AC373A13
         Select_priv: Y
         Insert_priv: Y
         Update_priv: Y
         Delete_priv: Y
         Create_priv: Y
           Drop_priv: Y
         Reload_priv: Y
       Shutdown_priv: Y
        Process_priv: Y
           File_priv: Y
          Grant_priv: N
     References_priv: Y
          Index_priv: Y
          Alter_priv: Y
        Show_db_priv: Y
          Super_priv: Y
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
            ssl_type:
          ssl_cipher:
         x509_issuer:
        x509_subject:
       max_questions: 0
         max_updates: 0
     max_connections: 0
max_user_connections: 0
1 row in set (0.00 sec)

發(fā)現(xiàn)權(quán)限沒有改變...
難道這樣新加的是在前面的權(quán)限基礎(chǔ)上再添加權(quán)限?

新建個用戶看看:


mysql> grant select,update on *.* to 'bb'@'%' identified by 'bb';
Query OK, 0 rows affected (0.00 sec)

mysql> select * from mysql.user where user = 'bb' G
*************************** 1. row ***************************
                Host: %
                User: bb
            Password: *E72B08C841E005B05BD564FA1C18CAFFB9FEF5FC
         Select_priv: Y
         Insert_priv: N
         Update_priv: Y
         Delete_priv: N
         Create_priv: N
           Drop_priv: N
         Reload_priv: N
       Shutdown_priv: N
        Process_priv: N
           File_priv: N
          Grant_priv: N
     References_priv: N
          Index_priv: N
          Alter_priv: N
        Show_db_priv: N
          Super_priv: N
Create_tmp_table_priv: N
    Lock_tables_priv: N
        Execute_priv: N
     Repl_slave_priv: N
    Repl_client_priv: N
    Create_view_priv: N
      Show_view_priv: N
 Create_routine_priv: N
  Alter_routine_priv: N
    Create_user_priv: N
            ssl_type:
          ssl_cipher:
         x509_issuer:
        x509_subject:
       max_questions: 0
         max_updates: 0
     max_connections: 0
max_user_connections: 0
1 row in set (0.00 sec)

mysql> grant delete,insert on *.* to 'bb'@'%' identified by 'bb';
Query OK, 0 rows affected (0.00 sec)

mysql>
mysql> select * from mysql.user where user = 'bb' G
*************************** 1. row ***************************
                Host: %
                User: bb
            Password: *E72B08C841E005B05BD564FA1C18CAFFB9FEF5FC
         Select_priv: Y
         Insert_priv: Y
         Update_priv: Y
         Delete_priv: Y
         Create_priv: N
           Drop_priv: N
         Reload_priv: N
       Shutdown_priv: N
        Process_priv: N
           File_priv: N
          Grant_priv: N
     References_priv: N
          Index_priv: N
          Alter_priv: N
        Show_db_priv: N
          Super_priv: N
Create_tmp_table_priv: N
    Lock_tables_priv: N
        Execute_priv: N
     Repl_slave_priv: N
    Repl_client_priv: N
    Create_view_priv: N
      Show_view_priv: N
 Create_routine_priv: N
  Alter_routine_priv: N
    Create_user_priv: N
            ssl_type:
          ssl_cipher:
         x509_issuer:
        x509_subject:
       max_questions: 0
         max_updates: 0
     max_connections: 0
max_user_connections: 0
1 row in set (0.00 sec)

從上面可以看出,是權(quán)限的一個疊加

所以如果需要減小權(quán)限,需要刪除原來的用戶然后再從新建立一個新用戶!

還有,重新建立用戶后 (grant select,update on *.* to 'aa'@'%' identified by 'aa';),發(fā)現(xiàn)還是能delete 和 insert數(shù)據(jù)

這是因為除了在user表控制權(quán)限外,db表也控制對數(shù)據(jù)庫的權(quán)限,需要把這里邊的相應(yīng)數(shù)據(jù)刪除后flush privileges后就可以了!

到此,相信大家對“怎么解決mysql刪除用戶后再新建該用戶仍然具有原來權(quán)限的問題”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI