gpt4 book ai didi

mysql - Rails mysql 失去连接

转载 作者:可可西里 更新时间:2023-11-01 07:44:15 27 4
gpt4 key购买 nike

我的网站有时会导致 500 错误(任何路径)
但是再次刷新后,500错误消失,打开了正确的页面。

信息

Rails 4.1.4
MySQL 5.6.25
mysql2 gem 0.3.17
Rails webserver : nginx & unicorn on Ubuntu 12.10
db server : centOS 6.6

500错误信息

ActiveRecord::StatementInvalid (Mysql2::Error: Lost connection to MySQL server during query: BEGIN)

数据库.yml

production:
adapter: mysql2
encoding: utf8
pool: 20
username: xxxx
password: xxxx
host: xxxx
database: xxxx
wait_timeout: 300
reconnect: true

centos 6.6 [mysqld] 设定 (/etc/my.cnf)

bind-address=0.0.0.0
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
init_connect="SET collation_connection = utf8_general_ci"
init_connect="SET names utf8"
character-set-server = utf8
collation-server = utf8_general_ci
skip-name-resolve
wait_timeout=300
interactive_timeout=300

也许我认为 mysqld 设置有问题,因为在移动 mysql 服务器后开始出现此错误。

我之前有mysql账号,不是linux服务器。所以我不需要设置 mysql 配置。只使用 mysql 托管。但是现在,我有用于 mysql 的 centOS 6.6 服务器,所以我安装 mysqld 并使用它。

然后就出现了上面的错误。

如何解决?

已添加

  1. 将主机更改为私有(private) ip 和域没有任何影响。
  2. 下面添加mysqld设置后

    general_log=ON
    log_warnings=2

    日志文件没有关于丢失连接的日志。

最佳答案

这会不会是您的 wait_timeout 被设置为 300?我不确定在返回数据库之前您的连接空闲了多长时间,但是设置为 300 时,MySQL 会在 5 分钟时终止任何休眠连接。

如果不是这种情况,请运行 SHOW VARIABLES;这将有助于查明问题所在。

关于mysql - Rails mysql 失去连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31677400/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com