gpt4 book ai didi

mysql - 即使启用了 innodb,bugzilla 安装错误 :"InnoDB is disabled your MySQL installation. Bugzilla requires InnoDb to be enabled."

转载 作者:行者123 更新时间:2023-11-29 04:24:08 27 4
gpt4 key购买 nike

我已经在我的 windows7 机器上安装了 bugzilla4.2.5。当我运行 bugzilla 的 checksetup.pl 脚本时,它显示

Use of uninitialized value $innodb_on in string ne at Bugzilla/DB/Mysql.pm line no 330."InnoDB is disabled your MySQL installation. Bugzilla requires InnoDb to be enabled. Please enable it and then re-runchecksetup.pl".

Mysql.pm中第no行表示的代码段如下

 my ($innodb_on) = @{$self->selectcol_arrayref(
q{SHOW VARIABLES LIKE '%have_innodb%'}, {Columns=>[2]})};
if ($innodb_on ne 'YES') {
die install_string('mysql_innodb_disabled');
}

我的Mysql安装版本是5.6.4-m7。我发现命令 SHOW VARIABLES LIKE '%have_innodb% 返回一个空集。但是 SHOW ENGINES 显示了 innodb,它已启用并设置为默认值。

我想 bugzilla 显示错误是因为 SHOW VARIABLES LIKE '%have_innodb% 也在 Mysql.pm 文件的代码中返回空集。

http://bugs.mysql.com/bug.php?id=63383此链接显示“have_innodb”变量已从 MySQL 5.6.1 中删除。这是否意味着我需要安装包含“have_innodb”变量的旧版本的 mysql?请帮助我解决 bugzilla 安装中的问题。

最佳答案

这是使用 MySQL 5.6 或更高版本时的 bugzilla 源代码更改

替换:

my ($innodb_on) = @{$self->selectcol_arrayref(
q{SHOW VARIABLES LIKE '%have_innodb%'}, {Columns=>[2]})};
if ($innodb_on ne 'YES') {
die install_string('mysql_innodb_disabled');
}

与:

my ($innodb_on) = 
grep{ $_->{engine} =~ m/InnoDB/i }
map {
my %hash;
@hash{ map { lc $_ } keys %$_ } = values %$_;
\%hash;
}
@{$self->selectall_arrayref("SHOW ENGINES", {Slice=>{}}) };
if ( $innodb_on ) {
if ( !$innodb_on->{support} =~ m/YES|DEFAULT/i ) {
die install_string('mysql_innodb_disabled');
}
}

关于mysql - 即使启用了 innodb,bugzilla 安装错误 :"InnoDB is disabled your MySQL installation. Bugzilla requires InnoDb to be enabled.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15359467/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com