我在 my.cnf 文件中添加了“skip_innodb”行以禁用 innodb 并重新启动 mysqld。但是,它在数据库中不起作用。有没有其他解决方案?
问问题
50642 次
5 回答
34
如果您使用的是 MySql 5.5 或更高版本,
ignore-builtin-innodb
和
default-storage-engine = myisam
在下面
[mysqld]
在 /etc/my.cnf
于 2012-08-02T07:19:45.980 回答
9
skip-innodb
在下添加然后[mysqld]
MySQL服务器my.cnf
restart
查看 mysql 日志文件是否成功使用tail -100 log_file_name_with_full_path
使用以下查询进行验证:
SHOW ENGINES;
于 2012-08-02T07:13:27.690 回答
9
尝试
innodb=OFF
default-storage-engine=MyISAM
MyISAM 只是一个示例,您可以选择任何您想要的内容您可以在此处阅读更多信息http://www.webhostingtalk.com/showthread.php?t=1052143
于 2012-08-02T07:23:23.870 回答
7
为了mysql 5.6+
我在尝试应用其他答案时遇到了困难。这是我发现最好的mysql 5.6.19
1) 编辑/etc/mysql/my.cnf
-- 重要- 将这些值放在[mysqld]
# ... other settings
[mysqld]
innodb=OFF
loose-innodb-trx=0
loose-innodb-locks=0
loose-innodb-lock-waits=0
loose-innodb-cmp=0
loose-innodb-cmp-per-index=0
loose-innodb-cmp-per-index-reset=0
loose-innodb-cmp-reset=0
loose-innodb-cmpmem=0
loose-innodb-cmpmem-reset=0
loose-innodb-buffer-page=0
loose-innodb-buffer-page-lru=0
loose-innodb-buffer-pool-stats=0
loose-innodb-metrics=0
loose-innodb-ft-default-stopword=0
loose-innodb-ft-inserted=0
loose-innodb-ft-deleted=0
loose-innodb-ft-being-deleted=0
loose-innodb-ft-config=0
loose-innodb-ft-index-cache=0
loose-innodb-ft-index-table=0
loose-innodb-sys-tables=0
loose-innodb-sys-tablestats=0
loose-innodb-sys-indexes=0
loose-innodb-sys-columns=0
loose-innodb-sys-fields=0
loose-innodb-sys-foreign=0
loose-innodb-sys-foreign-cols=0
default-storage-engine=MyISAM
default_tmp_storage_engine=MyISAM
# ...
2)重启mysql
sudo service mysql restart
资料来源:MySQL docs - 14.1.3 关闭 InnoDB
移民呢?
如果您想将现有数据库从迁移InnoDB
到MyISAM
,上述原样不会影响现有表(并且会给您运行时错误)。
解决方案
有一个名为mysqldump
uses的实用程序将现有的数据库表+数据存储到文件中(SQL脚本)
1) 备份
mysqldump -u [user] -p[pass] [database name] > /tmp/backup.sql
2)/etc/mysql/my.cnf
如上图改变
nano /etc/mysql/my.cnf
# ...
[mysqld]
innodb=OFF
loose-innodb-trx=0
loose-innodb-locks=0
# ...
3)重启mysql
sudo service mysql restart
4)从第一步重新加载数据
mysql -u [user] -p[pass] [database name] < /tmp/backup.sql
于 2015-05-18T07:34:32.080 回答
4
在 MySQL 5.5+ 中,所需的配置片段如下
[mysqld]
skip-innodb
default-storage-engine = myisam
于 2013-11-30T19:04:53.483 回答