概述
在修改默认引擎之前,最好了解mysql读取配置文件my.cnf的顺序,以及mysql的目录结构 --默认basedir=/usr ,datadir=/var/lib/mysql,/etc/my.cnf 配置文件读取顺序详见另一篇帖子。 1.查看mysql的存储引擎信息 mysql> show engines; +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+ | Engine | Support | Comment | Transactions | XA | Savepoints | +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+ | FEDERATED | NO | Federated MySQL storage engine | NULL | NULL | NULL | | MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO | | MyISAM | YES | MyISAM storage engine | NO | NO | NO | | BLACKHOLE | YES | /dev/null storage engine (anything you write to it disappears) | NO | NO | NO | | MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO | | CSV | YES | CSV storage engine | NO | NO | NO | | ARCHIVE | YES | Archive storage engine | NO | NO | NO | | PERFORMANCE_SCHEMA | YES | Performance Schema | NO | NO | NO | | InnoDB | DEFAULT | Supports transactions, row-level locking, and foreign keys | YES | YES | YES | +--------------------+---------+----------------------------------------------------------------+--------------+------+-------- MySQL-5.5.19-1.linux2.6.i386的默认引擎为InnoDB。 2.设置mysql的默认存储引擎 编辑my.cnf配置文件,在服务器端配置信息[mysqld]下面添加: default-storage-engine = MyISAM 即可设置mysql数据库的默认引擎为MyISAM 3.设置当前会话的默认存储引擎 SET storage_engine=InnoDB; 即可以设置当前会话连接的默认存储引擎为InnoDB。 4.指定表的存储引擎 如: create table t_innodb( id int(3) ) engine = innodb; 然后使用 mysql> show table status like 't_i%'G; 查看表的详细信息。 5.修改表的存储引擎 ALTER TABLE t_name ENGINE = innodb; 修改表的存储引擎时,会重建表,结构文件、数据文件、索引文件等文件。 如果转化为myisam存储引擎,mysql会在datadir/db_name/目录下,生成临时表结构文件(.frm),临时数据文件(.MYD),临时索引文件(.MYI)。此处需要注意的是,myisam类型转换时,生成的.MYI索引文件比数据文件要大很多(这与mysql数据库索引的结构有关,B-Tree结构)(如果捕捉不到临时文件,请让表的数据量达到6位数)在数据文件目录下的表所在的库目录下运行: while [ 1 ] ; do ls -l | grep -i '#sql'; done) 如果转化为innodb存储引擎,因为innodb引擎默认使用共享表空间,数据文件、索引文件存储在ibdata1文件里面。 只有和innodb引擎有关的转化时,mysql数据库才会对ibdata1里面的data dictionary进行更新操作,删除旧的表信息,添加新的表信息。
最后
以上就是年轻小刺猬为你收集整理的查看mysql 数据库默认引擎_查看mysql数据库的默认引擎及 修改默认引擎的全部内容,希望文章能够帮你解决查看mysql 数据库默认引擎_查看mysql数据库的默认引擎及 修改默认引擎所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复