1. 程式人生 > 其它 >使用遷移助手 clone MacBook Pro 配置到另一臺機器出的一系列 MySQL 問題 ERROR! The server quit without updating PID file (/usr/local/var/mysql/.pid)

使用遷移助手 clone MacBook Pro 配置到另一臺機器出的一系列 MySQL 問題 ERROR! The server quit without updating PID file (/usr/local/var/mysql/.pid)

問題覆盤

事情是這樣的, 在遷移 MacBook Pro 的配置後, 我們先執行 brew services start [email protected] 是沒有異常的, 但是用 DataGrip 測試連線
出現

[08S01] Communications link failure  The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. Communications link failure 

問題, 忘記截圖了

之後意識到 brew services 其實啟動沒有成功

使用 brew list [email protected] 找到 mysql 的位置在命令列啟動, 執行/usr/local/Cellar/[email protected]/5.7.35/bin/mysql ,
出現

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

錯誤,

之後執行 sudo /usr/local/Cellar/[email protected]/5.7.35/bin/mysql.server start
出現

Starting MySQL
.Logging to '/usr/local/var/mysql/${yourMacBooksName}.local.err'.
 ERROR! The server quit without updating PID file (/usr/local/var/mysql/${yourMacBooksName}.local.pid).

看了很多部落格, 試了不少方法, 有一個讓完全解除安裝然後重灌,
mac mysql報錯:The server quit without updating PID file (/usr/local/var/mysql/mac_name.local

但是出現許可權問題, 使用 sudo 都不行, 報

Error: Running Homebrew as root is extremely dangerous and no longer supported.

錯誤, 還執行了一堆命令

brew remove mysql
brew cleanup
launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
sudo rm -rf /usr/local/var/mysql

brew install mysql
mysql.server start # no sudo!

沒什麼用, 還改了一堆 own

應該早看 StackOverflow 解決方案

最後執行這個 sudo chmod -R 777 /usr/local/var/mysql/

之後出現了

javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)  可能禁用了以下必需的演算法: SSLv3, TLSv1, TLSv1.1, RC4, DES, MD5withRSA, DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, include jdk.disabled.namedCurves。編輯禁用演算法的列表以納入必需的演算法。您可以先嚐試啟用 TLSv1 或 TLSv1.1。  JDBC 驅動程式可能已禁用 TLS 1.1 及其更早的版本。. 

已經沒有截圖, 查了是 Java8 以後加密演算法的問題, 在 DataGrip 中選擇啟用***協議(記不清了) 就行

總結

  • Google && StackOverflow comes first!