mysql用戶管理


一、        用戶登錄

格式: mysql -h主機地址 -u用戶名 -p用戶密碼

mysql -h110.110.110.110 -uroot -p123

本地可以直接mysql –uroot -p

二、        用戶退出

exit、quit

三、        添加用戶

mysql.user表保存的是用戶的登錄信息

  1. 直接添加無權限

insert into mysql.user (host,user,password) values('%','jifei',PASSWORD('jifei'));

  1. 添加並賦權

grant select on 數據庫.* to '用戶名'@'登錄主機' identified by '密碼'

四、        用戶權限

  1. 添加權限

grant 權限 on 數據庫.表 to '用戶名'@'登錄主機';

權限: select ,update,delete,insert(表數據)、create,alert,drop(表結構)、references(外鍵)、create temporary tables(創建臨時表)、index(操作索引)、create view,show view(視圖)、create routine,alert routine,execute(存儲過程)、all,all privileges(所有權限)

數據庫:數據庫名或者*(所有數據庫)

表:表名或者*(某數據庫下所有表)

主機:主機名或者%(任何其他主機)

例:grant selec,insert,update,delete on *.* to 'jifei'@'%';

  1. 撤銷權限

revoke 權限 on 數據庫.表 from '用戶名'@'登錄主機';//將to改為from

例:revoke all on *.* from ‘jifei’@’%’;

  1. 查看權限

show grants;//自己

show grants for dba@localhost;//指定用戶指定host

五、        刪除用戶

delete from mysql.user where user='' and host='';

六、        修改密碼

update mysql.user set password=PASSWORD('111111') where user='root';

七、        找回密碼

  1. 關閉mysql服務

killall -TERM mysqld

  1. 修改配置文件

vi /etc/my.cnf

在[mysqld]的段中加上一句:skip-grant-tables

例如:

[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

skip-grant-tables

  1. 重啟mysqld

service mysqld restart

  1. 登錄

mysql -uroot -p

  1. 修改密碼

update mysql.user set password=PASSWORD('111111') where user='root';

flush privileges;//刷新權限

  1. 修改配置文件

 vi /etc/my.cnf

去掉之前的改動

  1. 重啟服務
  2. 設置遠程用戶

八、        遠程用戶

①     限制在指定ip登錄host為ip詳情請看 添加權限

②     在任意遠程ip登錄host為%詳情請看 添加權限

  1. 遠程訪問

mysql -h110.110.110.110 -uroot -p123;//指定h為ip詳情請看 用戶登錄

 

 

一些標准實例:

1. mysql.user表實例:一般來說,Host字段都使用ip來限制,而不是機器名(機器名可變,不是特別靠譜)

select Host, User from user;

| 172.17.% | dev |
| 172.17.0.% | export |
| 172.17.0.20 | demo |
| 172.28.0.% | dev |
| 192.168.% | dev |
| 110.111.126.% | demo |
| 110.111.126.103 | helper          | 
| 110.111.127.% | webnav    |
| localhost | backup | 
| localhost | backupdata |
| localhost | root |
+-----------------+-----------------+

2. 授權實例:show grants for 'helper'@'110.111.127.%'

+--------------------------------------------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'helper'@'110.111.127.%' IDENTIFIED BY PASSWORD 'xxxxxxxxxxxxxxxxx' WITH MAX_USER_CONNECTIONS 200 |
| GRANT ALL PRIVILEGES ON `helper_online`.* TO 'helper'@'110.111.127.%' |
+--------------------------------------------------------------------------------------------------------------------------------------------------+


免責聲明!

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



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