添加用戶授權方法一:
create user 'user'@'ip' identified by 'password';
grant SELECT on op_db.* to 'user'@'ip' with grant option;
flush privileges;
create user 'root'@'127.0.0.1' identified by '****';
GRANT ALL PRIVILEGES ON . TO 'root'@'127.0.0.1' WITH GRANT OPTION;
flush privileges;
添加用戶授權方法二:
grant SELECT on op_db.* to 'user'@'ip' identified by 'password' with grant option;
flush privileges;
WITH GRANT OPTION 這個選項表示該用戶可以將自己擁有的權限授權給別人。
注意:經常有人在創建操作用戶的時候不指定WITH GRANT OPTION選項導致后來該用戶不能使用GRANT命令創建用戶或者給其它用戶授權。
如果不想這個用戶有這個grant的權限,可以不加這句
查詢數據庫用戶及IP:
select user ,user from mysql.user;
查詢該用戶指定ip所擁有的權限
SHOW GRANTS FOR 'user'@'ip';
權限收回:
revoke SELECT ON op_db.* FROM 'user'@'ip';
刪除用戶:
drop user 'user'@'ip';
修改mysql密碼
mysql> ALTER USER 'jeffrey'@'localhost' IDENTIFIED BY 'mypass';
mysql> SET PASSWORD FOR 'jeffrey'@'localhost' = PASSWORD('mypass');
SET PASSWORD FOR 'username'@'%' ='HQLM2017';
mysql> GRANT USAGE ON . TO 'jeffrey'@'localhost' IDENTIFIED BY 'mypass';
mysql> update mysql.user set authentication_string=password('******') where user='cmbh';
注意
如果忘記root密碼,而有一個超級權限的普通用戶,也可以用擁有超級權限的普通用戶修改root密碼
UPDATE USER SET authentication_string=PASSWORD('******') WHERE USER='root';
修改當前會話本身用戶密碼的方式包括:
mysql> ALTER USER USER() IDENTIFIED BY 'mypass';
mysql> SET PASSWORD = PASSWORD('mypass');
set password='Z%Q-#oxn';