使用bat指令碼執行MySQL命令時遇到的坑
相關文章:(推薦)bat指令碼執行mysql命令匯入sql檔案到資料庫 https://blog.csdn.net/womenrendeme/article/details/75799515
背景:
作為一個初級小白,因為前段時間接觸了專案的實施部署,發現,在資料庫匯入資料或更新資料庫時,原來除了使用navicat這樣一些工具外,也可以使用bat批量命令列,對於實施人員來說其實更簡單。
建立一個bat檔案,內容如下(圖中有錯,正確版請看文章最後):(圖中的01、02兩個sql檔案和bat檔案放在同個目錄下)
在後期整理中,想學習一下,於是在自己的開發環境試了一下,發現一些問題,記錄如下:
坑一: ”mysql不是內部命令也不是可執行的程式“
原因:沒有配置MySQL的環境變數
解決:配置方式類似於JDK的配置。將MySQL的安裝路徑下的bin目錄,將路徑新增到系統變數的path屬性中即可,注意要加;與其它分隔。
坑二:“ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using passwor)”
原因:出現這個問題,一般就是資料庫連線引數有問題,主機,使用者名稱,密碼等
解決:我是寫錯了密碼,所以換了正確的密碼即可。當然,網上有許多關於這個報錯的討論,通常是忘記了密碼需要重設等,具體請參考:
https://www.cnblogs.com/qq78292959/p/3641972.html
https://blog.csdn.net/lisongjia123/article/details/57418989
坑三:“ERROR 1043<08S01>: Bad handshake”
原因:查了以下錯誤程式碼,發現是”無效連線“。
解決:未解決,網上很少資料,查了一下好像是MySQL版本的問題,因為連線的庫不在本地無法確定版本,也改不了,所以無法解決,求等大神指導!
請參考:https://lists.mysql.com/mysql/175966
為了繼續進行下去,我在本地拷貝配置了一個資料庫,本地版本MySQL8.0,則不再出現這個報錯。
坑四:“ERROR 1046 (3D000) at line 15: No database selected”
原因:字面上看,就是”沒有選擇資料庫“
解決:其實,就是bat命令裡面的命令列引數漏了資料庫名。。。(不要問我為什麼犯這種低階錯誤,這是之前專案實施文件已有的檔案。。。真不知道之前是怎麼執行的。。。),最終修改後如下:
雙擊執行該bat檔案,成功!完美!
總結:還是好好用navicat吧!除了像我們這種開發,實施維護人員應該更加熟練了!當然,批處理命令是完全封裝好了,實施人員雙擊傻瓜式操作確實最簡單,這塊自己完全是小白,有機會可以好好研究一下!
結束和宣告
以上純屬個人觀點和體會,相關的資料和觀點來自網路的朋友們!
希望這篇文章能對你有所幫助!
歡迎大家來一起討論分享乾貨,或者批評指正!
更加熱切盼望各路大神前輩給些指導和建議!
轉載請註明出處!或者聯絡我!(chenruijia_java@163.com)
相關文章
- ssh執行遠端指令碼遇到的坑指令碼
- 使用MySQL時遇到的各種坑MySql
- Linux 定時執行指令碼、命令Linux指令碼
- MySQL執行外部sql指令碼檔案的命令MySql指令碼
- windows bat指令碼 後臺執行目標exeWindowsBAT指令碼
- sqlplus執行指令碼時遇到錯誤自動停止SQL指令碼
- Windos bat批處理指令碼,判斷是終端命令列執行,還是雙擊執行BAT指令碼命令列
- [轉]使用ts-node執行ts指令碼以及踩過的坑指令碼
- MySQL 5.5 執行指令碼中的SQLMySql指令碼
- xcall叢集執行命令指令碼指令碼
- CentOS使用expect批次遠端執行指令碼和命令CentOS指令碼
- 使用constexpr時遇到的小坑
- javascript指令碼何時被執行JavaScript指令碼
- 如何使用Docker構建執行時間較長的指令碼Docker指令碼
- linux指令碼完成重複執行的命令Linux指令碼
- LINUX 自動執行指令碼的命令配置Linux指令碼
- 自己寫的殺mysql執行緒的指令碼MySql執行緒指令碼
- sqlplus 執行大量sql指令碼時遇到問題分析(很常見)SQL指令碼
- 總結:使用MyBatis Generator時遇到的坑MyBatis
- 使用Golang時遇到的一些坑Golang
- 如何使用Linux的Crontab定時執行PHP指令碼的方法LinuxPHP指令碼
- 如何在 Linux 啟動時自動執行命令或指令碼Linux指令碼
- shell指令碼linux命令連續執行指令碼Linux
- 通過 Redis 定時執行指令碼Redis指令碼
- javascript指令碼何時會被執行JavaScript指令碼
- Linux定時執行.sh指令碼Linux指令碼
- Linux Source命令及指令碼的執行方式解析Linux指令碼
- shell指令碼命令 執行python檔案&python命令列執行python程式碼指令碼Python命令列
- 啟動vi時自動執行的指令碼指令碼
- bat指令碼的基本操作BAT指令碼
- 使用expect執行動態指令碼指令碼
- Go執行指令碼命令用例及原始碼解析Go指令碼原始碼
- 在 Linux 命令列指令碼中執行 sudo 時自動輸入密碼Linux命令列指令碼密碼
- Windows ntp時間同步設定(bat指令碼)WindowsBAT指令碼
- PHP 使用檔案鎖 避免同時執行一個指令碼PHP指令碼
- Linux後臺執行指令碼命令之nohupLinux指令碼
- 通過RFT命令列執行測試指令碼命令列指令碼
- sleep 時間段不佔指令碼執行時間指令碼