mysql命令行設置支持blob大數據的導入

做過一些項目,使用了blob字段保存二進制信息,以方便把對象完整保存起來。導出sql文件時沒有問題,然而,在導入時就報 [Err] 2006 - MySQL server has gone away 錯誤。
如果知道mysql正在使用哪個ini配置文件,則直接在配置文件裏修改配置則可解決問題:

  • wait_timeout=2880000
  • interactive_timeout = 2880000
  • max_allowed_packet = 10M

保存後從服務裏重啓mysql服務即可。

然而,有時候,由於不熟悉mysql,不知道使用的是哪個ini配置文件,幾經修改無效後,只能通過命令設置使之生效了。
【查詢全局配置】:

  • show global variables like “%timeout%”;
  • show global variables like “%packet%“;

【 修改全局配置】:
- set global interactive_timeout= 280000;
- set global wait_timeout= 280000;

不過,這種方法只是修改內存裏的變量,修改完後,並沒有保存起來,重啓mysql服務就恢復變量值了。是個治標不治本的方法。
想要解決這個問題,還是得找出ini配置文件。怎麼找呢。

後來發現,在windows環境下,查看mysql服務屬性發現服務的執行文本是這樣的:
“C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqld.exe” –defaults-file=”C:\ProgramData\MySQL\MySQL Server 5.7\my.ini” MySQL57”

啊,原來這個配置文件這樣被配置了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章