zoukankan      html  css  js  c++  java
  • Mysql 数据迁移后 启动出错

    今天上班后不知道为什么,mysql一直无法启动,折腾了半天于是决定重装

    我本地的server用的是wamp , 重装的时候, 要进行数据备份 , 我使用的最简单粗暴的备份方式, 就是直接进入到mysql的安装文件夹下, 把data拷贝一份就能够了.


    然后卸载wamp后重装,数据迁移就是把data贴到同样位置替换下就ok了

    可是今天迁移完后,mysql怎么也启动不了,查看log,显示各种错误

    2014-11-13 13:40:29 5196 [Note] Plugin 'FEDERATED' is disabled.
    2014-11-13 13:40:29 5196 [Note] InnoDB: The InnoDB memory heap is disabled
    2014-11-13 13:40:29 5196 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
    2014-11-13 13:40:29 5196 [Note] InnoDB: Compressed tables use zlib 1.2.3
    2014-11-13 13:40:29 5196 [Note] InnoDB: Not using CPU crc32 instructions
    2014-11-13 13:40:29 16e4  InnoDB: Error: unable to create temporary file; errno: 2
    2014-11-13 13:40:29 5196 [ERROR] Plugin 'InnoDB' init function returned error.
    2014-11-13 13:40:29 5196 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
    2014-11-13 13:40:29 5196 [ERROR] Unknown/unsupported storage engine: InnoDB
    2014-11-13 13:40:29 5196 [ERROR] Aborting

    查看各种资料后, 又有了粗犷的方式,删除了data文件夹下的除数据库文件夹以及ibdata1之外的文件, 再重新启动, ok了, 小绿图标出来了。mysql正常启动了。

    *注意: 一定不要删除ibdata1, 查了资料, 说这个是非常关键的文件,保存着innodb相关的数据

    当然,身为妹子的博主,自然有自己细心的一面, 为什么删除了其它文件就能够启动呢?



    而且,在迁移过程中,妹纸做了各种測试.

    1.仅替换data内的数据库目录,重新启动后mysql能够启动,但用navicat连接数据库后无法打开数据表,显示数据表不存在  (即数据丢失, 上述ibdata1相关)

    2.将事先备份的data内的数据库文件夹以及ibdata1替换到data文件夹下,重新启动, mysql无法启动

    3.将ib_logfile0以及ib_logfile1删除, 重新启动 , mysql启动正常, 连接数据库数据表信息恢复.


    大致搞懂了这三部分文件的用途, 详细原因, 还待深究 , 日后补文.


  • 相关阅读:
    6大开源SIEM工具,安全信息和事件管理的“利器”
    数据库为何需要安全审计系统
    WEB漏洞扫描的开源工具
    12种开源Web安全扫描程序
    开源框架openresty+nginx 实现web应用防火墙(WAF)
    锦衣盾:开源WEB应用防火墙介绍
    20步打造最安全的Nginx Web服务器
    MySQL数据库审计系统
    数据库(分库分表)中间件对比
    Mysql调优基础、Mysql问题排查、Mysql优化、与hikari数据库连接池配合
  • 原文地址:https://www.cnblogs.com/wzjhoutai/p/7060940.html
Copyright © 2011-2022 走看看