溫馨提示×

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

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

如何解決mysql本地和遠(yuǎn)程登錄不上的問(wèn)題

發(fā)布時(shí)間:2021-11-30 18:41:34 來(lái)源:億速云 閱讀:374 作者:柒染 欄目:數(shù)據(jù)庫(kù)

本篇文章為大家展示了如何解決mysql本地和遠(yuǎn)程登錄不上的問(wèn)題,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。

mysql本地登錄不上的問(wèn)題

本地登錄不上,即忘記了密碼,該如何解決呢?

首先,我們以不檢查權(quán)限的方式啟動(dòng)mysql,如下:

  1/usr/local/mysql/bin/mysqld --skip-grant-tables &

  然后,就可以直接登錄了,如下:

  1 /usr/local/mysql/bin/mysql -u root

  最后,修改密碼即可。

  1update user set authentication_string=PASSWORD('dequan') where User='root';

  注意:在mysql5.7以及更高版本,使用authentication_string字段代替了Password字段。

mysql遠(yuǎn)程登錄不上的問(wèn)題

針對(duì)以檢查權(quán)限的方式啟動(dòng)的mysql,客戶(hù)端在以某用戶(hù)來(lái)登錄mysql時(shí),mysql服務(wù)端會(huì)檢驗(yàn)該用戶(hù)以及該用戶(hù)所在的ip是否有操作的權(quán)限。mysql可以基于用戶(hù)ip、數(shù)據(jù)庫(kù)、表、操作類(lèi)型等維度來(lái)進(jìn)行授權(quán)操作,授權(quán)的方式有修改mysql庫(kù)里面的user表、執(zhí)行mysql授權(quán)語(yǔ)句等。

1、基于修改user表來(lái)進(jìn)行授權(quán)操作

如果某個(gè)ip登錄不上,即在User表中沒(méi)有對(duì)該ip進(jìn)行授權(quán)。首先,我們看一些user表中的一些字段

  Host: 127.0.0.1

  User: root

  Select_priv: Y

  Insert_priv: Y

  Update_priv: Y

  Delete_priv: Y

  Create_priv: Y

  Drop_priv: Y

  Reload_priv: Y

  Shutdown_priv: Y

  Process_priv: Y

  File_priv: Y

  Grant_priv: Y

  References_priv: Y

  Index_priv: Y

  Alter_priv: Y

  Show_db_priv: Y

  Super_priv: Y

  Create_tmp_table_priv: Y

  Lock_tables_priv: Y

  Execute_priv: Y

  Repl_slave_priv: Y

  Repl_client_priv: Y

  Create_view_priv: Y

  Show_view_priv: Y

  Create_routine_priv: Y

  Alter_routine_priv: Y

  Create_user_priv: Y

  Event_priv: Y

  Trigger_priv: Y

  Create_tablespace_priv: Y

  ssl_type:

  ssl_cipher:

  x509_issuer:

  x509_subject:

  max_questions: 0

  max_updates: 0

  max_connections: 0

  max_user_connections: 0

  plugin: mysql_native_password

  authentication_string: *89E04A681364F578C8E900403166C192A1E8E2B6

  password_expired: N

  password_last_changed: 2017-08-04 10:27:44

  password_lifetime: NULL

  account_locked: N

其中,Host為允許登錄的主機(jī)名或是ip(如果為%,則代表任意ip或是主機(jī)),User登錄用戶(hù),authentication_string為登錄密碼,*_priv為響應(yīng)功能的權(quán)限,比如Select_priv為讀的權(quán)限,Insert_priv寫(xiě)入的權(quán)限,Update_priv更新的權(quán)限,Delete_priv刪除的權(quán)限。

所以,如果要允許root在某個(gè)遠(yuǎn)程主機(jī)ip1上面登錄,則需要,改變對(duì)應(yīng)登錄用戶(hù)的Host字段即可:

  update user set host = 'ip1' where user = 'root';

  //或者

  update user set host = '%' where user = 'root';

最后更新一下權(quán)限即可

  FLUSH RIVILEGES

2、基于mysql授權(quán)語(yǔ)句來(lái)進(jìn)行授權(quán)操作

當(dāng)然,mysql也提供了相應(yīng)的授權(quán)語(yǔ)句,如下:

  grant all privileges on db.table to 'user'@'host' identified by '密碼' with grant option;

  all privileges 代表授予所有的權(quán)限,當(dāng)然我們也可以?xún)H僅授予某些權(quán)限。最后在更新一下權(quán)限,即可

  FLUSH RIVILEGES

上述內(nèi)容就是如何解決mysql本地和遠(yuǎn)程登錄不上的問(wèn)題,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注億速云行業(yè)資訊頻道。

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

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

AI