在mysql下mysql庫中有6個許可權表
mysql.user
使用者字段,許可權字段,安全字段,資源控制字段
mysql.db 、 mysql.host
使用者字段,許可權字段
mysql.tables_priv,mysql.columms_priv,mysql.procs_priv
一、使用者管理
(1)建立使用者的三種方法
1.create user user1@'localhost
' identified by '
123456';
2.insert into mysql.user(user,host,password,ssl_cipher,x509_issuer,x509_subject) values('
user2
','localhost
',password('
123456
'),'','',''
);3.grant select on *.* to user3@'
localhost
' identified by '
123' //授select權所有庫和所有表給user3,密碼123
flush privileges
(2)刪除使用者
1.drop user user1@'localhost
'2.delete from mysql.user where user='
user1
' and host='
localhost
';
(3)root使用者修改自己密碼
1.mysqladmin -uroot -proot password '123'
2.update mydql.user set password=password('
new_password
') where user='
root
' and host='
localhost';
3.set password=password('
new_password
')flush privileges //重新整理授權表
(4)root使用者修改其他使用者密碼
1.set password for user3@'localhost
' =password('
new_password');
flush privileges;
2.updatae mysql.user set password=password('
new_password
') where user='
user3
' and host='
localhost';
flush privileges;
3.grant select on *.* to user3@'
localhost
' identified by '
pwd'
;flush privileges;
(5)普通使用者修改自己密碼
set password=password('new_password
');
(6)丟失root使用者密碼
vim /etc/my.cnfskip-grant-tables//
將這句話的注釋去掉
service mysqld restart
mysql -uroot //
然後就可以跳過許可權表進入mysql
update mysql.user set password=password('
new_password
') where user='
user3
' and host='
localhost';
flush privileges;
\q
//退出mysql
vim /etc/my.cnf
#skip-grant-tables //
將這句話再重新注釋
二、許可權管理
語法格式:grant 許可權列表 on 庫名.表名 to 使用者名稱@'客戶端' [identified by 'password' with grant option]
其中:with_option引數如下
grant option: 授權選項max_queries_per_hour:定義每小時允許執行的查詢數
max_updates_per_hou:定義每小時允許執行的更新數
max_connections_per-hour:定義每小時可以建立的連線數
max-user_connections:定義單個使用者同是可以建立的連線數
授權示例
grant all on *.* to admin1@'%' identified by '
password';
grant all on *.* to admin2@'
%' identified by 'pw'
with grant option;
grant all on *.* bbs.* to admin3@'
%' identified by 'pw'
;grant all on bbs.user to admin4@'%
' identified by 'pw'
;grant
select(col1),insert(col2,col3) on bbs.user to admin5@'
%' identified by 'pw'
;flush privileges
檢視許可權
show grants for admin@'%' \g;
**許可權 revoke 許可權列表 on 資料庫名 from 使用者名稱@'客戶端主機'
1.revoke delete on *.* from admin@'%';//
**部分許可權
2.revoke all privileges on *.* from admin@'%'
;revoke grant on *.* from admin@'
%'; //
**全部許可權(包括授權)
flush privileges; //重新整理授權
mysql安全機制 Mysql安全機制
在mysql下mysql庫中有6個許可權表 mysql.user 使用者字段,許可權字段,安全字段,資源控制字段 mysql.db mysql.host 使用者字段,許可權字段 mysql.tables priv,mysql.columms priv,mysql.procs priv 一 使用者管理...
MySQL安全機制 DDL DCL
一 mysql使用者管理 1.修改使用者密碼 root修改自己密碼 方法一 mysqladmin uroot p 123 password new password 123為舊密碼 方法二 mysql update mysql.user set authentication string passw...
mysql管理之安全機制
mysql.user表 非常重要 一 使用者字段 二 許可權字段 三 安全字段 四 資源控制字段 mysql.db mysql.hsot 使用者字段 許可權字段 mysql.tables priv mysql.columms priv procs priv 登入和退出mysql 例項 mysql h...