首頁 >資料庫 >mysql教程 >MySQL修改密碼和存取限制的實例詳解

MySQL修改密碼和存取限制的實例詳解

Y2J
Y2J原創
2017-05-23 15:16:001289瀏覽

MySQL是一個真正的多用戶、多執行緒SQL資料庫伺服器。 MySQL是以一個客戶機/伺服器結構的實現,它由一個伺服器守護程式mysqld和很多不同的客戶程式和函式庫組成。

由於其原始碼的開放性和穩定性,且與網站流行編 揮镅 PHP的完美結合,現在許多網站都利用其當作後端資料庫,使其獲得了廣泛應用。處於安全性的考慮,需要為每一用戶賦於對不同資料庫的存取限制,以滿足不同使用者的要求。以下就分別討論,供大家參考。
  一、MySQL修改密碼方法總結 
  首先要說明一點的是:一般情況下,修改MySQL密碼是需要有mysql裡的root權限的,這樣一般用戶是無法更改密碼的,除非請求管理員幫忙修改。
  方法一    
  使用phpMyAdmin 
  (圖形化管理MySql資料庫的工具),這是最簡單的,直接用SQL語句修改mysql資料庫的了使用PASSWORD函數,插入使用者用Insert指令,修改使用者用Update指令,刪除用Delete指令。在本節後面有資料表user欄位的詳細介紹。    
  方法二    
  使用mysqladmin。輸入   
  mysqladmin -u root -p oldpassword newpasswd    
  執行這個指令後,需要輸入root的原密碼,這樣root的密碼就會改為newpasswd。同樣,把指令裡的root改為你的用戶名,你就可以改自己的密碼了。 
  當然如果你的mysqladmin連接不上mysql 
  server,或者你沒有辦法執行mysqladmin,那麼這種方法就是無效的,而且mysqladmin無法把密碼清空。
  下面的方法都在mysql提示字元下使用,且必須有mysql的root權限:    
  方法三    
 VALUES 
  ('%','system', PASSWORD('manager')); 
  mysql> FLUSH PRIVILEGES    
system,一個使用者說為使用者說是在一個使用者說是增加一個密碼。注意要使用PASSWORD函數,然後也要使用FLUSH 
  PRIVILEGES來執行確認。
  方法四    
  和方法三一樣,只是使用了REPLACE語句 
  mysql> REPLACE INTO 。.user (HostUE)' ,'system',PASSWORD('manager')); 
  mysql> FLUSH PRIVILEGES   
 
 方法五#ASS#  SET PASSWORD FOR system@"% " = PASSWORD('manager');       你也必須使用PASSWORD()函數,但是不需要使用FLUSH PRIVILEGES來執行確認。       
方法六
    
  使用GRANT ... IDENTIFIED BY語句,以授權進行授權。 。    
  註:PASSWORD()函數作用是為口令字加密,在程式中MySql自動解釋。      二、MySql中存取限制的設定方法
 
  我們採用兩種方法來設定使用者。 
  進入到Mysql執行目錄下(通常是c:\mysql\bin)。輸入mysqld-shareware.exe,輸入mysql 
  --user=root mysql ,不然不能新增使用者。進入到mysql>提示字元下進行操作。    
  假設我們要建立一個超級用戶,用戶名為system,用戶口令為manager。   方法一  
 
  用Grant 指令授權,輸入的代碼如下: 
  mysql>GRANT ALL PRIVILEGES 油*.* GRANT OPTION;    
  應顯示:Query OK, 0 rows affected (0.38 sec)    
約  mysql>INSERT INTO user   VALUES('localhost','system',PASSWORD('manager'), 
'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y ','Y'); 
  對於3.22.34版本的MySQL,這裡共14個"Y",其對應的權限如下(按字段順序排列):    
  權限 表列名稱對應解釋##  select Select_priv 只有在真正從一個表中檢索時才需要select權限 表 
  insert Insert_priv 允許您把新行插入到一個存在的表格中的欄位 表 
  delete Delete_priv 允許你刪除符合條件的行 表 
  create Create_priv 允許你建立新的資料庫和資料表丟棄表 
  reload Reload_priv 允許您告訴伺服器再讀入授權表 伺服器管理 
  shutdown Shutdown_priv 可能被濫用(透過終止伺服器拒絕為其他使用者服務) 伺服器管理的查詢普通文字,包含設定或改變口令查詢 伺服器管理 
  file File_priv 權限可以被濫用在伺服器上讀取任何可讀的檔案到資料庫表 伺服器上的檔案存取 
  grant Grant_priv 允許你把你自己擁有的那些權限授給其他的使用者 資料庫或表 
  references References_priv 允許你開啟和關閉記錄檔 資料庫或表 
  index Index_priv 允許你建立或丟棄(##  index Index_v )表格,可以用於透過重新命名表來推翻權限系統 表   
  如果創建用戶時只有select、insert、update和delete權限,則允許用戶只能在一個資料庫現有的表上實施操作. 
下面就可以建立我們要用到的資料庫了,我們直接輸入. 例如:我們要建立資料庫名稱為XinXiKu,可用如下程式碼:   
  mysql>create database XinXiKu; affected (0.00 sec) 

【相關推薦】

1. 
Mysql免費影片教學

2. 

用mysqldump備份和復原表的實例詳解

3. 

php將圖片儲存mysql中的實例詳解

4. 

用mysqldump備份和還原表的實例詳解

5. 

以正規表示式取代資料庫中的內容的實例詳解

以上是MySQL修改密碼和存取限制的實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn