seconds between keepalives 設置為10就好了, 這個值有什么含義,服務器為了節省資源采取了一些措施,其中一條就是如果檢測一個會話(session)幾分鍾或者幾小時沒有數據流入或者流出就會斷開這個鏈接,占着茅坑不拉屎就是說這種情況,設置了putty中keepalive這個值之后比如是10,那putty每隔10秒就給服務器發送一個空數據包,以此來表示我還沒拉完屎呢?這樣廁所看管員就不會把我們踢出去了。
我這里找到了putty官方網站中關於keepalive的說明:
4.13 The Connection panel
The Connection panel allows you to configure options that apply to more than one type of connection.
4.13.1 Using keepalives to prevent disconnection
If you find your sessions are closing unexpectedly (most often with ‘Connection reset by peer’) after they have been idle for a while, you might want to try using this option.
Some network routers and firewalls need to keep track of all connections through them. Usually, these firewalls will assume a connection is dead if no data is transferred in either direction after a certain time interval. This can cause PuTTY sessions to be unexpectedly closed by the firewall if no traffic is seen in the session for some time.
The keepalive option (‘Seconds between keepalives’) allows you to configure PuTTY to send data through the session at regular intervals, in a way that does not disrupt the actual terminal session. If you find your firewall is cutting idle connections off, you can try entering a non-zero value in this field. The value is measured in seconds; so, for example, if your firewall cuts connections off after ten minutes then you might want to enter 300 seconds (5 minutes) in the box.
Note that keepalives are not always helpful. They help if you have a firewall which drops your connection after an idle period; but if the network between you and the server suffers from breaks in connectivity then keepalives can actually make things worse. If a session is idle, and connectivity is temporarily lost between the endpoints, but the connectivity is restored before either side tries to send anything, then there will be no problem - neither endpoint will notice that anything was wrong. However, if one side does send something during the break, it will repeatedly try to re-send, and eventually give up and abandon the connection. Then when connectivity is restored, the other side will find that the first side doesn't believe there is an open connection any more. Keepalives can make this sort of problem worse, because they increase the probability that PuTTY will attempt to send data during a break in connectivity. (Other types of periodic network activity can cause this behaviour; in particular, SSH-2 re-keys can have this effect. See section 4.19.2.)
在用navicat遠程連接數據庫之后,一段時間沒有操作也會有斷開連接這種情況,原理和putty的設置是一樣的,在連接的高級設置里面有個keep alive 設置為10或者20就行。