當(dāng)前位置:
首頁(yè) >
新搭建mysql容易出现问题
發(fā)布時(shí)間:2025/3/15
40
豆豆
生活随笔
收集整理的這篇文章主要介紹了
新搭建mysql容易出现问题
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1、最大連接數(shù)超出問(wèn)題.MySQL: ERROR 1040: Too many connections數(shù)據(jù)庫(kù)連接數(shù)不夠臨時(shí)改變,中期置為默認(rèn)151登陸mysql -uroot -proot設(shè)置連接數(shù)set GLOBAL max_connections=1000;查看最大連接池select VARIABLE_VALUE from information_schema.GLOBAL_VARIABLES where VARIABLE_NAME='MAX_CONNECTIONS';2、數(shù)據(jù)庫(kù)報(bào)錯(cuò)用戶名密碼錯(cuò)誤那就真是賬號(hào)密碼,有可能是是由于多了空格引起eg:"root ? "這樣就會(huì)報(bào)錯(cuò)3、mysql 8小時(shí)空閑后連接超時(shí)的問(wèn)題查看參數(shù)show variables like '%timeout%';注意interactive_timeout? ? ? ? ?| 28800wait_timeout? ? ? ? ? ? ? ? | 28800這兩個(gè)參數(shù)下面的是默認(rèn)的時(shí)間60*60*8=28800(8小時(shí))但是這種方式改變數(shù)據(jù)庫(kù)屬性,當(dāng)換一個(gè)服務(wù)器部署的時(shí)候還得配置數(shù)據(jù)庫(kù)屬性,所以最好在程序中解決解決方式:配置c3p0<!-- 連接池中保留的最大連接數(shù)。默認(rèn)值: 15? -->?<property name="maxPoolSize" value="20"/>?<!--? 連接池中保留的最小連接數(shù),默認(rèn)為:3? ?--><property name="minPoolSize" value="2"/>?<!-- 初始化連接池中的連接數(shù),取值應(yīng)在minPoolSize與maxPoolSize之間,默認(rèn)為3 -->?<property name="initialPoolSize" value="2"/>?<!-- 最大空閑時(shí)間,60秒內(nèi)未使用則連接被丟棄。若為0則永不丟棄。默認(rèn)值: 0 -->? ?<property name="maxIdleTime" value="60"/>?<!-- 當(dāng)連接池連接耗盡時(shí),客戶端調(diào)用getConnection()后等待獲取新連接的時(shí)間,超時(shí)后將拋出SQLException,如設(shè)為0則無(wú)限期等待。單位毫秒。默認(rèn): 0 -->? ?<property name="checkoutTimeout" value="3000"/>?<!-- 當(dāng)連接池中的連接耗盡的時(shí)候c3p0一次同時(shí)獲取的連接數(shù)。默認(rèn)值: 3 -->? ?<property name="acquireIncrement" value="2"/>?<!-- 定義在從數(shù)據(jù)庫(kù)獲取新連接失敗后重復(fù)嘗試的次數(shù)。默認(rèn)值: 30 ;小于等于0表示無(wú)限次 -->? ?<property name="acquireRetryAttempts" value="0"/>?<!-- 重新嘗試的時(shí)間間隔,默認(rèn)為:1000毫秒 -->? ?<property name="acquireRetryDelay" value="1000" />?<!-- 關(guān)閉連接時(shí),是否提交未提交的事務(wù),默認(rèn)為false,即關(guān)閉連接,回滾未提交的事務(wù) -->? ?<property name="autoCommitOnClose" value="false"/>?<!-- c3p0將建一張名為T(mén)est的空表,并使用其自帶的查詢語(yǔ)句進(jìn)行測(cè)試。如果定義了這個(gè)參數(shù)那么屬性preferredTestQuery將被忽略。你不能在這張Test表上進(jìn)行任何操作,它將只供c3p0測(cè)試使用。默認(rèn)值: null -->? ?<property name="automaticTestTable" value="Test"/>?<!-- 如果為false,則獲取連接失敗將會(huì)引起所有等待連接池來(lái)獲取連接的線程拋出異常,但是數(shù)據(jù)源仍有效保留,并在下次調(diào)用getConnection()的時(shí)候繼續(xù)嘗試獲取連接。如果設(shè)為true,那么在嘗試獲取連接失敗后該數(shù)據(jù)源將申明已斷開(kāi)并永久關(guān)閉。默認(rèn): false? -->?<property name="breakAfterAcquireFailure" value="false"/>?<!-- 每60秒檢查所有連接池中的空閑連接。默認(rèn)值: 0,不檢查 -->? ?<property name="idleConnectionTestPeriod" value="60"/>?<!-- c3p0全局的PreparedStatements緩存的大小。如果maxStatements與maxStatementsPerConnection均為0,則緩存不生效,只要有一個(gè)不為0,則語(yǔ)句的緩存就能生效。如果默認(rèn)值: 0 -->? ?<property name="maxStatements" value="100"/><!-- maxStatementsPerConnection定義了連接池內(nèi)單個(gè)連接所擁有的最大緩存statements數(shù)。默認(rèn)值: 0 -->? ?<property name="maxStatementsPerConnection" value="0"></property>4、版本mysql ?-V
總結(jié)
以上是生活随笔為你收集整理的新搭建mysql容易出现问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: docker自动化部署
- 下一篇: mysql与ftp连接过慢的原因