zoukankan      html  css  js  c++  java
  • mysql免安装版1067错误终极解决办法|在windows平台下MySql启动时的1067错误的解决方法及反思

    【windows事件查看】

    我的电脑--此电脑--右键管理--计算机管理--系统工具--事件查看器--Windows日志--应用程序--找错误标志,如下图

    【提示】

    按部就班,可能并不能解决你的问题,关键是从windows事件从找到mysql1067的具体原因,然后解决掉。



    我认为导致这个问题的原因可能不止一种,所以搜集了网上一些朋友对此问题的解决供大家参考,希望能你有所帮助。
     
    一、

    1、打开my.ini文件,找到default-storage-engine=InnoDB这一行,把它改成default-storage-engine=MyISAM。

    2、删除在MySQL安装目录下的Data目录中的ib_logfile0和ib_logfile1

    3、找到在配置MySQL服务器时指定的InfoDB目录删除掉ibdata1

    根据my.ini文件中:

    #*** INNODB Specific options ***

    innodb_data_home_dir="D:/"。

    4。重新启动MySQL的Service  

    根据我自己的实践,只要进行第三步就能解决问题。

    二、

     err文件内容:

    经过一翻Google,找出了无法启动的原因:MySQL在安装的时候不会自动初始tmpdir(临时文件目录),所以要在配置文件my.ini中添加如下内容:

        [mysqld]

        #自己指定的临时文件目录

        tmpdir="D:/MySQL/MySQL Server 5.1/Temp"

        再次启动MySQL一切正常,在Temp文件夹下生成了一些*.tmp的临时文件。

        最后还是存在一些疑问:如果是由于没有初始化tmpdir,为什么在我第一次安装的时候也没有初始化,但也没有出现这样的问题?

    三、

            以前手动安装MySQL5.0.16的windows service时很顺利,昨晚为5.0.83安装service时,总是提示1067的错误。网上有人说把my.ini放到C:WINDOWS下就可以了,但我遇到的情况是问题仍然没有解决。我的解决办法是将参数中的--defaults-file用--defaults-extra-file取代,如下:

            mysqld --install MySQL --defaults-file=E:/mysql-5.0.83-win32/my.ini

            改为

            mysqld --install MySQL --defaults-extra-file=E:/mysql-5.0.83-win32/my.ini

            执行mysqld --verbose --help能看到mysqld的用法,其中就有这两个参数的说明。

     

       根据我自己的实践,引起这个问题最大的可能性是数据表存储引擎(Engine,简而言之,存储引擎就是指表的类型,即Table Type

    )引起的。MySQL数据库支持的数据表存储引擎有多种,可以用命令:show engines进行查看,在MySQL的配置文件my.ini中可以也看到(默认的是MyISAM):

    # The default storage engine that will be used when create new tables when default-storage-engine=MyISAM。

        常用的存储引擎还有InnoDB,InnoDB有多种优点,InnoDB给MySQL的表提供了事务、回滚、崩溃修复能力、多版本并发控制的事务安全.同时,InnoDB也是MySQL上第一个提供外键约束的引擎,而且InnoDB存储引擎对事务处理的能力也是MySQL其他存储引擎所无法与之比拟的。 

        InnoDB与MyISAM的区别:

        以InnoDB存储引擎存储的表,存储表结构的.frm与存储的表数据文件(ibdata1)是分开存放的,存储表数据的文件位置可以通过修改my.ini文件自行设置:

     #*** INNODB Specific options ***

    innodb_data_home_dir="D:/"

        以MyISAM存储引擎存储的表,一共包括3个文件:.frm(存储表的结构)文件,.MYD(MYouData的缩写,存储表的数据)文件,.MYI(MYIndex的缩写,存储表的索引),这个三个文件同时存放在MySQL数据库安装时存放数据的目录下,如E:迅雷下载mysql-5.6.24-win32.1432006610mysql-5.6.24-win32dataDatabasename中。

        另外,通过对这次问题的解决,我认识到了查看错误日志的重要性,当遇到问题的时候,我们首先想到的应该是去查看错误日志,而不是不加思索去Google或者去baidu,其实从错误日志中我们能得到真正造成问题的原因,对症下药,才能药到病除。MySQL的错误日志(.err)位于E:迅雷下载mysql-5.6.24-win32.1432006610mysql-5.6.24-win32data目录下,文件名一般为你的计算机名。

  • 相关阅读:
    [LeetCode] 52. N-Queens II N皇后问题之二
    [LeetCode] 51. N-Queens N皇后问题
    [LeetCode] 53. Maximum Subarray 最大子数组
    [LeetCode] 45. Jump Game II 跳跃游戏之二
    [LeetCode] 55. Jump Game 跳跃游戏
    [LeetCode] 56. Merge Intervals 合并区间
    [LeetCode] 57. Insert Interval 插入区间
    Android中渐变图片失真的解决方案
    Android compress 压缩 会不会失真
    Android ImageView的几种对图片的缩放处理 解决imageview放大图片后失真问题解决办法
  • 原文地址:https://www.cnblogs.com/ZHONGZHENHUA/p/6622158.html
Copyright © 2011-2022 走看看