原文链接:

http://www.mysqlops.com/2011/03/30/myisam-innodb.html

环境描述:
某朋友公司进行一次数据库迁移,由于设置问题导致所有的数据库表储存引擎都设置为:MyISAM,按照业务需求,
部分数据库表必须为:InnoDB,否则会导致事务执行失败及不起效,为此把需要的数据库表存储引擎从MyISAM 改为 InnoDB,
而其数据库中大概有300多张表,其中将近三分之一表需要修改为:InnoDB,剩下的继续使用MyISAM引擎。
备注:暂时没有一张innodb引擎的表,另外my.cnf配置也不太妥当,相关参数没有给其相应合适的值

硬件环境:
机型:R710  CPU:2颗4core E5620  MEM:24G  RAID:1+0  DISK:6*15K*146G  Network:2*1000M

自动生成修改动作及检查动作的SQL语句:

用于生成变更的SQL语句:
SELECT CONCAT(‘ALTER TABLE ‘,table_name,’ ENGINE=InnoDB;’) FROM information_schema.tables WHERE table_schema=’db_name’ AND `ENGINE`=’myisam’;

用于生成检查表的SQL语句:
SELECT CONCAT(‘CHECK TABLE ‘,table_name) FROM information_schema.tables WHERE table_schema=’db_name’;

由于其表名称没有规律,无法再进步通过SQL语句条件缩小范围,只好再人工进行后续编辑,当变更及检查的SQL语句准备妥当,即将开始其修改征程:

1.停掉mysqld服务
mysqladmin -uroot -p*** –socket=/data/mysqldata/sock/mysql.sock shutdown

2.修改my.cnf文件配置
innodb_file_per_table
innodb_data_file_path=ibdata1:256M:autoextend

innodb_buffer_pool_size = 10G
innodb_log_buffer_size  = 8M
key_buffer_size         = 2G

innodb_log_file_size      = 256M
innodb_log_files_in_group = 8

3.把已经生成好的ibdata、ib_logfile文件先移动到其他目录
备注:当前没有使用innodb引擎的表,要是有需要再另外处理,若还是共享表空间,那就不能这么蛮干

4.启动mysqld服务
mysqld_safe &

5.执行修改参数
SET GLOBAL sort_buffer_size=128*1024*1024;
SET GLOBAL tmp_table_size=128*1024*1024;
SET GLOBAL read_buffer_size=32*1024*1024;
SET GLOBAL read_rnd_buffer_size=32*1024*1024;

6.执行ALTER TABLE语句

7.执行CHECK语句

8.修改my.cnf配置
sort_buffer_size = 2M
tmp_table_size = 8M
read_buffer_size = 2M
read_rnd_buffer_size = 1M

9.设置全局变量
SET GLOBAL sort_buffer_size=2*1024*1024;
SET GLOBAL tmp_table_size=8*1024*1024;
SET GLOBAL read_buffer_size=2*1024*1024;
SET GLOBAL read_rnd_buffer_size=1*1024*1024;

10.开放服务、并且做测试、监控mysql日志及程序日志信息

