5
私は最近、mysqlからmariadbへの2ノードクラスタデータベースによるレプリケーションをサポートするためにデータベースを移行しました。データベースは別のドメインでホストされており、ELBを介してアプリケーションにアクセスすると、アプリケーションがうまく動作するノードの1つにポイントしますが、ELB URLを使用してデータベースに接続すると、ランダムに変動し、ここでELB上のmariadb galeraクラスタを使用したgrailsアプリケーションでのMySQL接続タイムアウト
Communication Link Failure
could not execute query; nested exception is org.hibernate.exception.JDBCConnectionException: could not execute query
は私のデータソース設定である: -
dataSource {
shard = false
pooled = true
driverClassName = "com.mysql.jdbc.Driver"
//dialect = "com.deerwalk.everest.MySQLUTF8InnoDBDialect"
dbCreate = "update" // one of 'create', 'create-drop','update'
properties {
initialSize=5
maxActive=50
minIdle=5
maxIdle=25
maxWait = 10000
maxAge = 10 * 60000
timeBetweenEvictionRunsMillis=5000
minEvictableIdleTimeMillis=60000
validationQuery="SELECT 1"
validationInterval=15000
testWhileIdle=true
testOnBorrow=true
testOnReturn=false
jdbcInterceptors = "ConnectionState"
defaultTransactionIsolation = java.sql.Connection.TRANSACTION_READ_COMMITTED
}
誰もが、私は問題を考え出しいただきました!間違って識別し、それ
DataSourceConfig.groovyでmaxWaitとmaxAgeを増やしてみてください。通常よりも時間がかかる可能性があります。 –
は既にすべての可能な組み合わせを試しています – thickGlass
DataSourceConfig設定にautoReconnectプロパティを追加する方法についてデフォルトはfalseです。あなたは本当にそれを設定し、あなたの問題を解決するかどうかを確認することがあります。 –