gpt4 book ai didi

mysql - 问题改变 innodb_log_file_size

转载 作者:可可西里 更新时间:2023-11-01 06:35:26 26 4
gpt4 key购买 nike

我过去没有做过太多调整,所以这可能相对容易,但我遇到了问题。这就是我所做的:

  1. 停止MySQL
  2. 编辑 my.cnf(更改 innodb_log_file_size)
  3. 删除 ib_logfile0/1
  4. 启动MySQL

启动正常,但所有 InnoDB 表都有 .frm 文件无效错误,状态显示 InnoDB 引擎已禁用,所以我显然返回,删除更改,一切再次正常。

我能够更改我尝试过的所有其他变量,但我似乎无法找出为什么 InnoDB 即使在删除日志文件后仍无法启动。我错过了什么吗?

谢谢。

编辑:粘贴下面的日志 - 看起来它似乎仍然可以找到日志文件,即使它们不存在?

关机:

090813 10:00:14  InnoDB: Starting shutdown...
090813 10:00:17 InnoDB: Shutdown completed; log sequence number 0 739268981
090813 10:00:17 [Note] /usr/sbin/mysqld: Shutdown complete

修改后启动:

InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242880 bytes
InnoDB: than specified in the .cnf file 0 268435456 bytes!
090813 11:00:18 [Warning] 'user' entry 'root@XXXXX.com' ignored in --skip-name-resolve mode.
090813 11:00:18 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.0.81-community-log' socket: '/var/lib/mysql/mysql.sock' port: 3306 MySQL Community Edition (GPL)
090813 11:00:19 [ERROR] /usr/sbin/mysqld: Incorrect information in file: './XXXX/User.frm'
090813 11:00:19 [ERROR] /usr/sbin/mysqld: Incorrect information in file: './XXXX/User.frm'
090813 11:00:19 [ERROR] /usr/sbin/mysqld: Incorrect information in file: './XXXX/User.frm'

在我更正之前,它只是一个相同错误的垃圾邮件

当它在重新创建日志文件后确实启动时,所以它必须在我所在的同一个位置进行查找。

最佳答案

首先,我必须指出,在对 InnoDB 数据文件进行任何更改之前,应该阅读 13.2.5. Adding, Removing, or Resizing InnoDB Data and Log Files

您指出的步骤几乎是正确的。建议在此类更改之前进行备份。让我们看看你发生了什么:

错误信息

InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242880 bytes
InnoDB: than specified in the .cnf file 0 268435456 bytes!

是由于改变 innodb_log_file_size 的大小和不删除旧文件引起的。更改后第一次运行 mysqld 时,您可能忘记删除 de ib_logfile0/1。消息

090813 11:00:18 [Note] /usr/sbin/mysqld: ready for connections.

表明您已解决此问题(通过删除 ib_logfile)。但是,删除它们会产生另一个问题。 XXXX\User.frm 的数据损坏或 InnoDB 引擎的一些问题。

要确保 InnoDB 已启用,请在 mysql 提示符下运行此命令:

show variables like "%inno%";

在结果列表中必须有“have_innodb = YES”。有时,当 InnoDB 无法启动(值为NODISABLED)时,会出现Incorrect information in file 消息。< br/>- 如果这是问题所在,您更改了其他一些阻止 InnoDB 引擎正常启动的内容(datadir 的权限或 tmpdir 的权限,其他 innodb 变量(您没有显示完整的日志。), ETC。)。查看更改或放置 .cnf 文件(之前和之后)。
- 如果 InnoDB 引擎为 YES,则您必须修复该表。 (如果是这种情况,请添加评论,我会在此处添加信息。我现在懒得做。)

关于mysql - 问题改变 innodb_log_file_size,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1273012/

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