問題歸納:MySQL Server has gone away?git
遇到這個問題還得追溯到此次前往南通軟件園出差。當天下午下班以前,主管說可能明天出差,把項目和最新的數據庫備份一下,備份完成以後,也沒在乎,何況還沒肯定呢,這僅僅是可能,至於這個可能性有多少,管他呢!原諒我自己就是一個不喜歡把公司的項目運行在本身筆記本上的心態。github
晚上11點左右接到項目主管確認出差的電話,具體在哪兒,怎麼去,都沒說。僅僅說把項目部署到本身的筆記本上。得虧本身的開發環境和公司同樣,想一想這應該花不了多長時間,項目導入到MyEclipse ,將備份好的數據庫腳本導入到MySQL運行便可。可是,因爲公司項目中的數據實在是太大了,光一個數據庫腳本就200+M。腳本中包含數據庫結構和客戶的業務數據。不少人都認爲,公司的業務數據怎麼能隨便備份,小公司,別太在乎這些小問題。sql
在運行SQL腳本過程當中,出現了這樣的錯誤:ERROR : (2006, 'MySQL server has gone away')。在網上查了下,其實網友仍是比較靠譜的。根據網友提供的出現該問題的緣由,自認爲是因爲長時間執行批量的MySQL語句,SQL運行時間長,insert 插入數據比較多,傳送的數據太大引發的,最多見的緣由是採集或新舊數據的轉化。事實證實本身是對的。數據庫
爲了簡便,直接在dos命令行下進行的操做。spa
>show global variables like '%timeout'; >set wait_timeout=2880000; >set interactive_timeout=2880000; >show global variables like 'max_allowed_packet'; >set global max_allowed_packet=1024*1024*16;
而後source d.sql;再次進行備份,順利解決,不會再出現以上問題。命令行
做者:itRed 博客:http://itred.cnblogs.com |