Linux中Mysql用戶管理

 一、root用戶密碼的維護:

       由於安裝MySQL完後,MySQL會自動提供一個不帶密碼的root用戶,爲了安全起見給root設置密碼:

       #mysqladmin -u root password 123 (123爲密碼,也可以寫成:'123'或"123") ;

       設置密碼後登入時就不能直接輸入mysql了,必須跟些參數了,如下:

       [root@localhost ~]# mysql -u root -p (-u 後跟登入的用戶名,-p 提示要密碼登入)
       Enter password:(輸入密碼)

 

       修改密碼:

       [root@localhost ~] #mysqladmin -u root  -p  password  123456 (password 後跟的是要更新的新密碼)
       Enter password:(輸入原始密碼,回車即可)

 

二、其他用戶的增加和刪除:

      以root用戶登入,在mysql中有一張mysql.user表是存儲MySQL中所有用戶的信息表,所以可以直接增加刪除這個表的記錄就可增加和刪除用戶;

 

     1.添加用戶(有兩種形式):

      A.mysql> grant all on *.* to yushan@"%" identified by "123" ; 
         mysql>flush privileges; (刷新系統權限表)
         (執行完會在mysql.user表插入一條記錄,all表示所有權限(包括增 刪 改 查等權限), *.* 表示所有數據庫,yushan爲添加的用戶名,123爲密碼,%爲匹配的所有主機,上面的信息都可以指定如grant select,update on db.* to yushan@localhost identified by '123";)

 

      B.直接對mysql.user添加一條記錄

      mysql> insert into mysql.user(Host,User,Password) values("localhost","yusuhan",password("123")); 
   mysql>flush privileges; 
   這樣就創建了一個名爲:yushan 密碼爲:123 (密碼是經過加密的 ) 的用戶,不過這樣沒有權限因爲只添加了三個字段,也可通過grant添  加權限:

   mysql>grant all  on *.* to yushan@localhost identified by '123";
   mysql>flush privileges;(刷新系統權限表)

   (這種好像有點囉嗦了。直接用grant不久得了)

 

   添加完用戶 如果要遠程登入MySQL,必須跟上主機Ip 如下:

   [root@localhost ~]# mysql -u yushan -p -h 192.168.59.123 
   Enter password:(輸入密碼)

 

  2.刪除用戶 :

   mysql>delete from mysql.user where user ='yushan' ;

   mysql>flush privileges; (刷新系統權限表)

 

  其他用戶的密碼修改與root的一樣,在這裏無論是添加或是刪除操作後必須來個flush privileges;這樣才能起作用特別是刪除用戶後,如果未執行,被刪除的用戶還可登入,以上都是在MySQL root用戶下操作,爲了MySQL的安全,應該給用戶指定相應的權限。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章