我不确定这是否是发布到的正确 Stack Exchange (StackOverflow 认为它属于其他地方,所以也许在这里会做得更好?)但是当我尝试在 VPS(Centos6)上安装Magento2时,我不断收到此 MySQL 错误,MySQL 5.7.11):
SQLSTATE[HY000]:一般错误:1030 从存储引擎获取错误 168
我四处搜寻,发现这与InnoDB无法写入其数据文件有关。我还发现,遇到相同1030错误的人大多会收到-1或28错误,并且都很容易识别为 1)innodb_force_recovery设置为大于 0 (我的文件中没有此设置my.cnf),以及 2) 磁盘空间不足(我的 mysql 驱动器上还剩 5GB)。
我应该注意到,它在停止并出错之前可以很好地安装 136-162 个表。之后,我尝试手动添加最后一个出错的表,然后它表现出与此问题类似的症状:
MySQL手册说:
“检查 %d 值以了解操作系统错误的含义。例如,28 表示磁盘空间不足。”
所以我的问题是:
168含义吗?-或者-%d value mysql这些搜索条件的其他版本,但没有得到任何有价值的结果(无论如何我都可以破译)到目前为止我已经尝试过:
fstab,将 my 文件夹的存储空间增加到/temp2GBmysql_upgrade (我最近更新了 MySQL 安装,以便我可以安装 Magento2,所以我希望我忘记这样做,这可能会起作用)如果有人对这些%d描述的位置有任何见解,或者除了该错误的版本-1和版本之外可以为我指出正确的方向28,我将不胜感激。我根本不是数据库专家,但我以前从未在安装数据库时遇到如此多的麻烦,通常非常简单。
编辑:
查看日志后,这是错误的最上面部分,也是失败的表:
2016-05-15T15:08:22.610729Z 240 [ERROR] InnoDB: Unable to lock
./magento_test2/authorization_rule.ibd error: 37
2016-05-15T15:08:22.610789Z 240 [ERROR] InnoDB: Operating system error
number 37 in a file operation. 2016-05-15T15:08:22.610840Z 240 [ERROR]
InnoDB: Error number 37 means 'No locks available'
2016-05-15T15:08:22.610879Z 240 [Note] InnoDB: Some operating system
error numbers are described at
http://dev.mysql.com/doc/refman/5.7/en/operating-system-error-codes.html
2016-05-15T15:08:22.610896Z 240 [ERROR] InnoDB: Cannot create file
'./magento_test2/authorization_rule.ibd' 2016-05-15T15:08:23.025333Z 0
[ERROR] InnoDB: Unable to lock ./magento_test2/quote_address.ibd
error: 37 2016-05-15 08:08:23 0x7f968ae75700 InnoDB: Assertion
failure in thread 140284552238848 in file fil0fil.cc line 884 InnoDB:
Failing assertion: success InnoDB: We intentionally generate a memory
trap. InnoDB: Submit a detailed bug report to http://bugs.mysql.com.
InnoDB: If you get repeated assertion failures or crashes, even
InnoDB: immediately after the mysqld startup, there may be InnoDB:
corruption in the InnoDB tablespace. Please refer to InnoDB:
http://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html
InnoDB: about forcing recovery. 15:08:23 UTC - mysqld got signal 6 ;
This could be because you hit a bug. It is also possible that this
binary or one of the libraries it was linked against is corrupt,
improperly built, or misconfigured. This error can also be caused by
malfunctioning hardware. Attempting to collect some information that
could help diagnose the problem. As this is a crash and something is
definitely wrong, the information collection process might fail.
Run Code Online (Sandbox Code Playgroud)
我想它一般来说效果不太好。
[ERROR] InnoDB: Unable to lock ./magento_test2/authorization_rule.ibd error: 37
[ERROR] InnoDB: Error number 37 means 'No locks available'
Run Code Online (Sandbox Code Playgroud)
检查您的操作系统打开文件限制(对于mysql用户) -ulimit -a或者open files可能file locks是 256-512 之间的值(创建了 160 个表,每个表都有 ibd/frm 或 frm/myi/myd 对于可能的 myisam 表意味着超过 300 个文件)并且尝试让它更高。
| 归档时间: |
|
| 查看次数: |
44889 次 |
| 最近记录: |