MySQL DBA MySQL用戶管理(四)


MySQL用戶管理

   理解MySQL連接和查詢流程

   查詢MySQL賬戶級驗證

   創建和修改刪除賬戶

    授權、修改和撤銷用戶權限

     禁用驗證控制

MySQL常用client命令及GUI工具推薦

用戶名忘了怎么處理?

實際工作中用戶名和密碼需要注意什么?

賬號安全

 

賬戶管理的重要性

在MySQL中可以通過賬戶控制允許或不允許用戶執行操作

  可以精細分配權限給不同職能的用戶

   避免使用root賬戶

        應用不能直接使用root

        防止維護期間出錯

   限制特定權限賬戶確保數據完整性

       允許特定授權賬戶完成期工作

        阻止未經授權的用戶訪問超出其特權的數據

 

查看用戶賬號 :mysql.user

賬號驗證:mysql_native_password

 

用戶優先精確匹配:'larry'@'%','larry'@'192.168.114.%','larry'@'192.168.114.119';

select user(),current_user();

user()連接用戶

current_user() 創建用戶

block特定ip連接  processlist host

alter user  xxx lock;

 

設置密碼

1.create user ... idengtified by '';

2.set password for xxx;

3.mysqladmin password

4.alter user ...  (推薦)

5.update user set

6.grant ...identified by

authentication_string 字典

 

expire

help alter user

alter user current_user() password expire;

 

lock

alter user current_user() account lock;

alter user current_user() account unlock;

 

用戶權限

只讀用戶

開發賬號

管理賬號

 

權限

file

process

supper

with grant option  -- 級聯授權

 

show privileges;

最小權限授權

show grants for

mysqladmin reload·  --flash privileges;

 

 

MySQL8.0用戶  --不用升級driver的處理方式

[mysqld]

default_authentication_plugin=mysql_native_password

character_set_server=utf8

================================

set names utf8;

create user 'xxx'@'xxx' idengtified with mysql_native_password by '';

grant all privileges on *.* to 'xxx'@'xxx';

create database if exists mydb collate 'utf8_general_ci';

 

密碼忘記的處理

禁用驗證控制

skip-grants-table 的風險

同時家skip-network

 

cp user.* /path/

update

cp xxx

chown mysql:mysql user.*

 

1.重啟

2.kill -HUP `pidof mysqld`

 

select concat('*',upper(sha1(unhex(sha1('pwd'))))) as password,password('pwd');

echo -n "pwd"|sha1sum|cut -c1-40|xxd -p -r|sha1sum|cut -c1-40|tr '[a-z]' '[A-Z]' 8ASDFAS9ASDFASDF9F9DSFFDSA 

 

strings user.MYD

8.0賬號更安全

 

skip-name-resolve

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM