mysql的1045解決方法


mysql的連接方式有兩種:

  • UNIX域套接字連接,如:

    mysql -u root -p

    mysql -h localhost -u root -p

  • TCP/IP套接字連接,如:

    mysql -h 客戶端ip -u root -p


mysql數據庫中的user表中的host值限制着mysql用戶只能以什么樣的方式連接。

host

user

127.0.0.1

root

::1

root

localhost

mysql

localhost

root

localhost

abc

Localhost.localdomian

root

以上是我的 user 表中的 host user

根據user表中的host值來看,root用戶可以在任何機器對mysql進行連接,而mysqlabc用戶只能在本地使用UNIX域套接字的方式連接mysql


命令

連接類型

mysql -u user -p

UNIX域套接字

mysql –socket=/tmp/my.sock -u user -p

UNIX域套接字

mysql -h localhost -u user -p

UNIX域套接字

mysql -h domain -u user -p

TCP/IP套接字

mysql -h *.*.*.* -u user -p

TCP/IP套接字

mysql -h 127.0.0.1(-p*) -u user -p

TCP/IP套接字

mysql –sock=/tmp/mysql.sock -h 127.0.0.1 -u user -p

TCP/IP套接字

   以上是對 mysql 連接方式的介紹


所以如果在連接mysql 時出現1045提示,說明你的連接方式不正確。只要查看host中的值,然后選擇相應的連接方式即可。


修改用戶的連接方式(只能在ip192.168.109.45的機器連接)

  • 使用updatehost值進行修改:

update user set host = '192.168.109.45' where user = 'mysql';

  • grant修改

grant all privileges on *.* to 'user'@'192.168.109.45 identified by 'password' ;

 

grant的使用方法:grant 權限 on 數據庫對象 to 用戶名@host值;


注:host的值是%時,代表這個用戶可以在任何地方連接mysql


免責聲明!

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



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