天天看點

MySQL資料庫中的使用者管理

DCL : 管理使用者,權限管理

管理使用者

  1. 添加使用者 : ​

    ​CREATE USER '使用者名'@'主機名' IDENTIFIED BY '密碼';​

  2. 删除使用者 : ​

    ​DROP USER '使用者名'@'主機名';​

  3. 查詢使用者
-- 1. 切換到mysql資料庫
USE mysql;
-- 2. 查詢user表
select * from USER;      

通配符 : % 表示可以再任意主機使用使用者登入資料庫

  1. 修改使用者密碼

    兩種方式 :

UPDATE USER SET PASSWORD = PASSWORD('新密碼') WHERE USER = '使用者名';

SET PASSWORD FOR '使用者名'@'主機名' = PASSWORD('新密碼');      
  1. 管理者身份運作cmd – > ​

    ​net stop mysql​

    ​ // 停止mysql服務
  2. 重新打開cmd, 使用無驗證方式啟動mysql服務 : ​

    ​mysql --skip-grant-tables​

  3. 重新打開cmd, 直接輸入​

    ​mysql​

    ​進行登入
  4. 進行使用者密碼的修改

    ​​

    ​use mysql;​

    ​​

    ​UPDATE USER SET PASSWORD = PASSWORD('root') WHERE USER = 'root';​

  5. 完成密碼修改後, 打開任務管理器
  1. 管理者身份運作cmd, 輸入​

    ​net start mysql​

    ​ // 運作mysql服務
  2. 使用正常的mysql登入指令即可. ​

    ​mysql -uroot -proot​

權限管理

  1. 查詢權限
-- 查詢權限
SHOW GRANTS FOR '使用者名'@'主機名'      
  1. 授予權限
-- 授予權限
grant 權限清單 on 資料庫名.表名 to '使用者名'@'主機名';
-- 給jack使用者授予所有全面, 在任意資料庫任意表上
grant ALL ON *.* TO 'jack'@'%';      
  1. 撤銷權限
-- 撤銷權限
revoke 權限清單 on 資料庫名.表名 from '使用者名'@'主機名';
--撤銷jack使用者的對mysql資料庫的user表的修改權限
REVOKE UPDATE ON mysql.'user' FROM 'jack'@'%';      

繼續閱讀