1、修改表引擎方法
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:主机域名、雅安服务器托管、营销软件、网站建设、覃塘网站维护、网站推广。
alter table table_name engine=innodb;
2、查看系统支持的存储引擎
show engines;
3、查看表使用的存储引擎
两种方法:
a、show table status from db_name where name='table_name';
b、show create table table_name;
如果显示的格式不好看,可以用\g代替行尾分号
有人说用第二种方法不准确
我试了下,关闭掉原先默认的Innodb引擎后根本无法执行show create table table_name指令,因为之前建的是Innodb表,关掉后默认用MyISAM引擎,导致Innodb表数据无法被正确读取。
4 关闭Innodb引擎方法
关闭mysql服务: net stop mysql
找到mysql安装目录下的my.ini文件:
找到default-storage-engine=INNODB 改为default-storage-engine=MYISAM
找到#skip-innodb 改为skip-innodb
启动mysql服务:net start mysql
修改MySQL数据库引擎步骤如下
第一:修改my.ini,在[mysqld]下加上:
default-storage-engine=引擎名称
其中的等号后面是要指定的数据库引擎名称。
第二:用sql语句修改已经建成表的引擎:
alter
table
tableName
type=InnoDB
--type语法在4.X版本下存在
alter
table
tableName
ENGINE=InnoDB
--5.X下都改成engine=innodb
举例说明下面贴出我的my.ini文件供参考:
[mysqld]
basedir=C:\Program
Files\VertrigoServ\Mysql\
datadir=C:\Program
Files\VertrigoServ\Mysql\data\
port
=3306
key_buffer
=64M
max_allowed_packet
=1M
table_cache
=128
sort_buffer_size
=512K
net_buffer_length
=8K
read_buffer_size
=256K
read_rnd_buffer_size
=512K
myisam_sort_buffer_size
=68M
default-storage-engine=INNODB
[mysqldump]
quick
max_allowed_packet
=116M
[mysql]
no-auto-rehash
#
Remove
the
next
comment
character
if
you
are
not
familiar
with
SQL
#safe-updates
[isamchk]
key_buffer
=20M
sort_buffer_size
=20M
read_buffer
=62M
write_buffer
=62M
[myisamchk]
key_buffer
=20M
sort_buffer_size
=20M
read_buffer
=62M
write_buffer
=62M
[mysqlhotcopy]
interactive-timeout
按照以上的代码提示操作,我们就能够成功地修改MySQL数据库引擎为INNODB了。
一般情况下,mysql会默认提供多种存储引擎,你可以通过下面的查看:
看你的mysql现在已提供什么存储引擎:
mysql
show
engines;
看你的mysql当前默认的存储引擎:
mysql
show
variables
like
'%storage_engine%';
你要看某个表用了什么引擎(在显示结果里参数engine后面的就表示该表当前用的存储引擎):
mysql
show
create
table
表名;
mysql启动命令后添加参数 –default-storage-engine=希望使用的引擎
修改mysql的配置文件,添加如下内容:default-storage-engine=希望使用的引擎
第一种方式每次重启数据库服务的时候都需要添加
第二种方式每次重启数据库服务都只要使用默认启动命令即可