位置: 编程技术 - 正文

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命令行怎么用)

  • 个人企业征收什么税
  • 小规模纳税人要做账吗
  • 营利性医疗机构筹建是什么意思
  • 企业会计准则可以中途变更吗
  • 企业的开办费
  • 合并报表中怎么抵消投资性房地产
  • 软件 折旧年限
  • 建筑工程怎么确定施工工程进度
  • 工程项目临时用工人员工工资怎么办
  • 单位劳务派遣的比例
  • 向银行申请签发银行汇票的会计分录
  • 以前年度损益调整会计分录
  • 免退税企业结转怎么操作
  • 他人购买股权个人所得缴纳个人所得税率是多少?
  • 公司购入汽车应交什么税
  • 利润为负会计分录
  • 卷式发票属于什么税
  • 外商企业需要交企业所得税吗
  • 分公司注销时有未分配利润需要交税吗
  • 研发支出采用什么明细账
  • 材料的盘点包括
  • 自然报废产生的固定资产净损失计入什么科目
  • 在幻灯片中导入视频文件后视频文件时被几个圆点框选
  • 产生的投资收益怎么算
  • 银行承兑汇票有纸质的吗
  • 转包工程款怎么结算
  • 手机CPU天梯图2023年7月
  • linux操作系统有哪些版本
  • 安卓车机系统开发
  • php解析url参数
  • php fgets
  • 金融行业如何征收营业税
  • 兰斯洛特
  • 应付账款重分类含不含暂估
  • 为什么那么多人考公务员
  • tomcat-juli
  • Android ImageView使用详解(系列教程三)
  • eltable数据多 卡
  • 建筑公司收到的劳务费发票
  • 软件企业会计账务处理
  • 居间协议合同范本完整版
  • 公司股东会和董事会
  • 企业境外收入境内申报
  • python__get__
  • 计提工资的时候跟发放的时候不一样怎么办
  • 自然人代开经营所得汇算清缴怎么做
  • 固定资产转在建工程
  • 培训费属于什么
  • 发票已经做账但要退款账不平咋办
  • SQL Server 2016 CTP2.2安装配置方法图文教程
  • sql20054n
  • mysql数据库优化配置
  • 没有发票可以先入费用科目吗
  • 什么情况下增值税进项税额转出
  • 银行的存单丢失了可以补办吗
  • 建造合同收入怎么算
  • sqlserver表排序
  • 使用SSIS创建同步数据库数据任务的方法
  • 如何关闭系统快捷键
  • windows地图导航
  • mac重装macos
  • linux修改ssh端口号启动失败
  • mac启动快捷键
  • linux wechat
  • Windows正在启动卡死
  • Win10 Mobile Build 10586.xx将持续更新 WP8.1用户可直升最新版
  • win8语音助手怎么关闭
  • windows8介绍
  • IE6,IE7和firefox对DIV的支持区别
  • div +css
  • python 检测主机存活
  • jquery.handleerror
  • android判断应用是否在前台
  • jquery图片上传
  • jsp中img标签
  • 建筑工程提前投入使用
  • 如何安装金税三期app
  • 买二手房土地证怎么过户
  • 财政临时工是什么
  • 文明6地球地图自然奇观位置
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设