MySQL5.6默认存储引擎是myisam,而不是innodb

lrl1mhuk  于 2021-06-23  发布在  Mysql
关注(0)|答案(2)|浏览(548)

我是新来的,希望有人能帮我解决mysql问题。
在这里,我遇到了一个奇怪的情况,innodb不是默认的存储引擎:
mysql版本14.14发行版5.6.39,用于linux(x86\u 64),使用editline Package 器。
linux发行版:centos linux 7.5.1804版(核心版)
我尝试了几乎每一个解决方案,使innodb成为默认引擎,但它确实为我工作。
以下是我尝试过的几件事:
第一步

  1. files my.cnf and my.ini. has been edited in /root/my.cnf and /root/my.ini and /etc/my.cnf as:
  2. [mysqld]
  3. character-set-server=utf8
  4. collation-server=utf8_bin
  5. default-storage-engine=INNODB
  6. max_allowed_packet=256M
  7. innodb_log_file_size=2GB
  8. transaction-isolation=READ-COMMITTED
  9. binlog_format=row

步骤2保存文件后,我确实用几种方法重新启动了mysql:

  1. Following commands DID NOT work:
  2. # /etc/init.d/mysqld stop: No such file or directory
  3. # /etc/init.d/mysql stop: No such file or directory
  4. # service mysqld stop
  5. Redirecting to /bin/systemctl start mysql.service
  6. Failed to start mysqld.service: Unit not found.
  7. Following commands DID work:
  8. # service mysql stop
  9. Redirecting to /bin/systemctl start mysql.service
  10. # service mysql status (was Active: inactive (dead))
  11. # service mysql start
  12. Redirecting to /bin/systemctl start mysql.service
  13. # service mysql status (was Active: active (running))

第3步

  1. mysql> SHOW ENGINES;
  2. +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
  3. | Engine | Support | Comment
  4. | Transactions | XA | Savepoints |
  5. +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
  6. | FEDERATED | NO | Federated MySQL storage engine
  7. | NULL | NULL | NULL |
  8. | MRG_MYISAM | YES | Collection of identical MyISAM tables
  9. | NO | NO | NO |
  10. | MyISAM | DEFAULT | MyISAM storage engine
  11. | NO | NO | NO |
  12. | BLACKHOLE | YES | /dev/null storage engine (anything you write to it disappears) | NO | NO | NO |
  13. | CSV | YES | CSV storage engine
  14. | NO | NO | NO |
  15. | MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO |
  16. | ARCHIVE | YES | Archive storage engine
  17. | NO | NO | NO |
  18. | InnoDB | YES | Supports transactions, row-level locking, and foreign keys | YES | YES | YES |
  19. | PERFORMANCE_SCHEMA | YES | Performance Schema
  20. | NO | NO | NO |
  21. +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
  22. 9 rows in set (0.00 sec)
  23. mysql>

第四步我尝试了下面的命令,最后我得到了innodb作为默认值,但仍然没有工作,因为一旦你重置mysqld它会回到myisam是默认值

  1. SET default_storage_engine=INNODB;

这真是令人沮丧,你的帮助将不胜感激

ppcbkaq5

ppcbkaq51#

我终于解决了这个问题。我做了“卸载和重新安装完全相同的MySQL5.6.39版本的mysql”之后,一切都很好。我的innodb已更改为默认的storage engine=innodb。

7ajki6be

7ajki6be2#

可以通过以下步骤实现:导航到>phpmyadmin>home>variables>storage engine,并将其myisam更改为innodb
看到图片了吗

相关问题