TOMCAT JDBC連線不上MYSQL的常用診斷

2021-07-10 13:33:43 字數 1401 閱讀 6266

下面對常見的情況進行分析:

1、web和資料庫作業系統是否有問題

web端系統日誌報錯:ip_conntrack: table full, dropping packet

該報錯說明web伺服器有掉包情況,需要更改配置

# vim /etc/sysctl.conf  新增如下行

net.ipv4.netfilter.ip_conntrack_max = 655350

net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 1200

有些系統是新增如下2行

net.nf_conntrack_max = 524688

net.netfilter.nf_conntrack_tcp_timeout_established = 1200

# sysctl -p

上面狀態跟蹤表的最大行數(nf_conntrack_max)最大值計算方式如下:

conntrack_max = ramsize (in bytes) / 16384 / (arch / 32)

因此記憶體為32g的64位系統的狀態跟蹤表的最大行數理論值為:

conntrack_max = 32*1024*1024*1024/16384/2 = 1048576

#  echo "163840" > /sys/module/nf_conntrack/parameters/hashsize  

雜湊表大小通常為總表的1/8,最大為1/2:conntrack_buckets = conntrack_max / 8       

2、是否能telnet連通mysql ip+port,防火牆問題iptables

檢視mysql伺服器端是否限制了3306埠的訪問。

3、賬號和許可權是否正確 

mysql賬號由username@ip組成,如果僅僅username相同,而web的ip不在@ip範圍內,是無法連線上mysql的

4、連線數是否超過最大限制

報錯:too many connections

error

設定max_connections為更大的值或檢視jdbc是否配置了連線池

5、登陸失敗數達到最大值max_connect_err/flush hosts;

當有使用者連線mysql密碼一直錯誤,超過max_connect_errors=1000會報錯:error 1129 (00000): host 『gateway』 is blocked because of many con

執行mysqladmin -u username -p flush-hosts即可。

6、mysql埠是否被其它程式占用

有時候會存在mysql埠被占用的情況, 請在腦海中注意這點,在所有判斷都錯誤的時候,也行就是這個問題導致的。

mysql 連線不上 mysql連線不上怎麼辦

下面是mysql的連線方式 使用mysql二進位制方式連線 您可以使用mysql二進位制方式進入到mysql命令提示符下來連線mysql資料庫。例如以下是從命令列中連線mysql伺服器的簡單例項 root host mysql u root p enter password 在登入成功後會出現 my...

SAM BA連線不上

at91sam9260與sam ba的連線是由於晶元內有一段固化的 執行起來後才會檢測到目標板並建立連線。假設現在你燒寫了bootstrap進去,晶元上電後發現有可執行的 從而就不執行片內固化的那個 因此,就無法與sam ba建立連線。解決方法主要有以下幾個方面 1.在開發板上已經預留了處理這個問題...

sql yog 連線不上

root 許可權沒有要增加許可權 grant all on to root identified by pass 將mysql 的user 表裡的許可權都設定為y flush privileges 重新整理下任務 檢視user 表裡面是否存在 root,或者 如果有檢視password 是否是你希望...