第一:修改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了。
先将数据库导出啊,搞成SQL脚本然后吧INNODB替换成MYISAM- -
我以前是这么做的
但是INNODB好用得多啊- -~~~
好像没有更好的办法了,批量改不这样做的话那就是自己写脚本?那对于数据库本身而言更麻烦,中间会产生很多问题......
可不可以先导出结构,在另一台服务器上把结构修改好之后然后做个COPY或者是热备?
而且INNODB参数设置得当的情况下效率也差不了多少,在大并发量的情况下性能完全优于MYISAM引擎的,特别是行级锁这东西.....很好用
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)