解決mysql登錄報錯:ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)


今天在安裝一個壓縮包mysql-5.7.19時,碰到了一系列問題,現將這些問題羅列出來:

一.  ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)

解壓后,把"D:\Program\mysql-5.7.19-winx64\bin"配置到環境變量path下,在cmd中執行登錄操作: mysql -u root -p時,出現這個問題:

在網上搜索資料,查到https://blog.csdn.net/lianzhang861/article/details/78919060,解決方案是: mysqld --install, 安裝完net start mysql

二.  發生系統錯誤 2.  系統找不到指定的文件

這下又貌似行不通了,https://jingyan.baidu.com/article/4e5b3e19245cec91901e24bc.html,這個答案告訴我們要修改注冊表

HKEY_LOCAL_MACHINE

  SYSTEM

    CurrentControlSet

      services

        MySQL

          ImagePath

我的默認值是C:\Program Files\MySQL\MySQL Server 5.7\mysqld,找到該路徑,並沒有發現有MySQL文件,我們將它改為D:\Program\mysql-5.7.19-winx64\bin\mysqld,這個是我真正安裝MySQL的路徑,來,再試一下

瞬間尷尬了,我們找到控制面板--管理工具--服務,決定去啟動它時,發現:

三.  服務沒有任何錯誤。 請鍵入 NET HELPMSG 3534 以獲得更多的幫助

感謝此文作者https://blog.csdn.net/yulutian/article/details/78971369,讓我迷途知返,由於我的mysql根目錄下沒有data目錄和my.ini配置文件,於是新建了一個my.ini,內容為:

注意:這里面要提一句,basedir=后面是你安裝的mysql的bin目錄所在的路徑!

[mysql]
# 設置mysql客戶端默認字符集
default-character-set=utf8 
[mysqld]
#設置3306端口
port = 3306 
# 設置mysql的安裝目錄
basedir=D:\\Program\mysql-5.7.19-winx64
# 允許最大連接數
max_connections=200
# 服務端使用的字符集默認為8比特編碼的latin1字符集
character-set-server=utf8
# 創建新表時將使用的默認存儲引擎
default-storage-engine=INNODB

好,這下子我們按照作者說的,不要新建data目錄,而是讓mysql自動生成,在cmd中執行

這下看似好了,實際還有一個問題

四.  ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password:yes)

參照這篇文章https://blog.csdn.net/keepd/article/details/77151006,找到一個方法,就是在my.ini配置文件中最后一行添加:

skip-grant-tables

保存,然后在cmd中執行

登錄musql

mysql -u root

此處注意不要加-p


修改密碼,mysql5.7用此語法

use mysql ;

update mysql.user set authentication_string=password('123456') where user='root' ;


回到第二步驟去掉加上的,保存

skip-grant-tables

退出

exit

重啟mysql服務

net stop mysql

net start mysq

哎,這時候才可以了,看了我一個多小時,以后還是少用壓縮版。

 


免責聲明!

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



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