Can't connect to MySQL server on localhost (10061)解決方法
首先檢查MySQL 服務(wù)沒(méi)有啟動(dòng)》如果沒(méi)有啟動(dòng),則要啟動(dòng)這個(gè)服務(wù)。
有時(shí)候安裝mysql后使用mysql命令時(shí)報(bào)錯(cuò) Can't connect to MySQL server on localhost (10061),或者用net start mysql 時(shí)報(bào)服務(wù)名無(wú)效,一般是因?yàn)閙ysql服務(wù)沒(méi)有啟動(dòng)。
這時(shí)候可以用管理身份運(yùn)行cmd.exe(注意必須是管理員身份運(yùn)行),否則會(huì)報(bào)Install/Remove of the Service Denied! 可以在下圖路徑中找到cmd.exe,右鍵用管理員身份運(yùn)行。
cmd在管理員權(quán)限的幾種運(yùn)行方法
1、win+R打開(kāi)運(yùn)行窗口。
2、在找到的cmd.exe中點(diǎn)右鍵,選擇,以管理員身份運(yùn)行。
第二種方法
直接搜索欄輸入CMD后(不要立即回車(chē)進(jìn)入),按住CTRL+SHIFT+ENTER
鍵可直接進(jìn)入管理員模式命令行。
第三種方法、如果安裝了powershell的朋友可以如下
然后將mysql加入到Windows的服務(wù)中。切換到mysql安裝目錄下的bin文件夾,命令行運(yùn)行"mysqld --install"。
C:\Program Files\MySQL\MySQL Server 5.6\bin>mysqld --install
此時(shí)使用“net start mysql”成功啟動(dòng)msyql,一般就可以正常啟動(dòng)mysql了
有時(shí)候還是解決不了
mysql8版本的問(wèn)題
我實(shí)測(cè)的MySQL8.0安裝方法和網(wǎng)上的所有教程都不同,所以我不對(duì)比了,我直接說(shuō)我摸索的正確步驟。
1.下載MySQL8.0后解壓,根目錄沒(méi)有data文件夾和my.ini文件,我們也不要?jiǎng)?chuàng)建。
2.將“根目錄/bin”路徑添加到環(huán)境變量中,如果不添加就每次執(zhí)行命令的時(shí)候都要帶路徑,因?yàn)槲姨砑恿耍晕沂遣粠窂降摹?br />3.用管理員啟動(dòng)命令行,win10是右鍵左下角win圖標(biāo),選擇“Windows powershell(管理員)”。
4.輸入mysqld--initialize-insecure--user=mysql
5.然后輸入mysqld --install mysql(這一步和博客不同)
6.net start mysql
7.mysql -uroot -p 這時(shí)候要輸入密碼,因?yàn)闆](méi)有密碼默認(rèn)按回車(chē)即可進(jìn)入mysql>,但是不能直接輸入mysql進(jìn)入數(shù)據(jù)庫(kù),一定要mysql -uroot -p回車(chē)然后再回車(chē)。
以上操作之后,是不能用最新的Navicat for SQL建立鏈接的,好像是加密方式不同導(dǎo)致的,一下操作可以設(shè)立密碼+修復(fù)不能用Navicat的問(wèn)題:
8.進(jìn)入mysql后,下列操作可以建立密碼,并且實(shí)現(xiàn)Navicat鏈接: ALTER USER 'root'@'localhost' IDENTIFIED BY '密碼' PASSWORD EXPIRE NEVER;
是ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密碼';
FLUSH PRIVILEGES;
特殊說(shuō)明:
1.這個(gè)方法是我參考博客+自己摸索的,博客內(nèi)容不多,大家可以比較,我一步一步慢慢來(lái)發(fā)現(xiàn)不能自己建data文件夾、不能自己建立my.ini,摸索過(guò)程真是...
2.我并不是按照上面的順序成功的,實(shí)際是失敗了很多次之后,按照博客的方法執(zhí)行了mysqld--removemysql,然后把data文件夾和my.ini文件刪除了,從第4部開(kāi)始,后面成功了。
下面是其他網(wǎng)友的補(bǔ)充
昨天,重起服務(wù)器后出現(xiàn)MySQL 'localhost' (10061)錯(cuò)誤,開(kāi)始以為是因?yàn)閿?shù)據(jù)庫(kù)鏈接打開(kāi)過(guò)多,數(shù)據(jù)庫(kù)資源耗盡的緣故,但是重啟服務(wù)器以后,仍舊出現(xiàn)問(wèn)題,于是在網(wǎng)上查找解決方法。大體如下:
mysql5版本
解決辦法:
第一步
刪除c:\windows\下面的my.ini
第二步
打開(kāi)c:\mysql\bin\winmysqladmin.exe 輸入用戶(hù)名 和密碼
第三步 在dos下 輸入 mysqld-nt -remove 刪除服務(wù)
在接著輸入 mysqld-nt -install
第四步 輸入mysql 啟動(dòng)成功。
其它可參考的方法:
1.看看hosts文件中l(wèi)ocalhost是不是指向127.0.0.1
2.如果是沒(méi)啟動(dòng)mysql服務(wù),則可運(yùn)行net start mysql。
3.一些相關(guān)命令:
mysqld-nt --install #啟動(dòng)Mysql
mysql #運(yùn)行Mysql
mysql -h ipAddress -u username -p
或者:直接去bin里點(diǎn)mysqld.exe或mysqld-nt.exe,看下它的進(jìn)程能否正常運(yùn)行,如不行,再去控制面板,服務(wù)里去啟動(dòng)它,看下是什么錯(cuò)誤。如果不行,就在添加刪除里刪去mysql,然后再重裝mysql,一般都能解決問(wèn)題,可以在安裝前備份一下DATA。
Error: Can't connect to MySQL server on 'localhost' (10061)
Errno.: 2003
錯(cuò)誤編號(hào):2003
問(wèn)題分析:
無(wú)法連接到 MySQL 服務(wù)器,可能的情況為:
1、MySQL 服務(wù)沒(méi)有啟動(dòng),一般是在異常的情況下 MySQL 無(wú)法啟動(dòng)導(dǎo)致的,比如無(wú)可用的磁盤(pán)空間,my.ini 里 MySQL 的 basedir 路徑設(shè)置錯(cuò)誤等;
2、MySQL 服務(wù)器資源緊張,導(dǎo)致無(wú)法連接。
解決方法:
1、如果你是虛擬主機(jī)用戶(hù)(購(gòu)買(mǎi)的空間),則聯(lián)系空間商檢查 MySQL 是否正常啟動(dòng),并確認(rèn) MySQL 的配置信息(是否為 localhost);
2、如果你是獨(dú)立主機(jī)用戶(hù)(擁有管理主機(jī)權(quán)限),則按下面步驟檢查:
1)檢查磁盤(pán)空間是否還有剩余可用空間,盡量保持有足夠的磁盤(pán)空間可用。
2)檢查 my.ini 里的 basedir (MySQL 安裝地址) 和 datadir (數(shù)據(jù)目錄存放地址)等參數(shù)設(shè)置是否正確,然后重新啟動(dòng)下 MySQL 服務(wù)。
還有一種方法是將服務(wù)器的windows補(bǔ)丁。
微軟9月9日發(fā)布了TCP/IP更新補(bǔ)丁(KB967723),如果服務(wù)器開(kāi)啟自動(dòng)更新或者有自動(dòng)更新軟件下載更新了這個(gè)補(bǔ)丁,那么就會(huì)出現(xiàn)這個(gè)問(wèn)題。
有人可能會(huì)問(wèn),為什么9號(hào)出現(xiàn)的補(bǔ)丁,到現(xiàn)在才發(fā)現(xiàn)問(wèn)題?
大家都知道,服務(wù)器不是每天都重啟的,有的服務(wù)器可能一個(gè)月或者一年半載重啟一次,有的可能在9月9日以后重啟過(guò)服務(wù)器,所以補(bǔ)丁生效了(我個(gè)人這么認(rèn)為)。
補(bǔ)丁卸載方法:登錄服務(wù)器,進(jìn)入控制面板 --- 添加和刪除程序 -- (勾選上方的“顯示更新”)
在里面可以看到更新的KB967723這個(gè)補(bǔ)丁,然后就想卸載普通軟件一樣卸載,卸載中會(huì)提示你,如果卸載可能導(dǎo)致程序運(yùn)行出錯(cuò),沒(méi)關(guān)系,選擇“是”,繼續(xù)卸載。
卸載完成后程序服務(wù)器,一切正常!
至于該補(bǔ)丁修補(bǔ)什么漏洞,卸載后是否會(huì)出現(xiàn)服務(wù)器安全隱患,這個(gè)先不說(shuō),要MYSQL正常運(yùn)行,臨時(shí)的解決辦法只有如此。
還有種情況下,你可以這樣解決
Discuz! info: Can not connect to MySQL server
Time: 2007-11-13 6:25pm
Script: /bbs/index.php
Error: Can't connect to MySQL server on 'localhost' (10061)
Errno.: 2003
Similar error report has beed dispatched to administrator before.
正常情況下原因如下:
網(wǎng)站論壇訪(fǎng)問(wèn)量過(guò)大,數(shù)據(jù)庫(kù)連接超過(guò)最大連接數(shù).MYSQL數(shù)據(jù)庫(kù)服務(wù)停止了.
解決方法(針對(duì)WIN系統(tǒng)):
1, 首先到系統(tǒng)服務(wù)里面找到MYSQL服務(wù)并啟動(dòng)MYSQL服務(wù).
2, 到MYSQL安裝目錄找到MY.INI文件,打開(kāi)MY.INI查找max_connections 修改連接數(shù)為1000 重啟IIS與MYSQL服務(wù).
window 下
命令行下輸入:
>cd E:\mysql\bin
>mysqladmin -u root password 你的密碼
>mysql -u root -p
Enter password: 你的密碼
便可以
、、、、、、、、、、、、、、、、、
找到了根本原因,在此涼一下:
導(dǎo)致此問(wèn)題的根源在:因?yàn)榻omysql的root設(shè)置了密碼,而不是最初安裝好時(shí)的密碼為空,所以使用
mysqladmin version這樣子不行了,必須這樣子:mysqladmin -uroot -p version,回車(chē)后按照提示要求輸入
root密碼即可成功運(yùn)行命令。
第一種方法其實(shí)就是在不知道root密碼的情況下的一種解決辦法,那樣子啟動(dòng)不用密碼即可進(jìn)mysql
里面并進(jìn)行root密碼的修改,解決忘記了root密碼的問(wèn)題。
輸入命令“mysqladmin -u root password 你的密碼”作用是修改root用戶(hù)的密碼,這條命令能夠不經(jīng)
提示輸入原密碼而成功執(zhí)行,也說(shuō)明了原密碼是空。之后使用修改后的密碼自然能夠成功登錄。
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。怎么更改密碼?
首先要聲明一點(diǎn),大部分情況下,修改MySQL是需要有mysql里的root權(quán)限的,所以一般用戶(hù)無(wú)法更改密碼
,除非請(qǐng)求管理員。
方法一
使用phpmyadmin,這是最簡(jiǎn)單的了,修改mysql庫(kù)的user表,
不過(guò)別忘了使用PASSWORD函數(shù)。
方法二
使用mysqladmin,這是前面聲明的一個(gè)特例。
mysqladmin -u root -p password mypasswd
輸入這個(gè)命令后,需要輸入root的原密碼,然后root的密碼將改為mypasswd。
把命令里的root改為你的用戶(hù)名,你就可以改你自己的密碼了。
當(dāng)然如果你的mysqladmin連接不上mysql server,或者你沒(méi)有辦法執(zhí)行mysqladmin,
那么這種方法就是無(wú)效的。
而且mysqladmin無(wú)法把密碼清空。
下面的方法都在mysql提示符下使用,且必須有mysql的root權(quán)限:
方法三
mysql> INSERT INTO mysql.user (Host,User,Password)
VALUES('%','jeffrey',PASSWORD('biscuit'));
mysql> FLUSH PRIVILEGES
確切地說(shuō)這是在增加一個(gè)用戶(hù),用戶(hù)名為jeffrey,密碼為biscuit。
在《mysql中文參考手冊(cè)》里有這個(gè)例子,所以我也就寫(xiě)出來(lái)了。
注意要使用PASSWORD函數(shù),然后還要使用FLUSH PRIVILEGES。
方法四
和方法三一樣,只是使用了REPLACE語(yǔ)句
mysql> REPLACE INTO mysql.user (Host,User,Password)
VALUES('%','jeffrey',PASSWORD('biscuit'));
mysql> FLUSH PRIVILEGES
方法五
使用SET PASSWORD語(yǔ)句,
mysql> SET PASSWORD FOR " = PASSWORD('biscuit');
擬也必須使用PASSWORD()函數(shù),
但是不需要使用FLUSH PRIVILEGES。
方法六
使用GRANT ... IDENTIFIED BY語(yǔ)句
mysql> GRANT USAGE ON *.* TO " IDENTIFIED BY 'biscuit';
這里PASSWORD()函數(shù)是不必要的,也不需要使用FLUSH PRIVILEGES。
注意: PASSWORD() [不是]以在Unix口令加密的同樣方法施行口令加密。
MySQL 忘記口令的解決辦法
如果 MySQL 正在運(yùn)行,首先殺之: killall -TERM mysqld。
啟動(dòng) MySQL :bin/safe_mysqld --skip-grant-tables &
就可以不需要密碼就進(jìn)入 MySQL 了。
然后就是
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;
重新殺 MySQL ,用正常方法啟動(dòng) MySQL 。
linux下
方法一:
# /etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
mysql> FLUSH PRIVILEGES;
mysql> quit
# /etc/init.d/mysql restart
# mysql -uroot -p
Enter password: <輸入新設(shè)的密碼newpassword>
mysql>
方法二:
直接使用/etc/mysql/debian.cnf文件中[client]節(jié)提供的用戶(hù)名和密碼:
# mysql -udebian-sys-maint -p
Enter password: <輸入[client]節(jié)的密碼>
mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
mysql> FLUSH PRIVILEGES;
mysql> quit
# mysql -uroot -p
Enter password: <輸入新設(shè)的密碼newpassword>
mysql>
方法三:
# mysql -uroot -p
Enter password: <輸入/etc/mysql/debian.cnf文件中[client]節(jié)提供的密碼>
- MySQL連接異常報(bào)10061錯(cuò)誤問(wèn)題解決
- 解決MySQL啟動(dòng)報(bào)錯(cuò):ERROR 2003 (HY000): Can''t connect to MySQL server on ''localhost'' (10061)
- Navicat premium連接數(shù)據(jù)庫(kù)出現(xiàn):2003 Can''t connect to MySQL server on''localhost''(10061)
- 詳解使用navicat連接遠(yuǎn)程linux mysql數(shù)據(jù)庫(kù)出現(xiàn)10061未知故障
- mysql出現(xiàn)提示錯(cuò)誤10061的解決方法
- Ubuntu Server 16.04安裝MySQL設(shè)置遠(yuǎn)程訪(fǎng)問(wèn)出現(xiàn)問(wèn)題的完美解決方案(error:10061)
- windows上的mysql服務(wù)突然消失提示10061 Unkonwn error問(wèn)題及解決方案
相關(guān)文章
淺談mysql通配符進(jìn)行模糊查詢(xún)的實(shí)現(xiàn)方法
這篇文章主要介紹了淺談mysql通配符進(jìn)行模糊查詢(xún),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07MySQL 四種事務(wù)隔離級(jí)別詳解及對(duì)比
這篇文章主要介紹了MySQL 四種事務(wù)隔離級(jí)別詳解及對(duì)比的相關(guān)資料,這里對(duì)Mysql 的基礎(chǔ)知識(shí)做了詳細(xì)介紹及對(duì)其事務(wù)隔離進(jìn)行了比較,需要的朋友可以參考下2016-12-12mysql insert if not exists防止插入重復(fù)記錄的方法
在 MySQL 中,插入(insert)一條記錄很簡(jiǎn)單,但是一些特殊應(yīng)用,在插入記錄前,需要檢查這條記錄是否已經(jīng)存在,只有當(dāng)記錄不存在時(shí)才執(zhí)行插入操作,本文介紹的就是這個(gè)問(wèn)題的解決方案。2011-04-04mysql入門(mén)之1小時(shí)學(xué)會(huì)MySQL基礎(chǔ)
今天剛好看到了SYZ01的這篇mysql入門(mén)文章,感覺(jué)對(duì)于想學(xué)習(xí)mysql的朋友是個(gè)不錯(cuò)的資料,腳本之家特分享一下,需要的朋友可以參考下2018-01-01mysql SKIP-NAME-RESOLVE 錯(cuò)誤的使用時(shí)機(jī)造成用戶(hù)權(quán)限
新加的一臺(tái)服務(wù)器,連接內(nèi)網(wǎng)中的一臺(tái)mysql服務(wù)器的時(shí)候,經(jīng)常出現(xiàn)超時(shí)。2011-06-06MYSQL神秘的HANDLER命令與實(shí)現(xiàn)方法
這篇文章主要介紹了MYSQL神秘的HANDLER命令與實(shí)現(xiàn)方法,需要的朋友可以參考下2016-07-07mysql 5.6.14 win32 解壓縮版(免安裝)安裝配置教程
這篇文章主要介紹了mysql 5.6.14 win32 解壓縮版(免安裝)安裝配置教程,感興趣的小伙伴們可以參考一下2016-11-11Mysql auto_increment 重新計(jì)數(shù)(讓id從1開(kāi)始)
當(dāng)清空一個(gè)表的時(shí)候,重新插入數(shù)據(jù),發(fā)現(xiàn)auto_increment屬性的字段計(jì)數(shù)不是從1開(kāi)始的時(shí)候,可以使用以下命令2012-12-12