首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >1286年-未知存储引擎“InnoDB”

1286年-未知存储引擎“InnoDB”
EN

Database Administration用户
提问于 2013-03-13 20:02:29
回答 5查看 67.2K关注 0票数 5

我试着用圆立方体,它最近才坏了。我不知道这是否是由于最近发生的MySQL更新造成的,但是在phpMyAdmin中,如果我尝试查看一个表,我会得到以下错误:

代码语言:javascript
运行
复制
1286 - Unknown storage engine 'InnoDB'

代码语言:javascript
运行
复制
mysql> SHOW ENGINES;
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine             | Support | Comment                                                        | Transactions | XA   | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| MRG_MYISAM         | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         |
| CSV                | YES     | CSV storage engine                                             | NO           | NO   | NO         |
| MyISAM             | DEFAULT | MyISAM storage engine                                          | NO           | NO   | NO         |
| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         |
| FEDERATED          | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       |
| PERFORMANCE_SCHEMA | YES     | Performance Schema                                             | NO           | NO   | NO         |
| ARCHIVE            | YES     | Archive storage engine                                         | NO           | NO   | NO         |
| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
8 rows in set (0.00 sec)

代码语言:javascript
运行
复制
[mysqld]
default-storage-engine=MyISAM
local-infile=0
symbolic-links=0
skip-networking
max_connections = 500
max_user_connections = 20
key_buffer = 512M
myisam_sort_buffer_size = 64M
join_buffer_size = 64M
read_buffer_size = 12M
sort_buffer_size = 12M
read_rnd_buffer_size = 12M
table_cache = 2048
thread_cache_size = 16K
wait_timeout = 30
connect_timeout = 15
tmp_table_size = 64M
max_heap_table_size = 64M
max_allowed_packet = 64M
max_connect_errors = 10
query_cache_limit = 1M
query_cache_size = 64M
query_cache_type = 1
low_priority_updates=1
concurrent_insert=ALWAYS
log-error=/var/log/mysql/error.log
tmpdir=/home/mysqltmp
myisam_repair_threads=4
[mysqld_safe]
open_files_limit = 8192
log-error=/var/log/mysql/error.log

[mysqldump]
quick
max_allowed_packet = 512M

[myisamchk]
key_buffer = 64M
sort_buffer = 64M
read_buffer = 16M
write_buffer = 16M

关于如何修复的想法?过去效果很好。

EN

回答 5

Database Administration用户

发布于 2013-03-13 20:32:18

观测

  • 我看到在my.cnf中没有任何与Innodb相关的东西。
  • 查找与Innodb相关的错误消息,以表示mysqld未能在错误日志中启动的原因。

我的第一个猜测是看看ib_logfile0ib_logfile1 in /var/lib/mysql

如果将它们设置为与默认大小不同的大小,则可能会阻止mysqld的启动。诺姆b_日志_文件_大小的缺省值是500万。

建议#1

如果RoundCube的安装覆盖了my.cnf,则查看是否对以前的my.cnf进行了物理备份。把它放回原处,然后跑

代码语言:javascript
运行
复制
service mysql start

建议#2

ib_logfile0的文件大小除以1048576。假设是12米。

把它放在my.cnf

代码语言:javascript
运行
复制
[mysqld]
innodb_log_file_size = 12M

那就跑

代码语言:javascript
运行
复制
service mysql start

试试看!!

票数 5
EN

Database Administration用户

发布于 2015-08-02 23:29:08

只需删除ib_logfileX文件并重新启动mysql服务即可。

您将mysql变量更改为比在mysql守护进程中设置的更大的innodb-log-file-size变量。

票数 2
EN

Database Administration用户

发布于 2016-12-01 09:00:34

彼得已经写好了,但也许要澄清一下:

当InnoDB无法写入临时目录(通常是/tmp)时,似乎没有加载MySQL引擎。这可能是由于整个临时分区或对临时目录的权限不正确造成的。

正如彼得提到的,chmod 1777 /tmp应该解决这个问题。之后不要忘记重新启动MySQL。

票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/36625

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档