Я здесь новенький и надеюсь, что кто-нибудь поможет мне с проблемой MySQL.
Здесь у меня странная ситуация, когда InnoDB не является механизмом хранения по умолчанию:
Я пробовал почти все решения, чтобы сделать InnoDB движком по умолчанию, но у меня это сработало.
Вот несколько вещей, которые я пробовал:
ШАГ 1
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>
ШАГ 4. Я попробовал следующую команду, и я, наконец, получил InnoDB как DEFAULT, но все еще не работал, потому что после сброса mysqld он возвращается в MyISAM по умолчанию
SET default_storage_engine=INNODB;
Это действительно расстраивает, мы будем очень благодарны за вашу помощь
Нет, в пути etc нет «my.cnf.d», я также запускаю sudo find / -name my.cnf.d и вообще ничего. Есть еще предложения?
Я почти уверен, что это чувствительно к регистру. Вы пробовали InnoDB
вместо INNODB
?
К сожалению ничего, связанного с чувствительностью к регистру, уже пробовал. Но в любом случае спасибо.
Это можно сделать, выполнив следующие шаги: перейдите в> phpmyadmin -> Home-> variables -> storage engine и измените его MyISAM на InnoDB.
посмотреть картинку
это возможно, но это не проблема, потому что нам не нужно редактировать существующую БД. У меня проблема, когда я создаю новую БД, тогда некоторые программы не будут продолжать установку (в данном случае Atlassian Confluence), если механизм хранения по умолчанию не INNODB.
таким образом, не для существующей БД, это механизм хранения по умолчанию, даже когда вы создаете любую базу данных или таблицу
прошу прощения за это, я неправильно прочитал ваш ответ. Думаю, это тоже должно сработать. Тем временем я переустановил MySQL, и после этого все было в порядке.
Я наконец решил проблему. Я "полностью удалил и переустановил MySQL с той же версией MySQL 5.6.39", после чего все было отлично. Мой InnoDB изменился на default-storage-engine = INNODB.
есть ли у вас какие-либо файлы конфигурации, связанные с mysqld, в /etc/my.cnf.d/?