位置: 编程技术 - 正文

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

  • php字符串操作常见问题小结(在php中,字符串有哪些表示形式)

    php字符串操作常见问题小结(在php中,字符串有哪些表示形式)

  • 教你如何看懂SQL Server查询计划(教你如何看懂标签)

    可以从图片上看到,执行查询后,得到二个表格,上面的表格显示了查询的结果,下面的表格显示了查询的执行过程。相比本文的第一张图片,这张图片可能在直观上不太友好,但是,它能反映更多的信息,而且尤其在比较复杂的查询时,可能看起来更容易,因为对于复杂的查询,【执行计划】的步骤太多,图形方式会造成图形过大,不容易观察。而且这张执行过程表格能反映2个很有价值的数据(前二列)。

    还是来看看这个【执行过程表格】吧。我来挑几个重要的说一下。【Rows】:表示在一个执行步骤中,所产生的记录条数。(真实数据,非预期)【Executes】:表示某个执行步骤被执行的次数。(真实数据,非预期)【Stmt Text】:表示要执行的步骤的描述。【EstimateRows】:表示要预期返回多少行数据。

    在这个【执行过程表格】中,对于优化查询来说,我认为前三列是比较重要的。对于前二列,我上面也解释了,意思也很清楚。前二列的数字也大致反映了那些步骤所花的成本,对于比较慢的查询中,应该留意它们。【Stmt Text】会告诉你每个步骤做了什么事情。对于这种表格,它所要表达的其实是一种树型信息(一行就表示在图形方式下的一个节点),所以,我建议从最内层开始去读它们。做为示例,我来解释一下这张表格它所表达的执行过程。

    第5行:【Clustered Index Seek(OBJECT:([MyNorthwind].[dbo].[Customers].[PK_Customers]), SEEK:([MyNorthwind].[dbo].[Customers].[CustomerID]=[MyNorthwind].[dbo].[Orders].[CustomerID]) ORDERED FORWARD)】,意思是说,SQL Server在对表Customers做Seek操作,而且是按照【Clustered Index Seek】的方式,对应的索引是【PK_Customers】,seek的值来源于[Orders].[CustomerID]

    第4行:【Clustered Index Scan(OBJECT:([MyNorthwind].[dbo].[Orders].[PK_Orders]), WHERE:([MyNorthwind].[dbo].[Orders].[OrderDate]>='-- ::." class="img-responsive" alt="教你如何看懂SQL Server查询计划(教你如何看懂标签)">

    教你如何看懂SQL Server查询计划(教你如何看懂标签)

  • windows server 2008 64位MySQL5.6免安装版本配置方法图解

    windows server 2008 64位MySQL5.6免安装版本配置方法图解

  • 详解MySQL数据库优化的八种方式(经典必看)(mysql数据库简单介绍)

    详解MySQL数据库优化的八种方式(经典必看)(mysql数据库简单介绍)

  • Mac系统的显示器怎么设置为暖色调?(mac 显示器)

    Mac系统的显示器怎么设置为暖色调?(mac 显示器)

  • 科普:Linux系统与Windows系统的区别(linux系统啥样)

    科普:Linux系统与Windows系统的区别(linux系统啥样)

  • 基于JavaScript实现五子棋游戏(javascript运用)

    基于JavaScript实现五子棋游戏(javascript运用)

  • 关于eval 与new Function 到底该选哪个?(下列关于eval()函数的说法正确的是)

    关于eval 与new Function 到底该选哪个?(下列关于eval()函数的说法正确的是)

  • 非商业性旅游服务
  • 缺少订单停工费用如何做账
  • 咨询公司小规模纳税人怎么界定
  • 企业是否可以查员工亲属关系
  • 累计所得税前净现金流量计算公式为
  • 长期待摊费用的摊销方法
  • 认缴制下收到股东转入的钱怎么入账
  • 免息分期怎么还款
  • 年初未分配利润加本年净利润等于
  • 关于国际货运代理协会联合会的描述不正确的是
  • 金融业营业税改增值税
  • 资源税改革对政治的影响
  • 外购商品用于招待怎么做账
  • 企业所得税是当期收入吗
  • 个人出租土地使用权增值税的减免
  • 购买银行承兑汇票的会计分录
  • 进项税额能抵扣的几种情形
  • 1697510816
  • 发票登记薄的样式是什么
  • 工资薪金怎么申报9
  • win 7系统如何备份
  • .linux文件
  • 公司已经改名原来的公章还有效吗
  • 实缴注册资本股权转让怎么交税
  • 支付手续费委托代销是什么意思
  • 月末季末年末会计都需要做什么
  • 业务招待费的税收金额怎么算
  • 增值税三流合一涉及子公司
  • 买保险公司的养老保险合适吗
  • 营业利润期末余额怎么算
  • 事业单位接受捐赠固定资产入账
  • 公司注销清算的会计分录
  • 开具红字发票资料清单
  • 销售退货和折让是收入吗?吗?
  • 绿化养护合同交不交印花税
  • sqlserver附加数据库语句
  • 个人销售商品交什么税
  • 计入固定资产和费用的区别
  • 企业所得税交完了转个人
  • 单位买的空调计入什么科目
  • 小规模减免的增值税要交所得税吗
  • 用友t3软件财务软件具体操作
  • 购货方发生退货的会计分录
  • 完税证明和纳税证明一样吗
  • 公司支票可以转给个人吗
  • 客户给的现金如何转到公司账上
  • 企业申请支付宝账号步骤
  • 财付通交易手续费多少
  • 公司转让无形资产开什么票
  • 租入固定资产改良支出属于收益性支出吗
  • 私企需要计提盈余公积吗
  • sql server的 update from 语句的深究
  • mysql搜索字段内容
  • sqlserver 自动备份所有数据库的SQL
  • 开源操作系统年度技术会议
  • windows7wifi密码
  • win10显示请勿关闭电脑
  • centos 界面安装
  • freebsd11.3安装教程
  • system idle process是什么进程(CPU的空闲率)
  • win10预览版21277
  • linux入门知识
  • js获取秒数
  • tf-idf例题
  • cocos游戏开发教程
  • jquery选择器的使用
  • angularjs1.5
  • 安卓网络编程面试题
  • nodejs fabric
  • python元祖内置函数
  • 原生js实现promise.all
  • 如何防止蟑螂爬到床上
  • jquery教程chm
  • 请问一般纳税人的业务协调税率是多少
  • 江苏国税网上勾选平台
  • 出租车发票密码区被撕掉了能报销吗?
  • 青椒课堂怎么激活登录
  • 电子税务局如何解绑办税人员
  • 全国初中应用物理知识竞赛获奖名单
  • 营改增之前和之后
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设