码迷,mamicode.com
首页 > 数据库 > 详细

mysql存储引擎MyISAM和InnoDB

时间:2018-09-05 13:50:20      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:img   for   proc   etc   mysqld   inno   png   --   修改   

MyISAM和InnoDB

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


InnoDB是mysql5.7版本使用的存储引擎。
优点支持事务
缺点是对于数据提拿速度没有MyISAM那么快
行锁定 记录 读取和写入互阻塞


mysql> show engines; //查看mysql默认存储引擎

技术分享图片

mysql> show create table list; //查看已创建表list的存储引擎

技术分享图片

mysql> alter table list engine=MyISAM; //修改已存在表的存储引擎为MyISAM

技术分享图片

vim /etc/my.cnf
在mysqld模块下,添加该行
default-storage-engine=MyISAM
重启mysql
此后创建的表都是以MylSAM为默认存储引擎

技术分享图片

技术分享图片

批量更改表
yum install perl-DBI -y
yum install perl-DBD-MySQL -y
要先安装两个包
vim /usr/local/mysql/bin/mysql_convert_table_format //修改该命令的配置文件
"e|engine|type=s" => $opt_engine //32行修改
mysql_convert_table_format --host=localhost --user=root --password=123123 --socket=/home/mysql/mysql.sock --engine=InnoDB school list; //使用该命令批量修改

技术分享图片
技术分享图片
技术分享图片
技术分享图片

再次改为MyISAM
mysql_convert_table_format --user=root --password=123123 --socket=//home/mysql/mysql.sock --engine=MyISAM school list

技术分享图片

注:
批量修改 root --password=自己设置的mysql密码
--socket=编译时指定的路径/mysql.scok
--engine=MyISAM 库 表...

mysql存储引擎MyISAM和InnoDB

标签:img   for   proc   etc   mysqld   inno   png   --   修改   

原文地址:http://blog.51cto.com/13760226/2170592

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!