歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

怎樣作為一個一般用戶運行MySQL

  怎樣作為一個一般用戶運行mysql<br>MySQL服務器mysqld能被任何用戶啟動並運行。為了將mysqld改由Unix用戶user_name來運行,你必須做下列事情:     如果它正在運行,停止服務器(使用mysqladmin shutdown)。 <br>改變數據庫目錄和文件以便user_name有權限讀和寫文件(你可能需要作為Unix的root用戶才能做到):<br>shell> chown -R user_name /path/to/mysql/datadir    如果在MySQL數據目錄中的目錄或文件是符號鏈接,你也將需要順著那些鏈接並改變他們指向的目錄和文件。chown -R不能跟隨符號鏈接。    以user_name用戶啟動服務器,或如果你正在使用MySQL 3.22或以後版本,以Unix root用戶啟動mysqld並使用--user=user_name選項,mysqld將在接受任何連接之前切換到以Unix user_name用戶運行。 <br>如果在系統被重新啟動時,你使用mysql.server腳本啟動mysqld,你應該編輯mysql.server用su以用戶user_name運行mysqld,或使用--user選項調用mysqld。(不改變safe_mysqld是必要的。) <br>現在,你的mysqld進程應該正在作為Unix用戶user_name運行,並運行完好。盡管有一件事情沒有變化:權限表的內容。缺省 地(就在運行了腳本mysql_install_db安裝的權限表後),MySQL用戶root是唯一有存取mysql數據庫或創建或拋棄數據庫權限的用戶。除非你改變了那些權限,否則他們仍然保持。當你作為一個Unix用戶而不是root登錄時,這不應該阻止你作為MySQL root用戶來存取MySQL;只要為客戶程序指定-u root的選項。    注意通過在命令行上提供-u root,作為root存取MySQL,與作為Unix root用戶或其他Unix用戶運行MySQL沒有關系。MySQL的存取權限和用戶名與Unix用戶名字是完全分開的。唯一與Unix用戶名有關的是,如果當你調用一個客戶程序時,你不提供一個-u選項,客戶將試圖使用你的Unix登錄名作為你的MySQL用戶名進行連接。    如果你的Unix機器本身不安全,你可能應該至少在存取表中為MySQL root用戶放上一個口令。否則,在那台機器上有一個帳號的任何用戶能運行mysql -u root db_name並且做他喜歡做的任何事情。




Copyright © Linux教程網 All Rights Reserved