mysql 用戶及權限管理 允許遠程連接


mysq,功能強大的關系型數據庫,它的用戶管理在開發過程中當然也尤其重要,接下來就看看mysql的用戶管理

1.登錄數據庫

mysql -uroot -p 回車

輸入密碼... 回車

 

2.登錄成功后,切換數據庫

mysql>use mysql;

 

3.查看當前用戶

mysql>select user,host from user;

這里只列舉了兩個字段,這張表的字段很多,一般比較關注的就這幾個:

host:訪問主機

user:訪問用戶名

plugin:認證方式(密碼加密方式)

authentication_string:密碼加密后的一長串字符

 

4.新增用戶

mysql>CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 

host:主機ip,%【任意ip】 localhost【本機】 192.168.31.22【指定ip】

IDENTIFIED BY:將密碼用默認的加密方式進行加密后放入表中,不直接存放可以明碼

 

默認的加密方式需要查一下user表中的plugin,如果客戶端不支持,可以指定加密方式進行加密

mysql>CREATE USER 'username'@'host' IDENTIFIED MySqlSHA1 BY 'password'; 

新增后的用戶默認是沒有任何權限的,也就是useage,只能登陸罷了

 

5.查看MYSQL數據庫中用戶的權限
mysql>show grants for  'username'@'host';
 
6.用戶授權
mysql>grant privileges on dbname.tabname to "username"@"host"
privileges :權限,select【查詢】,update【更新】,delete【刪除】等等,all【所有】
這樣的授權的用戶就算擁有可所有權限,但是沒辦法管理其他用戶,如果你想讓這個用戶可以授權其他用戶,在后面再加上 with grant option.
grant privileges on dbname.tabname to "username"@"host" with grant option
 
 
7.修改用戶
mysql>update user set host="localhost" where user="username"
user,host,plugin都可以用update語句,修改plugin之后,需要再次修改密碼,否則無效,也可以在修改密碼的時候指定加密方式,就不需要修改plugin
修改用戶密碼加密方式一般是是客戶端不支持服務器這邊的加密方式,才會修改的,如果支持,一般可以不修改加密方式,mysql8.0就需要修改加密方式,不然圖形化工具完全沒辦法連接。
 
8.刪除用戶,根據用戶名刪除,也可以根據host
mysql>delete user where user="username"

 

注意:允許遠程就是把用戶的訪問地址從localhost 到 % 或者指定ip,允許了遠程之后,要設置權限,否則用戶就只能登錄,其他的什么也不能干,當然,你想逗他玩玩,也可以,你開心就好。

 

9.用戶操作,最后一步,更新權限

mysql>flush privileges

 

10.如果還是顯示無法連接,查看配置文件

則需要修改配置文件。找到my.cnf,一般在/etc/mysql/下面,具體情況根據實際而定。注釋掉其中的bind-address屬性。如下

 

 

好啦!只分享這么點點,等我再去喝點墨汁回來繼續。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM