`
cocos
  • 浏览: 400367 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

InnoDB: mmap(820248576 bytes) failed; errno 12

阅读更多

内存空间不足,

修改innodb_buffer_pool_size 或者加大swap分区空间

 

为Linux系统手工添加SWAP空间

在SWAP空间不够用的情况下,如何手工添加SWAP空间?以下的操作都要在root用户下进行:

首先先建立一个分区,采用dd命令比如

dd if=/dev/zero of=/home/swap bs=1024 count=512000

这样就会创建/home/swap这么一个分区文件。文件的大小是512000个block,一般情况下1个block为1K,所以这里空间是512M。接着再把这个分区变成swap分区。

/sbin/mkswap /home/swap

再接着使用这个swap分区。使其成为有效状态。

/sbin/swapon /home/swap

现在再用free -m命令查看一下内存和swap分区大小,就发现增加了512M的空间了。不过当计算机重启了以后,发现swap还是原来那么大,新的swap没有自动启动,还要手动启动。那我们需要修改/etc/fstab文件,增加如下一行

/home/swap swap swap defaults 0 0

你就会发现你的机器自动启动以后swap空间也增大了。

 

mmap

 

mmap 可以把磁盘文件的一部分直接映射到内存,这样文件中的位置直接就有对应的内存地址,对文件的读写可以直接用指针来做而不需要read /write 函数。

mmap将一个文件或者其它对象映射进内存。文件被映射到多个页上,如果文件的大小不是所有页的大小之和,最后一个页不被使用的空间将会清零。munmap执行相反的操作,删除特定地址区域的对象映射。
基于文件的映射,在mmap和munmap执行过程的任何时刻,被映射文件的st_atime可能被更新。如果st_atime字段在前述的情况下没有得到更新,首次对映射区的第一个页索引时会更新该字段的值。用PROT_WRITE 和 MAP_SHARED标志建立起来的文件映射,其st_ctime 和 st_mtime
在对映射区写入之后,但在msync()通过MS_SYNC 和 MS_ASYNC两个标志调用之前会被更新。

分享到:
评论

相关推荐

    MySQL启动报错问题InnoDB:Unable to lock/ibdata1 error

    【MySQL启动报错问题InnoDB:Unable to lock/ibdata1 error】是一个常见的MySQL服务器启动时遇到的问题。这个问题通常表明MySQL的InnoDB存储引擎无法获取对`ibdata1`文件的锁,`ibdata1`是InnoDB用来存储数据和系统表...

    Mysql启动中 InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242880 bytes 的问题

    当遇到"InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242880 bytes"这样的错误时,通常意味着InnoDB的日志文件大小与MySQL配置文件中设置的大小不匹配。 InnoDB的日志文件通常以`ib_logfile0`和...

    InnoDB: Hot Backup Manual

    ### InnoDB: 热备份手册 #### 一、ibbackup选项 InnoDB热备份工具(简称ibbackup)是一款能够实现在MySQL运行期间对InnoDB数据库进行无锁备份的强大工具,它不会干扰到正常的数据库处理流程。通过ibbackup,用户...

    MySQL数据库INNODB表损坏修复处理过程分享

    处理过程: 一遇到报警之后,直接打开错误日志,里面的信息:InnoDB: Database page corruption on disk or a failed InnoDB: file read of page 30506. InnoDB: You may have to recover from a backup. 130509 20...

    InnoDB Operating system error number 9 Bad file descriptor

    InnoDB Operating system error number 9. [MDEV-9749] InnoDB receives 'Bad file descriptor' error, possibly related to feedback plugin Lost connection to MySQL server at 'handshake- reading initial ...

    mysql 有关“InnoDB Error ib_logfile0 of different size”错误

    在MySQL数据库系统中,InnoDB存储引擎是默认的事务处理引擎,它提供了一种称为redo logs的事务日志机制,用于记录对数据的改动,以保证数据的一致性和持久性。当遇到"InnoDB Error ib_logfile0 of different size...

    MySQL数据库innodb启动失败无法重启的解决方法

    MySQL数据库的InnoDB存储引擎是其核心特性之一,它提供了事务处理、行级锁定以及外键支持等功能,确保了数据的可靠性和并发性能。然而,当遇到如标题所述的“MySQL数据库InnoDB启动失败无法重启”的问题时,可能是...

    mysql服务启动问题

    - `0904179:02:55 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.` - `0904179:02:55 [ERROR] Unknown/unsupported table type: INNODB` - `0904179:02:55 [ERROR] Aborting` 这些错误信息表明...

    mysql Unable to lock ./ibdata1, error: 11

    - **调整InnoDB配置**:增大`innodb_buffer_pool_size`、`innodb_log_file_size`等参数,优化InnoDB性能。 - **处理死锁**:如果是因为死锁导致,可以使用`SHOW ENGINE INNODB STATUS;`来查看并解除死锁。 - **...

    MySQL内核:InnoDB存储引擎 卷1.pdf.zip

    《MySQL内核:InnoDB存储引擎 卷1》是一本深度探讨MySQL数据库系统核心部分——InnoDB存储引擎的专业书籍。这本书以超高清的PDF格式呈现,包含详细的书签,便于读者快速定位和查阅相关内容。InnoDB作为MySQL中最常用...

    MySQL删除表时I/O错误的原因分析与解决

    [ERROR] InnoDB: Trying to do I/O to a tablespace which does not exist. I/O type: read, page: [page id: space=32, page number=57890], I/O length: 16384 bytes。 看起来是I/O出现了错误,但MySQL进程并未...

    undrop-for-innodb:适用于MySQLInnoDB的TwinDB数据恢复工具包

    该工具箱也称为InnoDB的UnDrop ,其名称更准确,因为该工具箱可用于InnoDB表。 当备份不可用时,该工具将恢复数据。 它支持从以下故障中恢复: 表或数据库已删除。 InnoDB表空间损坏。 硬盘故障。 文件系统...

    MySQL内核:InnoDB存储引擎 卷1.pdf

    《MySQL内核:InnoDB存储引擎 卷1》由资深MySQL专家,机工畅销图书作者亲自执笔,在以往出版的两本InnoDB介绍性图书的基础之上,更深入地介绍InnoDB存储引擎的内核,例如latch、B+树索引、事务、锁等,从源代码的...

    mysql 提示INNODB错误的解决方法

    出现如下语句:The ‘InnoDB’ feature is disabled; you need MySQL built with ‘InnoDB’ to have it working; 是mysql配置文件禁掉了这个选项! 关闭mysql数据库 在mysql的安装目录中找到my.ini文件 找到skip-...

    MySQL常见内存不足启动失败的完美解决方法

    errno 12` - 这意味着InnoDB存储引擎尝试映射内存(mmap)但失败了,错误号12通常代表“没有足够的空间”。 2. `[ERROR] InnoDB: Cannot allocate memory for the buffer pool` - 这表示InnoDB无法为缓冲池分配...

Global site tag (gtag.js) - Google Analytics