溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

mysql 登錄權(quán)限

發(fā)布時(shí)間:2020-07-27 09:40:35 來源:網(wǎng)絡(luò) 閱讀:3170 作者:大屁孩兒 欄目:數(shù)據(jù)庫
開啟 MySQL 的遠(yuǎn)程登陸帳號(hào)有兩大步:
1、確定服務(wù)器上的防火墻沒有阻止 3306 端口。
MySQL 默認(rèn)的端口是 3306 ,需要確定防火墻沒有阻止 3306 端口,否則遠(yuǎn)程是無法通過 3306 端口連接到 MySQL 的。
如果您在安裝 MySQL 時(shí)指定了其他端口,請?jiān)诜阑饓χ虚_啟您指定的 MySQL 使用的端口號(hào)。
如果不知道怎樣設(shè)置您的服務(wù)器上的防火墻,請向您的服務(wù)器管理員咨詢。
2、增加允許遠(yuǎn)程連接 MySQL 用戶并授權(quán)。
1)首先以 root 帳戶登陸 MySQL
在 Windows 主機(jī)中點(diǎn)擊開始菜單,運(yùn)行,輸入“cmd”,進(jìn)入控制臺(tái),MySQL 的 bin 目錄下,然后輸入下面的命令。
在 Linux 主機(jī)中在命令提示行下輸入下面的命令。
> MySQL -uroot -p123456
 123456 為 root 用戶的密碼。
2)創(chuàng)建遠(yuǎn)程登陸用戶并授權(quán)
> grant all PRIVILEGES on discuz.* to ted@'123.123.123.123' identified by '123456';
 上面的語句表示將 discuz 數(shù)據(jù)庫的所有權(quán)限授權(quán)給 ted 這個(gè)用戶,允許 ted 用戶在 123.123.123.123 這個(gè) IP 進(jìn)行遠(yuǎn)程登陸,并設(shè)置 ted 用戶的密碼為 123456 。
下面逐一分析所有的參數(shù):
all PRIVILEGES 表示賦予所有的權(quán)限給指定用戶,這里也可以替換為賦予某一具體的權(quán)限,例如:select,insert,update,sqlserver/42947.htm target=_blank >delete,create,drop 等,具體權(quán)限間用“,”半角逗號(hào)分隔。
discuz.* 表示上面的權(quán)限是針對于哪個(gè)表的,discuz 指的是數(shù)據(jù)庫,后面的 * 
表示對于所有的表,由此可以推理出:對于全部數(shù)據(jù)庫的全部表授權(quán)為“*.*”,對于某一數(shù)據(jù)庫的全部表授權(quán)為“數(shù)據(jù)庫名.*”,對于某一數(shù)據(jù)庫的某一表授
權(quán)為“數(shù)據(jù)庫名.表名”。
ted 表示你要給哪個(gè)用戶授權(quán),這個(gè)用戶可以是存在的用戶,也可以是不存在的用戶。
123.123.123.123 表示允許遠(yuǎn)程連接的 IP 地址,如果想不限制鏈接的 IP 則設(shè)置為“%”即可。
123456 為用戶的密碼。
執(zhí)行了上面的語句后,再執(zhí)行下面的語句,方可立即生效。
flush privileges;
遠(yuǎn)程登錄mysql一些常用的代碼段,大家可參考一下。
一、允許root用戶在任何地方進(jìn)行遠(yuǎn)程登錄,并具有所有庫任何操作權(quán)限,具體操作如下: 
在本機(jī)先使用root用戶登錄mysql: 
mysql -u root -p"youpassword" 
進(jìn)行授權(quán)操作: 
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION; 
重載授權(quán)表: 
FLUSH PRIVILEGES; 
退出mysql數(shù)據(jù)庫: 
exit 
   
二、允許root用戶在一個(gè)特定的IP進(jìn)行遠(yuǎn)程登錄,并具有所有庫任何操作權(quán)限,具體操作如下: 
在本機(jī)先使用root用戶登錄mysql: 
mysql -u root -p"youpassword" 
進(jìn)行授權(quán)操作: 
GRANT ALL PRIVILEGES ON *.* TO root@"172.16.16.152" IDENTIFIED BY "youpassword" WITH GRANT OPTION; 
重載授權(quán)表: 
FLUSH PRIVILEGES; 
退出mysql數(shù)據(jù)庫: 
exit 
   
三、允許root用戶在一個(gè)特定的IP進(jìn)行遠(yuǎn)程登錄,并具有所有庫特定操作權(quán)限,具體操作如下: 
在本機(jī)先使用root用戶登錄mysql: 
mysql -u root -p"youpassword" 
進(jìn)行授權(quán)操作: 
GRANT select,insert,update,delete ON *.* TO root@"172.16.16.152" IDENTIFIED BY "youpassword"
重載授權(quán)表: 
FLUSH PRIVILEGES; 
退出mysql數(shù)據(jù)庫: 
exit 
   
四、刪除用戶授權(quán),需要使用REVOKE命令,具體命令格式為: 
REVOKE privileges ON 數(shù)據(jù)庫[.表名] FROM user-name; 
具體實(shí)例,先在本機(jī)登錄mysql: 
mysql -u root -p"youpassword" 
進(jìn)行授權(quán)操作: 
GRANT select,insert,update,delete ON TEST-DB TO test-user@"172.16.16.152" IDENTIFIED BY "youpassword"
再進(jìn)行刪除授權(quán)操作: 
REVOKE all on TEST-DB from test-user; 
****注:該操作只是清除了用戶對于TEST-DB的相關(guān)授權(quán)權(quán)限,但是這個(gè)“test-user”這個(gè)用戶還是存在。 
最后從用戶表內(nèi)清除用戶: 
DELETE FROM user WHERE user="test-user"
重載授權(quán)表: 
FLUSH PRIVILEGES; 
退出mysql數(shù)據(jù)庫: 
exit


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI