前期准備,建立一個普通用戶:
create user 'sww'@'localhost' identified by '123456'; /*創建一個用戶*/ select * from user; mysql -h localhost -P 3306 -u sww -p123456 /*DOS窗口中登錄查看*/ drop user 'sww'@'localhost'; /*刪除這個新建的用戶*/ select * from user;
mysql -h localhost -P 3306 -u sww -p123456 用戶名: root 密碼:123
DOS窗口登錄:
=======================================================================
方法一、使用set語句來修改普通用戶的密碼
語法格式:set password for 'username'@'hostname' = password('new_password');
username:是普通用戶名;
hostname:是普通用戶的主機名;
注意:新密碼必須使用password()函數加密;
create user 'sww'@'localhost' identified by '123456'; /*創建一個用戶*/ select * from user; mysql -h localhost -P 3306 -u sww -p123456 /*DOS窗口中登錄查看*/ drop user 'sww'@'localhost'; /*刪除這個新建的用戶*/ select * from user; set password for 'sww'@'localhost' = password('123'); mysql -h localhost -P 3306 -u sww -p123
執行語句:
set password for 'sww'@'localhost' = password('123');
新密碼登錄:
mysql -h localhost -P 3306 -u sww -p123
============================================================================
方法二、修改mysql數據庫下的user表
語法格式;update mysql.user set Password = password("new_password") where User = "root" and Host = "localhost";
注意:新密碼必須使用password()函數來加密;
執行update語句后,必須執行 flush privileges; 語句來加載權限。
執行修改語句:
update mysql.user set Password = password("123456") where User = "sww" and Host = "localhost";
使用新密碼登錄:
mysql -h localhost -P 3306 -u sww -p123456
==============================================================
方法三、用grant語句來修改普通用戶的密碼
可以使用grant語句來修改普通用戶的權限,但是必須要有grant權限。
語法格式:
grant priv_type on database.table
to user [ identified by [ PASSWORD ] 'password' ]
priv_type:表示新用戶的權限;
database.table:表示新用戶的權限范圍,即只能在指定的數據庫和表上使用自己的權限;
user:表示新建用戶的賬戶,user由用戶名(user)和主機名(host)構成;
identified by:關鍵字用來設置用戶的密碼;
password:表示用戶的密碼;如果密碼是一個普通的字符串,就不需要用PASSWORD關鍵字。
PS:注意:使用grant語句修改密碼和創建用戶的語句是一樣的;
執行修改語句:
grant select on *.* to 'sww'@'localhost' identified by '123';
DOS窗口登錄:
mysql -h localhost -P 3306 -u sww -p123