innodb 日志文件异常引起innodb 启动失败
110531 09:19:16 mysqld_safe Starting mysqld daemon with databases from /data/mysql_data
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use GCC atomic builtins
InnoDB: Compressed tables use zlib 1.2.3
110531 9:19:17 InnoDB: Initializing buffer pool, size = 1.0G
110531 9:19:17 InnoDB: Completed initialization of buffer pool
110531 9:19:17 InnoDB: Log file ./ib_logfile0 did not exist: new to be created
InnoDB: Setting log file ./ib_logfile0 size to 10 MB
(日志文件异常)
InnoDB: Database physically writes the file full: wait...
InnoDB: Error: all log files must be created at the same time.
InnoDB: All log files must be created also in database creation.
InnoDB: If you want bigger or smaller log files, shut down the
InnoDB: database and make sure there were no errors in shutdown.
InnoDB: Then delete the existing log files. Edit the .cnf file
(需要删除redo文件,重建)
InnoDB: and start the database again.
110531 9:19:17 [ERROR] Plugin 'InnoDB' init function returned error.
110531 9:19:17 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
110531 9:19:17 [ERROR] Can't open and lock privilege tables: Table 'mysql.servers' doesn't exist
110531 9:19:17 [ERROR] Column count of mysql.db is wrong. Expected 22, found 20. The table is probably corrupted
110531 9:19:17 [ERROR] mysql.user has no `Event_priv` column at position 29
110531 9:19:17 [ERROR] Cannot open mysql.event
110531 9:19:17 [ERROR] Event Scheduler: An error occurred when initializing system tables. Disabling the Event Scheduler.
110531 9:19:17 [Note] /usr/local/mysql-5.1.57/bin/mysqld: ready for connections.
Version: '5.1.57-log' socket: '/tmp/mysql.sock' port: 3306 Source distribution
110531 9:22:09 [Warning] Statement may not be safe to log in statement format. Statement: ALTER TABLE general_log
MODIFY event_time TIMESTAMP NOT NULL,
MODIFY user_host MEDIUMTEXT NOT NULL,
MODIFY thread_id INTEGER NOT NULL,
MODIFY server_id INTEGER UNSIGNED NOT NULL,
MODIFY command_type VARCHAR(64) NOT NULL,
MODIFY argument MEDIUMTEXT NOT NULL
110531 9:22:09 [Warning] Statement may not be safe to log in statement format. Statement: ALTER TABLE slow_log
MODIFY start_time TIMESTAMP NOT NULL,
MODIFY user_host MEDIUMTEXT NOT NULL,
MODIFY query_time TIME NOT NULL,
MODIFY lock_time TIME NOT NULL,
MODIFY rows_sent INTEGER NOT NULL,
MODIFY rows_examined INTEGER NOT NULL,
MODIFY db VARCHAR(512) NOT NULL,
MODIFY last_insert_id INTEGER NOT NULL,
MODIFY insert_id INTEGER NOT NULL,
MODIFY server_id INTEGER UNSIGNED NOT NULL,
MODIFY sql_text MEDIUMTEXT NOT NULL
解决办法:
删除ib_logfile0 ib_logfile1 文件
重启mysql服务。
分享到:
相关推荐
《Innodb文件格式分析器详解》 MySQL的InnoDB存储引擎是广泛应用于数据库系统中的事务处理引擎,其内部文件格式对于数据库管理员和开发者来说至关重要。InnoDB文件格式的解析和理解,能帮助我们更好地优化数据库...
如果这些文件损坏或无法访问,也可能导致启动失败。检查日志文件的状态。 6. **数据文件损坏**:`ibdata1`文件可能存在物理损坏,需要使用MySQL的`mysqlcheck`工具进行检查和修复。 在OS X环境下,MySQL的启动方式...
然而,当遇到InnoDB启动失败并导致MySQL数据库无法重启时,这通常意味着存在一些严重的问题,可能涉及到数据损坏、配置错误或者系统资源不足。以下是一些可能的解决步骤和相关知识点: 1. **检查错误日志**:在上述...
在尝试重启MySQL服务时,遇到了InnoDB引擎的恢复过程失败,报错显示日志序列号扫描过程中发生了错误,并且mysqld进程收到了信号11,这通常意味着可能出现了内存损坏、软件bug或者硬件问题。 二、问题分析 mysqld ...
InnoDB中的日志文件分为Log File 0和Log File 1,每个文件由日志文件头(LogFileHeader)和多个日志块(Logblocks)组成。日志块的大小固定为512字节。 - **日志块头(LogBlockHeader)** 每个日志块都包含了日志...
3.2 日志文件 3.3 套接字文件 3.4 pid文件 3.5 表结构定义文件 3.6 InnoDB存储引擎文件 4. 表 4.1 索引组织表 4.2 InnoDB逻辑存储结构 4.3 行记录格式 4.4 InnoDB数据页结构 5. 索引与算法 5.1 概述 5.2...
从物理意义上来讲,InnoDB表由共享表空间文件(ibdata1)、独占表空间文件(ibd)、表结构文件(.frm)、以及日志文件(redo文件等)组成。 1、表结构文件 在MYSQL中建立任何一张数据表,在其数据目录对应的数据库...
4. 启动 MySQL,并自动重建 InnoDB 数据库文件和日志文件。 5. 导入前面备份的数据库文件。 在 InnoDB 中,索引文件和数据文件是一起被缓存的,这与 MyISAM 存储引擎不同。缓存的大小可以通过参数 innodb_buffer_...
- `innodb_log_files_in_group=…`:每个InnoDB日志文件组中的日志文件数量。 - `innodb_log_file_size=…`:每个InnoDB日志文件的大小。 #### 二、创建备份 本节将详细介绍如何使用ibbackup创建完整的压缩与非...
- **描述**:指定InnoDB日志文件的存放目录,必须与`innodb_log_arch_dir`设置相同的值。 - **应用场景**:当需要更改日志文件存放位置时使用,例如将其放置在高性能存储设备上以提高性能。 ##### 5. `innodb_log_...
12. **innodb_log_group_home_dir**:定义InnoDB日志文件的存放目录。 优化这些参数需要根据实际的数据库负载、硬件配置和业务需求进行调整。在调整时,应谨慎考虑性能与数据安全之间的平衡,确保在提升性能的同时...
### MySQL InnoDB 日志 回滚段 & 崩溃恢复实现详解 #### 知识准备 - **ACID** - 在数据库管理系统中,事务具有四个关键属性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性...
5. **日志分析**:分析InnoDB的日志文件(ib_logfile*),可能有更多关于异常关闭的记录。 6. **重新创建表空间**:在极端情况下,如果上述方法都无效,可能需要删除并重新创建InnoDB表空间,但这会丢失所有InnoDB...
此外,还提到了InnoDB的Redo日志管理,包括日志缓冲区大小、日志文件的大小和数量等。 8. 事务日志刷新策略 innodb_flush_log_at_trx_commit参数控制了InnoDB如何刷新事务日志。通常,InnoDB使用一个后台线程“log ...
MySQL数据库在运行过程中可能会遇到各种异常情况,例如意外崩溃,这可能导致表数据文件损坏,进而使得数据库服务无法正常启动。当这种情况发生时,数据库的日志会显示出错信息,帮助我们定位问题。在本案例中,MySQL...
这是我从网上找到的mysql/mariadb对innodb表进行数据恢复的工具,实现从innodb的数据库文件中恢复数据,用于实现下面情况:1、直接下载了innodb数据库的文件,而不是导出其数据,想恢复数据时(需要有完整的文件,...
这就需要用到如`py_innodb_page_info`这样的工具,它为我们提供了一扇窗口,让我们可以深入到InnoDB存储引擎的底层,直观地理解日志(redo log和undo log)以及数据文件的工作方式。本文将详细介绍`py_innodb_page_...
InnoDB事务日志由一组文件组成,每个文件的大小可通过`innodb_log_file_size`参数配置。默认情况下,InnoDB会创建两个文件,并且可以在运行时动态增加新的日志文件。 **3、错误日志** 错误日志(error log)记录...