這回來個錯誤提示的雜談,關於Linux服務器上MySQL導入數據庫文件失敗的一個解決方案,報錯內容:Failed to open file 'sqlname.sql', error: 2
,很傷感哈,這玩意兒感覺還不算的特別智能,解決方案也相對無腦,能解決了就行,是吧?
首先我們來看一下網上盛行的MySQL導入數據庫文件的兩種方法:
方法一:
use databasename;
source /path/sqlfile.sql;
方法二:
mysql -uusername -ppassword database < /path/sqlfile.sql;
結果我使用兩種方法都碰到了這個問題!極其的差異,然後退出MySQL,索性vi一下試了試發現路徑沒問題啊!檢查了一下sql文件也沒有什麼問題,於是時間晚了關機等第二天解決,沒想到第二天一開重新試了下就行了!
當然,我肯定不會這麼不負責的說這樣就是解決方案啦~啊哈,分分鐘搬磚順着網線拍屎我。
後面網上查詢了一下,mysql裏面那些路徑的東西在Linux下貌似是以相對路徑的形式來查詢的,比如我們在/usr/local/tomcat裏面打開的MySQL,那麼裏面的所有路徑都是在/usr/local/tomcat目錄下進行相對路徑查詢的,比如我們之前寫的source /sqlfile/20160825012.sql;
,那在MySQL看來,我們給的指令就是讓它找/usr/local/tomcat/sqlfile/20160825012.sql文件,這樣肯定找不到了,解決辦法就挺簡單的,我們找到準確的目錄cd /sqlfile,然後ls一下確定我們的sql文件妥妥的在裏面,然後打開MySQL,輸入指令source 20160825012.sql;
打工告成!