怎么對(duì)MySQL用戶的host屬性進(jìn)行修改?相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。
員工經(jīng)過(guò)長(zhǎng)期磨合與沉淀,具備了協(xié)作精神,得以通過(guò)團(tuán)隊(duì)的力量開(kāi)發(fā)出優(yōu)質(zhì)的產(chǎn)品。創(chuàng)新互聯(lián)建站堅(jiān)持“專注、創(chuàng)新、易用”的產(chǎn)品理念,因?yàn)椤皩W⑺詫I(yè)、創(chuàng)新互聯(lián)網(wǎng)站所以易用所以簡(jiǎn)單”。公司專注于為企業(yè)提供成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、微信公眾號(hào)開(kāi)發(fā)、電商網(wǎng)站開(kāi)發(fā),小程序設(shè)計(jì),軟件按需求定制設(shè)計(jì)等一站式互聯(lián)網(wǎng)企業(yè)服務(wù)。當(dāng)你遠(yuǎn)程登錄MySQL時(shí),使用的賬號(hào)要有特殊要求。
默認(rèn)的賬號(hào)的host屬性都是localhost,意思是這個(gè)賬號(hào)只能本地使用,如果要使用某個(gè)賬號(hào)來(lái)遠(yuǎn)程登錄,必須將賬號(hào)的host屬性值更改成%。
執(zhí)行的sql語(yǔ)句如下:
update user set host = '%' where user = 'root';
補(bǔ)充:mysql 修改root密碼 修改賬戶登錄host
遠(yuǎn)程服務(wù)器起了一個(gè)mysql服務(wù),里面有個(gè)hive賬戶,在遠(yuǎn)程服務(wù)器能通過(guò)命令行用mysql -hlocalhost -uxxx -pxxx的方式登錄,但是用navicat客戶端,怎么也登錄不上,而且navicat顯示的還是我自己機(jī)器的ip地址。
初步懷疑,是mysql里的A賬戶密碼沒(méi)有設(shè)置正確。于是需要用root賬號(hào)對(duì)hive賬戶重新進(jìn)行設(shè)置。
坑爹的是,mysql也不是我布的。而且測(cè)試環(huán)境,也不知道該找誰(shuí)要密碼。那就使出終極武器吧:修改root密碼。
首先注意的一點(diǎn):mysql的root賬戶與服務(wù)器的root賬戶不是同一個(gè)概念,不要混為一談。
首先,停掉mysql服務(wù):
sudo service mysql stop
如果有服務(wù)器的root賬戶,自然就不用sudo了,下面所有的操作也是一樣。上面的命令適用于Ubuntu和Debian。CentOS、Fedora和RHEL下使用mysqld替換mysql。下面所有的操作也是一樣。
然后,再以安全模式啟動(dòng)mysql:
sudo mysqld_safe --skip-grant-tables --skip-networking &
這樣我們就可以直接用root登錄,無(wú)需密碼:
mysql -u root
這樣,我們就用root賬戶登錄了mysql。
然后,就可以重置root密碼了:
mysql> use mysql; mysql> update user set password=PASSWORD("mynewpassword") where User='root'; mysql> flush privileges;
重置完畢以后,退出mysql。然后再將mysql服務(wù)啟動(dòng):
sudo service mysql restart
接下來(lái),就是用root賬戶登錄了:
mysql -u root -pmynewpassword
用root賬號(hào)登錄mysql以后,接下來(lái)看看A賬號(hào)的相關(guān)信息:
mysql> use mysql; Database changed mysql> select User, Host from user where User='hive'; +------+--------------+ | User | Host | +------+--------------+ | hive | 127.0.0.1 | +------+--------------+
這一下就明白了。尼瑪難怪navicat客戶端登不了。hive賬戶的host只有127.0.0.1,自然只能在本機(jī)登錄了。
mysql> update user set Host='%' where User='hive';
將hive賬戶設(shè)置為所有機(jī)器均可登錄,然后再刷新一下權(quán)限:
mysql> flush privileges;
再查看一把:
mysql> select User, Host from user where User='hive'; +------+------+ | User | Host | +------+------+ | hive | % | +------+------+
看完上述內(nèi)容,你們掌握怎么對(duì)MySQL用戶的host屬性進(jìn)行修改的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!