innodb read only必须要选transactional database only吗

MySQL从MyISAM转换成InnoDB错误与常用解决办法
MySQL从MyISAM转换成InnoDB错误与常用解决办法
  原来自己用的是为了装的, 所以在设置database usage(如下图1)的时候按照discuz官方的建议,选的都是Non-Transactional Database Only(只支持MyISAM数据引擎的非事务数据库),用MyISAM数据库,还没涉及到需要InnoDB,因此打算直接不加载INNODB引擎。后来在做WordPress,一开始还不知道原来WordPress用的是InnoDB数据引擎,于是在原来的数据库里面就建了一个数据库,一开始也没发觉问题,安装,导入sql,都没问题,当时也没多想。直到这几天因为又要装多一个WordPress,用phpmyadmin访问数据库多一点,问题来了。老是一访问WordPress的数据库,就弹出错误提示“Mysqld-nt.exe应用程序错误:“0x”指令引用的“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服务 错误1067:进程意外中止。”
  按照网上的某些做法,卸载了MySQL服务,也没重启就重新设置,问题如故;把服务卸载了,重启后再重新设置,则是启动服务成功,但是在后面的Applying Security Settings的时候有新的问题,如下图3。图2那里的错误提示则变成“ERROR 2003: Can't connect to MySQL server on 'localhost' (10061)", 说明MySQL还是没有启动,或者启动过,出错又关了。
  顺便提一下,在MySQL5里(其他版本的我不知道)每运行一次设置向导,只要按了execute执行,都会在MySQL5的安装目录下自动生成一个原来的MySQL的设置文件my.ini的备份bak文件。并且将以修改的时间命名。因此如果设置出了问题,可以从备份文件恢复。
  后来还是在错误日志里找到思路。错误日志就是放在 MySQL5安装目录\Data 目录里的那个以你的计算机名命名的.err文件。
  首先我找到以下一段:
    InnoDB: Error: log file .\ib_logfile0 is of different size 0
  InnoDB: than specified in f file 0
  :47:42 [ERROR] Default storage engine (InnoDB) is not available
  :47:42 [ERROR] Aborting
  :47:42 [Note] D:\MySQL5\bin\mysqld-nt: Shutdown complete
  于是就到“MySQL5安装目录\Data&”目录里把ib_logfile0日志文件删掉,重启MySQL服务,还是提示10067错误。再去查看err文件。
    :39:29 &InnoDB: Log file .\ib_logfile0 did not exist: new to be created
  InnoDB: Setting log file .\ib_logfile0 size to 109 MB
  InnoDB: Database physically writes the file full: wait...
  InnoDB: Progress in MB: 100
  InnoDB: Error: log file .\ib_logfile1 is of different size 0
  InnoDB: than specified in f file 0
  :39:30 [ERROR] Default storage engine (InnoDB) is not available
  :39:30 [ERROR] Aborting
  :39:30 [Note] D:\MySQL5\bin\mysqld-nt: Shutdown complete
  可以看到,ib_logfile0的问题解决了,但是同样的问题却出在ib_logfile1上面了。于是依样画葫芦,把ib_logfile1删了,再重启MySQL服务,却发现没用。难道是还要重启系统。果真,把前面两个ib_logfile删了,重启系统就搞定了。前面的可能是因为刚开机,所以也行。实际上是需要重启系统的。这时的日志如下
    :19:24 &InnoDB: Log file .\ib_logfile0 did not exist: new to be created
  InnoDB: Setting log file .\ib_logfile0 size to 109 MB
  InnoDB: Database physically writes the file full: wait...
  InnoDB: Progress in MB: 100
  :19:26 &InnoDB: Log file .\ib_logfile1 did not exist: new to be created
  InnoDB: Setting log file .\ib_logfile1 size to 109 MB
  InnoDB: Database physically writes the file full: wait...
  InnoDB: Progress in MB: 100
  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.
  :19:27 [ERROR] Default storage engine (InnoDB) is not available
  :19:27 [ERROR] Aborting
  :19:27 [Note] D:\MySQL5\bin\mysqld-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:
  :45:09 [ERROR] Default storage engine (InnoDB) is not available
  :45:09 [ERROR] Aborting
  :45:09 [Note] D:\MySQL5\bin\mysqld-nt: Shutdown complete
  于是去网上搜索了一下,发现提示No valid checkpoint found.的解决办法:删除所有现有的ibdataN和ib_logfileN文件后,重启Mysql。于是照做,果然行了。
    InnoDB: The first specified data file D:\MySQL InnoDB Datafiles\ibdata1 did not exist:
  InnoDB: a new database to be created!
  :04:24 &InnoDB: Setting file D:\MySQL InnoDB Datafiles\ibdata1 size to 10 MB
  InnoDB: Database physically writes the file full: wait...
  :04:25 &InnoDB: Log file .\ib_logfile0 did not exist: new to be created
  InnoDB: Setting log file .\ib_logfile0 size to 109 MB
  InnoDB: Database physically writes the file full: wait...
  InnoDB: Progress in MB: 100
  :04:27 &InnoDB: Log file .\ib_logfile1 did not exist: new to be created
  InnoDB: Setting log file .\ib_logfile1 size to 109 MB
  InnoDB: Database physically writes the file full: wait...
  InnoDB: Progress in MB: 100
  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
  :04:31 &InnoDB: S log sequence number 0 0
  :04:32 [Note] D:\MySQL5\bin\mysqld-nt: ready for connections.
  Version: '5.0.18-nt' &socket: '' &port: 3306 &MySQL Community Edition (GPL)
  奋斗了一天,总算成功地把MySQL从MyISAM转换成InnoDB引擎了。也学会了读懂错误日志文件err文件了。不过我就在想了,如果从一开始就按照上面的做,不知道会怎么样呢?
