問題1:
Error: connect ECONNREFUSED 127.0.0.1:3306 at TCPConnectWrap.afterConnect ...
一番谷歌,解決方法大概有這么幾種:
- 你丫以為不用裝 MySQL 就能跑了么?快去裝數(shù)據(jù)庫觅赊!
- 你數(shù)據(jù)庫運行了么你?趕緊 /etc/init.d/mysqld start 運行起來
- 端口寫錯了
- 你是不是開啟了 skip-networking 這個選項兼砖?Remove it !
然后發(fā)現(xiàn)膏潮,哦,我是第一個問題??辐啄。我以為在終端運行了
node install mysql --save
就可以了澈魄,Mac系統(tǒng)現(xiàn)在默認不安裝MySQL景鼠,需要自己下載安裝。
MySQL 下載
我下載的是MySQL的-8.0.15-macos10.14-x86_64.dmg
這個網(wǎng)址翻墻會比較快
之后下載成功后痹扇,一系列傻瓜式點擊下一步铛漓。然后就出現(xiàn)了問題2。
問題2
node ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client
解決方法:安裝的時候修改密碼強度:默認的為強密碼模式帘营,手動選擇下面一個寬松模式
Mac機修改:在系統(tǒng)偏好設置中點擊MySql票渠,然后點擊初始化。
選擇“Use Legacy Password Encryption”芬迄,點擊OK即可问顷。
問題3
Mac找不到mysql命令
執(zhí)行mysql -u root -p
命令,
- 在home下的.bash_profile中添加export PATH=${PATH}:/usr/local/mysql/bin(確認路徑正確)
- 然后調用source ~/.bash_profile使配置生效
- 這時如果還有問題:Access denied for user 'gemo'@'localhost' (using password: NO)
則重啟Mysql服務即可禀梳。
執(zhí)行命令之后杜窄,輸入安裝時設置的密碼123456(我自己連接數(shù)據(jù)庫的密碼)。即進入MySQL編輯界面算途。在這個界面可以進行數(shù)據(jù)庫的增刪改查操作塞耕。
問題4
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp...
這個是查之前的問題,在nodejs代碼創(chuàng)建數(shù)據(jù)庫連接中添加了socket字段導致的嘴瓤,我刪除之后就可以了扫外。
問題5
mysql connnected
[SELECT ERROR] - ER_NO_DB_ERROR: No database selected
需要創(chuàng)建數(shù)據(jù)庫test莉钙。mysql -u root -p
進入數(shù)據(jù)庫操作界面創(chuàng)建新的數(shù)據(jù)庫test
即可。
問題6
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'show databases' at line 2
對于像我這樣的新手來說筛谚,MySQL數(shù)據(jù)庫磁玉,在命令行使用sql語句進行建庫,查庫驾讲,建表蚊伞,查表。吮铭。时迫。時,MySQL 這樣報錯谓晌。當我知道報錯原因之后掠拳,就很想笑了。
其實這個問題就是語法上的錯誤扎谎√枷耄回頭仔細檢查一下語法編寫烧董,然后在執(zhí)行命令就好了毁靶。
例如我這里,其實是輸入了一條命令逊移,因為沒有這個命令的预吆,導致報錯。
解決辦法:
輸入一行胳泉,而且末尾加上反引號即可拐叉。
在MySQL中,為了區(qū)分MySQL的關鍵字與普通字符扇商,MySQL引入了一個反引號凤瘦,注意檢查編寫sql,保證沒有語法錯誤就OK了
注意:退出一條命令:control+C
問題7
ER_ACCESS_DENIED_ERROR: Access denied for user 'root'@'localhost' (using password:YES
之前還遇到這個問題案铺,是因為我在終端直接進行mysql
的相關命令蔬芥。mysql
命令需要進入MySQL命令界面才可以。mysql -u root -p
命令進入控汉。