之前在做sqli-labs練習,需要用到into outfile 出現以下問題:
執行SQL語句后在指定的路徑下無文件生成。
例如:
執行 select into outfile "C:\\phpstudy1\\PHPTutorial\\WWW\\sqli-labs-master\\Less-49\\mmm.php" ;
出現報錯
The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
解決方法:
關於 secure-file-priv 這個參數是限制MySQL當前能否進行導入導出操作的。
進入MySQL命令行輸入:show variables like '%secure%';查看 secure-file-priv 當前的值是什么
如果值為null,需要在你的MySQL配置文件中的my.ini文件添加或修改一句話。
我添加的是:secure_file_priv="/"
添加完后需要重啟MySQL服務。
這里是最關鍵的,如果使用的是phpstudy的同學可能會發現我點下圖的重啟MySQL之后
再去命令行查看secure_file_priv的值發現還是null。
這里我覺得可能是phpstudy2018本身的bug,建議大家打開服務,在服務中重啟MySQL:
重啟完之后再去查看發現更改完成了。