在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.cnf
skip-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 [email protected] [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『;
grantselect(col1),insert(col2,col3) on bbs.user to admin5@『%『 identified by 『pw『;
flush privileges
檢視許可權
show grants for admin@『%『 \g;
**許可權 revoke 許可權列表 on 資料庫名 from [email protected]
1.revoke delete on *.* from admin@『%『;//**部分許可權
2.revoke all privileges on *.* from admin@『%『;
revoke grant on*.* from admin@『%『; //**全部許可權(包括授權)
flush privileges; //重新整理授權
原文:
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賬戶安全
mysql安裝過程包括設定含有授權表的mysql資料庫 windows分發版包含預初始化的授權表,可以自動安裝。在unix中,用mysql install db程式來安裝 授權表。可以通過一些安裝方法來執行該程式。否則你需要手動執行。授權表定義了初始mysql使用者賬戶和訪問許可權。按照以下步驟對這...