位置: 编程技术 - 正文

mysql Non-Transactional Database Only(只支持MyISAM)

编辑:rootadmin

推荐整理分享mysql Non-Transactional Database Only(只支持MyISAM),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

后来在做WordPress,一开始还不知道原来WordPress用的是InnoDB数据引擎,于是在原来的数据库里面就建了一个数据库,一开始也没发觉问题,安装,导入sql,都没问题,当时也没多想。直到这几天因为又要装多一个WordPress,用phpmyadmin访问数据库多一点,问题来了。老是一访问WordPress的数据库,就弹出错误提示“Mysqld-nt.exe应用程序错误:“0xc4”指令引用的“0x”内存,该内存不能为读...”,然后就MySQL服务也停了,登陆不了,整个数据库都访问不了。

图1 设置数据库类型

纠结了挺久,也忘了是看到什么文章触发了灵感,反正后来才知道原来是数据引擎不同惹的祸。于是就想到重新运行次设置向导,把数据库类型改成支持InnoDB引擎的。马上行动,在向导里设置数据库类型(也就是图1的database usage)那里,设置成第二项,还在后面的InnoDB Tablespace Settings里把InnoDB数据文件设置放在D:MySQL InnoDB Datafiles目录里。但是在最后execute执行的时候,却老是在Start Service那里出问题,如下图2。

图2 Start service出错

想直接到services.msc里面启动服务,也不行。错误提示内容为:“在 本地计算机 无法启动mysql服务 错误:进程意外中止。”

按照网上的某些做法,卸载了MySQL服务,也没重启就重新设置,问题如故;把服务卸载了,重启后再重新设置,则是启动服务成功,但是在后面的Applying Security Settings的时候有新的问题,如下图3。图2那里的错误提示则变成“ERROR : Can't connect to MySQL server on 'localhost' ()", 说明MySQL还是没有启动,或者启动过,出错又关了。

图3

顺便提一下,在MySQL5里(其他版本的我不知道)每运行一次设置向导,只要按了execute执行,都会在MySQL5的安装目录下自动生成一个原来的MySQL的设置文件my.ini的备份bak文件。并且将以修改的时间命名。因此如果设置出了问题,可以从备份文件恢复。

后来还是在错误日志里找到思路。错误日志就是放在 MySQL5安装目录Data 目录里的那个以你的计算机名命名的.err文件。

首先我找到以下一段:

InnoDB: Error: log file .ib_logfile0 is of different size 0 bytes

InnoDB: than specified in the .cnf file 0 bytes!

9:: [ERROR] Default storage engine (InnoDB) is not available

9:: [ERROR] Aborting

9:: [Note] D:MySQL5binmysqld-nt: Shutdown complete

于是就到“MySQL5安装目录Data ”目录里把ib_logfile0日志文件删掉,重启MySQL服务,还是提示错误。再去查看err文件。

:: InnoDB: Log file .ib_logfile0 did not exist: new to be created

InnoDB: Setting log file .ib_logfile0 size to MB

InnoDB: Database physically writes the file full: wait...

InnoDB: Progress in MB:

InnoDB: Error: log file .ib_logfile1 is of different size 0 bytes

InnoDB: than specified in the .cnf file 0 bytes!

:: [ERROR] Default storage engine (InnoDB) is not available

:: [ERROR] Aborting

:: [Note] D:MySQL5binmysqld-nt: Shutdown complete

可以看到,ib_logfile0的问题解决了,但是同样的问题却出在ib_logfile1上面了。于是依样画葫芦,把ib_logfile1删了,再重启MySQL服务,却发现没用。难道是还要重启系统。果真,把前面两个ib_logfile删了,重启系统就搞定了。前面的可能是因为刚开机,所以也行。实际上是需要重启系统的。这时的日志如下

:: InnoDB: Log file .ib_logfile0 did not exist: new to be created

InnoDB: Setting log file .ib_logfile0 size to MB

InnoDB: Database physically writes the file full: wait...

InnoDB: Progress in MB:

:: InnoDB: Log file .ib_logfile1 did not exist: new to be created

InnoDB: Setting log file .ib_logfile1 size to MB

InnoDB: Database physically writes the file full: wait...

InnoDB: Progress in MB:

mysql Non-Transactional Database Only(只支持MyISAM)

InnoDB: Cannot initialize created log files because

InnoDB: data files are corrupt, or new data files were

InnoDB: created when the database was started previous

InnoDB: time but the database was not shut down

InnoDB: normally after that.

:: [ERROR] Default storage engine (InnoDB) is not available

:: [ERROR] Aborting

:: [Note] D:MySQL5binmysqld-nt: Shutdown complete

好了,现在只剩下最后一个问题了Default storage engine (InnoDB) is not available。去services.msc里面启动MySQL服务,还是出错。但是日志却是显示

InnoDB: No valid checkpoint found.

InnoDB: If this error appears when you are creating an InnoDB database,

InnoDB: the problem may be that during an earlier attempt you managed

InnoDB: to create the InnoDB data files, but log file creation failed.

InnoDB: If that is the case, please refer to

InnoDB: :: [ERROR] Default storage engine (InnoDB) is not available

:: [ERROR] Aborting

:: [Note] D:MySQL5binmysqld-nt: Shutdown complete

于是去网上搜索了一下,发现提示No valid checkpoint found.的解决办法:删除所有现有的ibdataN和ib_logfileN文件后,重启Mysql。于是照做,果然行了。

InnoDB: The first specified data file D:MySQL InnoDB Datafilesibdata1 did not exist:

InnoDB: a new database to be created!

