mysql5.7文件無法導入數據庫的解決方案


一般是因為my.ini的“secure-file-priv”的設置導致loaddata失敗,網上查了許多資料,大部分都是要求注釋掉my.ini的:

secure-file-priv="C:/ProgramData/MySQL/MySQL Server 5.6/Uploads

mysql5.7沒有my.ini,只有mydefault.ini,復制改一個就ok了。

注釋完不起效果,於是stack-over-flow上查看到這樣一個解決方案:

http://stackoverflow.com/questions/32737478/mysql-how-to-tackle-secure-file-priv

用命令SHOW VARIABLES LIKE "secure_file_priv";查看一下uploads設置,結果uploads文件夾壓根不存在,手動創建之。

loadfile嘗試仍然失敗。

於是想重啟mysql服務,net stop后發現mysql服務壓根沒起來,net start mysql提示無法啟動,服務器沒有報告任何錯誤。

這種情況一般是缺少data目錄,那就進入到mysql5.7的bin目錄,用mysqld --initialize重建之,出現錯誤,提示data目錄中有文件存在,可是我mysql5.7目錄下沒有文件存在啊?這種問題網上壓根找不到答案,抓耳撓腮找了半天也不知道錯誤在哪,

突然發現my.ini中有個設置:datadir=D:/MySql/data    # 設置mysql數據庫的數據的存放目錄,必須是data,或者是//xxx/data  

尋思有沒有可能是my.ini搗鬼,於是把my.ini改了個名字,再次mysqld --initialize,data目錄初始化成功。

net start mysql

再次報錯,無服務器沒有提示任何錯誤

於是用mysqld --console查看詳細信息,提示有服務占用了3306端口

進到系統服務里挨個看,發現有個服務名為mysql5.7,關閉掉

再次net start mysql,啟動成功。

把my.ini名字改回來,順利導入數據到表中,至此問題解決。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM