我是新来的,希望有人能帮我解决mysql问题。
在这里,我遇到了一个奇怪的情况,innodb不是默认的存储引擎:
mysql版本14.14发行版5.6.39,用于linux(x86\u 64),使用editline Package 器。
linux发行版:centos linux 7.5.1804版(核心版)
我尝试了几乎每一个解决方案,使innodb成为默认引擎,但它确实为我工作。
以下是我尝试过的几件事:
第一步
files my.cnf and my.ini. has been edited in /root/my.cnf and /root/my.ini and /etc/my.cnf as:
[mysqld]
character-set-server=utf8
collation-server=utf8_bin
default-storage-engine=INNODB
max_allowed_packet=256M
innodb_log_file_size=2GB
transaction-isolation=READ-COMMITTED
binlog_format=row
步骤2保存文件后,我确实用几种方法重新启动了mysql:
Following commands DID NOT work:
# /etc/init.d/mysqld stop: No such file or directory
# /etc/init.d/mysql stop: No such file or directory
# service mysqld stop
Redirecting to /bin/systemctl start mysql.service
Failed to start mysqld.service: Unit not found.
Following commands DID work:
# service mysql stop
Redirecting to /bin/systemctl start mysql.service
# service mysql status (was Active: inactive (dead))
# service mysql start
Redirecting to /bin/systemctl start mysql.service
# service mysql status (was Active: active (running))
第3步
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 | DEFAULT | MyISAM storage engine
| NO | NO | NO |
| BLACKHOLE | YES | /dev/null storage engine (anything you write to it disappears) | NO | NO | NO |
| CSV | YES | CSV storage engine
| NO | NO | NO |
| MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO |
| ARCHIVE | YES | Archive storage engine
| NO | NO | NO |
| InnoDB | YES | Supports transactions, row-level locking, and foreign keys | YES | YES | YES |
| PERFORMANCE_SCHEMA | YES | Performance Schema
| NO | NO | NO |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
9 rows in set (0.00 sec)
mysql>
第四步我尝试了下面的命令,最后我得到了innodb作为默认值,但仍然没有工作,因为一旦你重置mysqld它会回到myisam是默认值
SET default_storage_engine=INNODB;
这真是令人沮丧,你的帮助将不胜感激
2条答案
按热度按时间ppcbkaq51#
我终于解决了这个问题。我做了“卸载和重新安装完全相同的MySQL5.6.39版本的mysql”之后,一切都很好。我的innodb已更改为默认的storage engine=innodb。
7ajki6be2#
可以通过以下步骤实现:导航到>phpmyadmin>home>variables>storage engine,并将其myisam更改为innodb
看到图片了吗