生产环境紧急修改表存储引擎:MyISAM 为 InnoDB步骤(转老金)相关推荐

  1. mysql 两种存储引擎 MyISAM 和InnoDB

    mysql 两种存储引擎 MyISAM 和InnoDB MyISAM 是MySQL中默认的存储引擎,一般来说不是有太多人关心这个东西.决定使用什么样的存储引擎是一个很tricky的事情,但是还是值我们 ...

  2. mysql and常用引擎_MySQL两大常用存储引擎MyISAM,InnoDB的区别

    本文主要整理了MySQL两大常用的存储引擎MyISAM,InnoDB的六大常见区别,来源于Mysql手册以及互联网的资料 InnoDB与Myisam的六大区别 MyISAM InnoDB 构 成上的区 ...

  3. 理论+实操: MySQL索引与事务、视图、存储过程(软件开发用的多)、存储引擎MyISAM和InnoDB

    文章目录 一:索引的概念 二:索引的作用 三:索引的分类 3.1 普通索引 3.2 唯一性索引 3.3 主键 3.4 全文索引 3.5 单列索引与多列索引 四:创建索引的原则依据 五:创建索引的方法 ...

  4. MySQL的两个存储引擎--MyISAM和InnoDB

    MySQL区别于其他数据库的最重要的特点就是其插件式的表存储引擎.流行使用的有两个:MyISAM和InnoDB 1. MyISAM存储引擎 MyISAM存储引擎是MySQL官方提供的存储引擎.其特点是 ...

  5. MySQL 存储引擎(MyISAM、InnoDB、NDBCluster)

    前言 MySQL 的存储引擎可能是所有关系型数据库产品中最具有特色的了,不仅可以同时使用多种存储引擎,而且每种存储引擎和MySQL之间使用插件方式这种非常松的耦合关系. 由于各存储引擎功能特性差异较大 ...

  6. MySQL 存储引擎 | MyISAM 与 InnoDB

    文章目录 概念 innodb引擎的4大特性 索引结构 InnoDB MyISAM 区别 表级锁和行级锁 概念 MyISAM 是 MySQL 的默认数据库引擎(5.5版之前),但因为不支持事务处理而被 ...

  7. MySQL-体系结构以及常用存储引擎MyISAM和InnoDB初探

    文章目录 生猛干货 官方文档 MySQL体系结构 常用存储引擎之MyISAM MyISAM的组成 MyISAM的特征 MyISAM的限制 MyISAM的适用场景 常用存储引擎之Innodb Innod ...

  8. innodb和my查询速度_mysql存储引擎MyISAM和InnoDB

    MyISAM和InnoDB MyISAM是mysql5.7版本以前使用的存储引擎. 优点用于查询频率较高的场合中 ,例如网站商城的数据提拿等. 缺点是不支持事务,不适宜银行,证券等. 基于表锁定 读取 ...

  9. mysql还是mdb2_mysql两种表存储结构myisam和innodb的性能比较测试

    MyISAM:这个是默认类型,它是基于传统的ISAM类型,ISAM是Indexed Sequential Access Method (有索引的顺序访问方法) 的缩写,它是存储记录和文件的标准方法.与 ...

最新文章

  1. R语言使用pwr包的pwr.f2.test函数对线性回归模型进行效用分析(power analysis)、在已知效应量(effect size)、显著性水平、效用值的情况下计算需要的样本量
  2. 卡罗林斯卡学院(Karolinska Institute)
  3. 【windows】CMake安装小结
  4. 一步步把SAP GUI的事务码配置到SAP Fiori Launchpad里
  5. java内存管理机制剖析(一)
  6. 利用css transition属性实现一个带动画显隐的微信小程序部件
  7. 大数据胸_喂母乳会导致胸下垂?!你被这个谣言骗了多少年?
  8. 计算机视觉基础概念、运行原理和应用案例详解
  9. 语音识别语言模型介绍
  10. keybd_event模拟键盘输入
  11. 【NLP】学不会打我 半小时学会基本操作 12 命名实例提取
  12. 构建具有丰富功能的交互式 Kiosk
  13. 关于微信商户企业付款给用户限额问题的说明
  14. 服务器电脑用哪个系统好,电脑系统哪个好用?电脑系统有几种版本
  15. 年龄到底怎么算才对_怎么算年龄才是正确的
  16. Excel中通过FREQUENCY统计分数段
  17. 微信好友突破10000人,节跳动即将取消饮料补贴福利!!
  18. CAD新建、保存图形文件
  19. 玩游戏掉帧严重?看过来!
  20. 人生里的酸甜苦辣,缺了哪样都是遗憾

热门文章

  1. “傲慢”的飞书渴望被“白嫖”
  2. 更稳定的手势识别方法-基于手部骨架与关键点检测
  3. rust和gta5哪个吃配置_10款游戏体感嗨翻天的Steam大作,GTA5险无缘榜单,吃鸡仅排第三...
  4. 量子计算机九章潘建伟,从墨子号到九章量子计算机,潘建伟如何从无到有建立我国量子优势...
  5. 对空防御的训练 改编自BZOJ3165 (线段树永久化标记 李超线段树)
  6. bzoj 5143 [Ynoi2018]五彩斑斓的世界
  7. luogu P4117 [Ynoi2018] 五彩斑斓的世界
  8. 中科网威 下一代防火墙控制系统 账号密码泄露漏洞
  9. Linux下搜狗拼音输入法无法输出中文以及显示界面异常
  10. python mongodb驱动 pymongo模块常见用法总结