位置: 编程技术 - 正文

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

  • 计提税额与实缴税额的区别是什么?
  • 维修费税率是13的话归口什么类别
  • 专票红冲要不要收回发票联
  • 其他业务成本影响营业成本吗
  • 广告策划费会计分录
  • 购买税控盘全额退税
  • 可税前扣除的工资
  • 企业购入车辆会计分录
  • 商贸企业涉税问题
  • 向公司一般户的银行借款怎么做账?
  • 公司收款收据
  • 货运代理公司可以开运输费发票吗
  • 法人股东获得分红的规定
  • 证券投资基金管理人的职权
  • 税务局代开的专票信息填错了怎么办
  • 会计报表附表属于会计报表内容吗
  • 购物卡发票能否抵扣
  • 换汇成本怎么计算
  • 浅谈使用链式管理加强特殊监管场所
  • 电脑上的五角星是什么意思
  • 租赁公司收到租赁费发票分录
  • 先开票后发货开票时确认收入
  • 外购货物用于职工奖励
  • php中split
  • vue3中使用require
  • 会计差错及账项调整
  • 房地产开发企业销售自行开发的房地产项目
  • mac m1 rosetta编译
  • 任意公积金可以不提取吗
  • 自产产品发给员工账务处理
  • php框架有哪些官网
  • iis安装php环境
  • Cookie 的 SameSite 属性
  • 图像风格迁移网站
  • custom用法
  • 机器人折旧年限
  • 分公司二季度安全生产分析会内容
  • 怎样计算负债率
  • mysql数据库常用sql语句
  • 中药和中药饮片有区别吗
  • 餐饮发票要钱吗
  • 采购成本和销售成本的核算
  • 修理费账务处理
  • 土地摊销计入成本还是费用
  • 支付利息的现金流
  • 什么叫做增值税的新增价值呢
  • 扣缴税款和情形有关系吗
  • 人力资源外包服务企业
  • 公司给客户的礼品太差了还需要给客户吗
  • 支付宝企业账户在哪里查看
  • 预付卡发票如何做分录
  • 存货的实际成本法
  • 应交增值税贷方余额表示什么
  • 公司买支票需要带什么资料
  • sqlserver的分页语句
  • java调用jni
  • 向sql server数据库中导入
  • 在linux系统中
  • linux安装solr
  • xp系统怎么弄成win7
  • xp系统如何进入桌面
  • mac怎么玩电脑游戏
  • ubuntu14升级
  • centos7 ifcfg-lo
  • centos7网卡
  • win10太麻烦了
  • lnmp一键安装包 linux
  • 什么是四个菜
  • unity播放声音的方法
  • exit(1)和return的区别
  • 常用dos命令大全及用法
  • web开发css
  • 用python操作excel
  • unity移动ui
  • js修改地址栏参数但不让他跳转
  • node.js中http模块和url模块的简单介绍
  • json初学
  • node.js怎么用
  • androidのLinearLayout中组件右对齐
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设