mysql版本:5.6.21
系統:windows server2012 R2
正常安裝配置后,使用navicat能連接,等各種操作一切正常。因一直習慣了dos命令列操作,就嘗試dos連接,卻連不上,一直提示:
MySQl無法啟動--Can't connect to MySQL server on localhost (10061)
按網上一些辦法折騰幾時,還是沒解決,但是出現如下的詭異【經驗不足,自我感覺】情況:
有某些網友提供了這么一個思路,可能是用戶權限問題,于是執行了mysqld --skip-grant-tables,跳過驗證
再使用mysql -uroot就能進入mysql控制臺了!一頓操作,加用戶,改權限什么的!
折騰半天,從Navicat進入myql.user表一看,內容并沒有變,剛才操作的資料庫和Navicat的庫并不一樣啊。
從系統服務中查看了mysql服務的my.ini組態檔,C:\ProgramData\MySQL\MySQL Server 5.6\my.ini,其中
datadir=C:/ProgramData/MySQL/MySQL Server 5.6/Data,這個為資料庫目錄。確定為Navicat正常鏈接的資料庫目錄。
后排查到:通過跳過驗證方式,再使用dos 下mysql控制臺進入操作的庫的目錄用的是
C:/Program Files/MySQL/MySQL Server 5.6\data 下的資料庫.
DOS下show databases的結果:

Navicat中show databases的結果:

kill mysql相關的各種行程,重啟服務后,Navicat依然正常。dos又不能使用了 ,必須要執行mysqld --skip-grant-tables才能進。但是
結果就是操作的庫根本不是my.ini中指定的。希望有大佬指點迷津 ,謝謝!
附上my.ini指定庫的mysql.user表內容【且通過其他電腦navicat能夠遠程連接并操作資料庫】
localhost root password Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y 0 0 0 0 N
127.0.0.1 root password Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y 0 0 0 0 N
::1 root password Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y 0 0 0 0 N
% root password Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y 0 0 0 0 N
uj5u.com熱心網友回復:
先檢查 一下navicat 連接是哪兒的資料庫?uj5u.com熱心網友回復:
確實就是本地服務器的。my.ini中datadir=C:/ProgramData/MySQL/MySQL Server 5.6/Data 下的庫。
uj5u.com熱心網友回復:
檢查一下變數,有些變數可以看出在哪臺服務器上。比如 slow_query_log_file, general_log_fileuj5u.com熱心網友回復:
連的不是一個庫吧,你看你的MySQL 服務里面 指向的組態檔是哪個轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/28443.html
標籤:MySQL
上一篇:小白求大神解答
