标签:读写 status 技术分享 并发 pass 修改 互斥 == ble
Mysql数据库有两种重要的存储引擎
MyISAM和InnoDB
数据库最早只有MyISAM引擎。
在Mysql5.5版本之前的默认引擎都是MyISAM。
MyISAM引擎对读数据的支持非常好,在早期的网站结构中,数据交互的部分很少,用户上网几乎也是看数据,很少向数据库里写数据。
(1)不支持事务===>不支持复杂功能、对系统资源占用少
(2)读的速度特别快,读写互斥(读时候不能写,写时候不能读)==>读好,写支持不好
(3)一旦写入数据,引擎直接对数据表进行表级别锁定,其他用户不能再读写==>写慢
(4)可以缓存索引,但是不缓存数据==>内存占用小
(1)支持事务、支持复杂功能==>对服务器资源要求高
(2)一旦写入数据,行级别锁定,单表支持并发写==>写支持好
(3)可以缓存索引,也能缓存数据==>内存占用大,对服务器要求高
(4)读写阻塞与实务隔离级别相关(开事务就读写阻塞,不开就不阻塞)
(5)行级锁定,全表扫描仍会表级锁定(就是模糊过滤,工作中要禁止的,用索引)
show engines;
show table status from 库名 where name=’表名’\G;
show table status from mysql where name=’user’\G;
show create table client.user_info \G;
alter table 库名.表名 engine=引擎
alter table client.user engine=innodb;
修改my.cnf的default-storage-engine 为引擎
vim /etc/my.cnf
create table 建立表时设置engine=引擎
use auth;
create table id(id int) engine=myisam;
mysql_convent_table_format --user=root --password=密码 --sock=文件路径/mysql.sock --engine=引擎 库名 表名
mysql_convent_table_format --user=root --password=123123 --sock=/var/lib/mysql/mysql.sock --engine=myisam client user_info
标签:读写 status 技术分享 并发 pass 修改 互斥 == ble
原文地址:https://www.cnblogs.com/kakajiang/p/10009754.html