H3C认证Java认证Oracle认证
基础英语软考英语项目管理英语职场英语
.NETPowerBuilderWeb开发游戏开发Perl
二级模拟试题一级模拟试题一级考试经验四级考试资料
港口与航道工程建设工程法规及相关知识建设工程经济考试大纲矿业工程市政公用工程通信与广电工程
操作系统汇编语言计算机系统结构人工智能数据库系统微机与接口
软件测试软件外包系统分析与建模敏捷开发
法律法规历年试题软考英语网络管理员系统架构设计师信息系统监理师
高级通信工程师考试大纲设备环境综合能力
路由技术网络存储无线网络网络设备
CPMP考试prince2认证项目范围管理项目配置管理项目管理案例项目经理项目干系人管理
Powerpoint教程WPS教程
电子政务客户关系管理首席信息官办公自动化大数据
职称考试题目
就业指导签约违约职业测评
招生信息考研政治
网络安全安全设置工具使用手机安全
3DMax教程Flash教程CorelDraw教程Director教程
Dreamwaver教程HTML教程网站策划网站运营Frontpage教程
生物识别传感器物联网传输层物联网前沿技术物联网案例分析
互联网电信IT业界IT生活
Java核心技术J2ME教程
Linux系统管理Linux编程Linux安全AIX教程
Windows系统管理Windows教程Windows网络管理Windows故障
组织运营财务资本
视频播放文件压缩杀毒软件输入法微博
数据库开发Sybase数据库Informix数据库
&&&&&&&&&&&&&&&
希赛网 版权所有 & &&2728293031123478911121314151617181920212223242526272829301234567
阅读排行榜
评论排行榜mysql安装配置详解教程(一)
MySQL数据库具有跨平台性,不仅可以在Windows上运行,还可以在UNIX,Linux和Mac OS等操作系统上运行 1.先简单说下MySQL的版本:根据操作系统的类型可分为:Windows版、UNIX版、Linux版和Mac OS版根据用户群体的不同可分为:社区版(Community Edition)和企业版(Enterprise),社区版完全免费,企业版是收费的根据发布顺序来区分可分为:4.1、5.0、5.1、5.4、6.0等版本根据MySQL的开发情况分为:Alpha、Beta、Gamma和Generally Available(GA)等版本几种版本说明:Alpha:处于开发阶段的版本,可能会增加功能或修改Beta:开发已基本完成,处于测试阶段的版本,但没有进行全面的测试Gamma:发行过一段时间的Beta版本,比Beta稳定Generally Available(GA):最稳定版本,可以应用于软件开发 例:mysql-essential-6.0.11-alpha-win32.msiessential:该版本包含MySQL中必要部分,不包含不常用部分6:主版本号0:发行级别11:该级别下的版本号(此处为0级别下的第11版本)alpha:处于开发阶段的版本win32:运行于32位Windows上的版本msi:安装文件的格式 下面介绍Mysql在常用系统Windows和Linux下的安装配置 2.在Windows上安装与配置MySQLMySQL在Windows上的安装包有两种:图形化界面的安装和免安装(noinstall)图形化界面安装也有两种可选包:Windows Essentials和Windows MSI InstallerWindows Essentials上面已经提到过,只包含MySQL必要部分,不包含不常用部分Windows MSI Installer是常用和不常用都包含的包 我以Essentials包为例进行安装:
1& 双击mysql-5.1.72-winx64.msi 2& 接受协议,next3& 选择“Custom”,next 4& 点击“Change…” 5& 修改MySQL安装路径,点“OK” 6& next 7& 点“Install”
8& next9& next10& 保持选中“Configure the MySQL Server now”不变,点“Finish”11& next 12& 选择“Detailed Configuration”,nextDetailed Configuration:详细配置,数据库若作为企业的Server,那就选这个选项吧,若自己练习,可以选择“Standard Configuration”Standard Configuration:标准配置13& 选择“Server Machine”,next默认为“Developer Machine”Developer Machine:开发测试类,耗资源少Server Machine:服务器类型,占资源较多Dedicated MySQL Server Machine:专用数据库服务器类型,占所有可用资源14& 选择“Transactional Database Only”,next默认为“Multifunctional Database”Multifunctional Database:通用型Transactional Database Only:事务处理型,适用于web等事务处理类型的应用服务,对InnoDB引擎支持较好Non-Transactional Database Only:非事务处理型,较简单,主要用于监控、计数应用,对MyISAM引擎支持较好15& 选择存储InnoDB表空间数据文件的路径,默认为“Installation Path(安装路径)”,next16& 设置并发连接数,我选择了第二个“Online Transaction Processing(OLTP)”Decision Support (DSS)/OLAP:支持20个并发连接Online Transaction Processing(OLTP):能支持500个并发连接Manual Setting:手动指定并发数,默认1517& 是否启用TCP/IP连接,默认启用,设定MySQL端口,默认为“3306”,勾选上将端口添加到防火墙策略,是否开启严格模式,若开启,数据库对数据的过滤更加严格,不允许有任何语法等错误,提高了数据的准确性 18& 字符集设置,我选择了第三个“Manual Selected Default Character Set/ Collation”,选择字符集为“gbk”,nextStandard Character Set:默认字符集为Latin1,适用于英语以及西欧语言Best Support For Multilingualism:默认字符集为UTF8Manual Selected Default Character Set/ Collation:手动选择字符集,选择gbk或者gb2312,二者区别:gbk字库容量大,包括了gb231219& 选择是否将mysql安装为windows服务,默认勾选,Service Name设置服务名,默认为:MySQL,勾选“Launch the MySQL Server automatically”和“Include Bin Directory in Windows PATH”,next Launch the MySQL Server automatically:是否设置开机启动Include Bin Directory in Windows PATH:将MySQL 的应用程序目录添加到Windows系统的PATH中,这样就可以直接在DOS窗口中访问MySQL,而不用到MySQL的bin目录下进行访问 20& 设置MySQL超级用户root的密码以及是否创建一个匿名用户,不勾选“Create An Anonymous Account”,next
21& 点“Execute”22& 点“Finish” 完成安装在最后一步的时候有几个常见的错误,详见:解决MySQL5.1安装时出现Cannot create windows service for mysql.error:0 解决MySQL安装重装时出现could not start the service mysql error:0问题的方法以上就是mysql安装配置方法的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。您可能感兴趣的文章:mysql 5.7.12 winx64安装配置方法图文教程win7下MySql 5.7安装配置方法图文教程mysql安装不上怎么办 mysql安装失败原因和解决方法mysql 5.7.30安装配置方法图文教程MySql安装启动两种方法教程详解win2008 r2 服务器php+mysql+sqlserver2008运行环境配置(从安装、优化、安全等)mysql 5.7.13 winx64安装配置方法图文教程mysql5.7.13.zip安装教程(windows)mysql 5.7.13 安装配置方法图文教程(win10)mysql 5.7.13 安装配置方法图文教程(linux)
最新教程周点击榜
微信扫一扫

我要回帖

更多关于 transactional 无效 的文章

 

随机推荐