:: InnoDB: Setting file D:MySQL InnoDB Datafilesibdata1 size to MB

InnoDB: Database physically writes the file full: wait...

:: InnoDB: Log file .ib_logfile0 did not exist: new to be created

InnoDB: Setting log file .ib_logfile0 size to MB

InnoDB: Database physically writes the file full: wait...

InnoDB: Progress in MB:

:: InnoDB: Log file .ib_logfile1 did not exist: new to be created

InnoDB: Setting log file .ib_logfile1 size to MB

InnoDB: Database physically writes the file full: wait...

InnoDB: Progress in MB:

InnoDB: Doublewrite buffer not found: creating new

InnoDB: Doublewrite buffer created

InnoDB: Creating foreign key constraint system tables

InnoDB: Foreign key constraint system tables created

:: InnoDB: Started; log sequence number 0 0

:: [Note] D:MySQL5binmysqld-nt: ready for connections.

Version: '5.0.-nt' socket: '' port: MySQL Community Edition (GPL)

奋斗了一天,总算成功地把MySQL从MyISAM转换成InnoDB引擎了。也学会了读懂错误日志文件err文件了。不过我就在想了,如果从一开始就按照上面的做,不知道会怎么样呢?转自 DarkBlue blog

MySQL命令行中给表添加一个字段(字段名、是否为空、默认值) 先看一下最简单的例子,在test中,添加一个字段,字段名为birth,类型为date类型。mysqlaltertabletestaddcolumnbirthdate;QueryOK,0rowsaffected(0.sec)Records:0Duplicates:0Wa

MySQL查询空字段或非空字段(is null和not null) 现在我们先来把test表中的一条记录的birth字段设置为空。mysqlupdatetestsett_birth=nullwheret_id=1;QueryOK,1rowaffected(0.sec)Rowsmatched:1Changed:1Warnings:0OK,执行成功!

MySQL查看与修改当前数据库编码的方法 MySQL中,数据库的编码是一个相当重要的问题,有时候我们需要查看一下当前数据库的编码,甚至需要修改一下数据库编码。查看当前数据库编码的SQL语

标签: mysql Non-Transactional Database Only(只支持MyISAM)

本文链接地址:https://www.jiuchutong.com/biancheng/321281.html 转载请保留说明!

上一篇:mysql 5.5.x zip直接解压版安装方法

下一篇:MySQL命令行中给表添加一个字段(字段名、是否为空、默认值)(mysql命令行怎么用)

  • 非营利组织所得税
  • 企业之间拆借资金是什么意思
  • 发票没有纳税人识别号怎么重开
  • 运输企业内账
  • 实际已缴纳所得税额不自动带出
  • 合同不交印花税合法吗
  • 刷卡收手续费吗
  • 二手车固定资产
  • 邮局可以开发票吗 税点多少
  • 出口退税企业退税时间
  • 房产税收取标准有哪些
  • 投资公司的投资人叫什么
  • 机票电子行程单和发票的区别
  • 支付购买机器的价款
  • 房地产增值税发票有什么用
  • 收到报废车款要交什么税
  • 免税企业取得增值税专用发票怎么处理
  • 电话费发票可以重新开吗
  • 金融企业贷款损失税前扣除
  • 买卖房子归谁管
  • 固定资产已入库款项已付次月开发票何时记提折旧
  • 长期待摊费用的内容和特征
  • 需要自己到税务局自行申报个人所得税的纳税人有哪些?
  • 电脑上不了网怎么安装网卡驱动
  • mac切换不了中文怎么回事
  • php错误日志
  • .inc是什么文件
  • 损失赔偿金要开什么发票
  • linux操作系统文件系统
  • 供电企业收费项目管理的暂行规定
  • 年终结算啥意思
  • 小微企业免征增值税政策2023
  • thinkphp框架的作用
  • javascript - localStorage 本地存储(新增、删除、修改)使用教程
  • ChatGPT强化学习大杀器——近端策略优化(PPO)
  • php微信公众号 全站模板
  • php获取当前文件夹
  • 报关单在哪里打出来
  • 公司注册实收资本能为0嘛
  • 工资的补贴是多少
  • 计提年终奖的会计分录
  • 将织梦dedecms转换到wordpress
  • 销售劳务和销售货物的区别
  • sql server 2008怎么用
  • 住房公积金有什么好处和优势?
  • 汇算清缴时资产折旧怎么填
  • 其他应付款做账
  • 新公司核税需要什么材料
  • 上月发票如何冲红
  • 增值税进项税额抵扣期限最新
  • 现金比率的计算公式是什么意思
  • 退款产生的手续费怎么算
  • 咨询公司评估选择标准
  • 会议费报销时应当提供哪些材料
  • 享受研发费用加计扣除需要什么条件
  • 生产成本和主营业务成本金额一样吗
  • 服务企业会计建账流程
  • quicklook预览word
  • win7系统屏幕键盘怎么打开
  • linux系统批量任务
  • win8.1输入法打不了中文
  • linux查看使用率命令
  • unity跨脚本调用函数
  • jqueryfind
  • android真机调试解析包错误
  • linux curl用法
  • Unity3D游戏开发引擎
  • opengl 实现
  • 学习计划表模板
  • java scripts
  • jquery validate remote
  • jquery给td设置内容
  • 请不要重复犯我在学习Python和Linux系统上的错误
  • unity3d快速入门
  • jquery如何解决跨域问题
  • javascript的基本语法
  • 江苏国家电子税务局网站
  • 怎样提高增值税税率
  • 可转债中签当天扣款吗
  • 城建税教育费附加怎么做分录
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设