#1 楼
您必须在mysql配置文件的default-storage-engine = InnoDB
部分(取决于您的操作系统,my.cnf或my.ini)下添加[mysqld]
行,然后重新启动mysqld服务。 我不相信您可以通过PhpMyAdmin进行更改。
#2 楼
这个答案有点晚了,但可能会对其他人有所帮助。如果您担心在MySQL服务器上弄乱某些内容,则可以从phpMyAdmin创建表时更改默认引擎。 MySQL引擎的默认选择创建器是StorageEngine.class.php
文件夹(在phpMyAdmin 3.5.8.2中)的libraries
下的此函数:<?php
/**
* returns HTML code for storage engine select box
*
* @param string $name The name of the select form element
* @param string $id The ID of the form field
* @param string $selected The selected engine
* @param boolean $offerUnavailableEngines Should unavailable storage engines be offered?
*
* @static
* @return string html selectbox
*/
static public function getHtmlSelect($name = 'engine', $id = null,
$selected = null, $offerUnavailableEngines = false)
{
$selected = strtolower($selected);
$output = '<select name="' . $name . '"'
. (empty($id) ? '' : ' id="' . $id . '"') . '>' . "\n";
foreach (PMA_StorageEngine::getStorageEngines() as $key => $details) {
// Don't show PERFORMANCE_SCHEMA engine (MySQL 5.5)
// Don't show MyISAM for Drizzle (allowed only for temporary tables)
if (! $offerUnavailableEngines
&& ($details['Support'] == 'NO'
|| $details['Support'] == 'DISABLED'
|| $details['Engine'] == 'PERFORMANCE_SCHEMA')
|| (PMA_DRIZZLE && $details['Engine'] == 'MyISAM')
) {
continue;
}
$output .= ' <option value="' . htmlspecialchars($key). '"'
. (empty($details['Comment'])
? '' : ' title="' . htmlspecialchars($details['Comment']) . '"')
. (strtolower($key) == $selected || (empty($selected) && $details['Support'] == 'DEFAULT')
? ' selected="selected"' : '') . '>' . "\n"
. ' ' . htmlspecialchars($details['Engine']) . "\n"
. ' </option>' . "\n";
}
$output .= '</select>' . "\n";
return $output;
}
从以下查询中填充此选择:
SHOW STORAGE ENGINES
以下代码选择了MySQL配置文件设置的默认引擎:
(empty($selected) && $details['Support'] == 'DEFAULT')
但是,我们可以对其进行更改以使其选择InnoDB作为默认引擎:
(empty($selected) && $details['Engine'] == 'InnoDB')
#3 楼
UPDATE `information_schema`.`GLOBAL_VARIABLES`
SET `VARIABLE_VALUE`="InnoDB"
WHERE `VARIABLE_NAME`="DEFAULT_STORAGE_ENGINE"
评论
数据库:information_schema
–欧文·帕克(Owen Parker)
16年6月26日在14:43
#4 楼
您可以在PHPMYADMIN中为每个表进行更改:单击phpmyadmin中的表
单击右上角的“操作”。
在“表选项”部分中选择存储引擎在下拉菜单中,例如InnoDB等。
单击GO
如果您有很多表,可能需要花费一些时间单击每个表并执行此操作,但这是可能的。 br />
评论
但是,这并不能回答原始问题。
–必须
20年6月19日在20:48
评论
也许与PHPMyAdmin无关,而与MySQL直接相关。您是否尝试过:-stackoverflow.com/questions/2286813/…通过执行以下步骤是可能的:导航到> phpmyadmin->更多->变量->存储引擎,并将其MyISAM更改为InnoDB。
@ user21380:在这里您只能看到MySQL正在使用的引擎。