<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>26232</bug_id>
          
          <creation_ts>2011-09-05 03:28:14 +0400</creation_ts>
          <short_desc>Проблемы с default-storage-engine = InnoDB</short_desc>
          <delta_ts>2023-06-13 09:16:12 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>3</classification_id>
          <classification>Distributions</classification>
          <product>Branch p6</product>
          <component>MySQL-server</component>
          <version>не указана</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>26742</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dank Bagryantsev">4alt</reporter>
          <assigned_to name="Andrey Cherepanov">cas</assigned_to>
          <cc>hiddenman</cc>
    
    <cc>jackie.rosen</cc>
    
    <cc>mike</cc>
    
    <cc>rider</cc>
    
    <cc>vsu</cc>
          
          <qa_contact name="QA p6">qa-p6</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>124866</commentid>
    <comment_count>0</comment_count>
    <who name="Dank Bagryantsev">4alt</who>
    <bug_when>2011-09-05 03:28:14 +0400</bug_when>
    <thetext>Минимальный p6 с последними обновлениями на данный момент
Устанавливаем MySQL-server (5.1.56-alt4)
включаем поддержку InnoDB в my.cnf
и также ставим опцию default-storage-engine = InnoDB
при попытке старта в консоле root&apos;a выдаются ошибки:
service mysqld start

Installing all prepared tables
110904 21:10:21 [Note] Plugin &apos;InnoDB&apos; is disabled.
110904 21:10:21 [ERROR] Unknown/unsupported table type: InnoDB
110904 21:10:21 [ERROR] Aborting

110904 21:10:21 [Note] /usr/sbin/mysqld: Shutdown complete

Installation of system tables failed!

Examine the logs in /var/lib/mysql/log for more information.
You can also try to start the mysqld daemon with:
/usr/sbin/mysqld --skip-grant &amp;
You can use the command line tool
/usr/bin/mysql to connect to the mysql
database and look at the grant tables:

shell&gt; /usr/bin/mysql -u root mysql
mysql&gt; show tables

Соответственно системная база mysql не создается.

Если закомментировать строку с default-storage-engine = InnoDB
то системная база создается, естественно как MyISAM

Если на данном этапе снова включить опцию default-storage-engine = InnoDB
то в консоле root&apos;a при старте mysql снова выдает ошибки:

110904 21:20:29 [Note] Plugin &apos;InnoDB&apos; is disabled.
110904 21:20:29 [ERROR] Unknown/unsupported table type: InnoDB
110904 21:20:29 [ERROR] Aborting

110904 21:20:29 [Note] /usr/sbin/mysqld: Shutdown complete

Installation of system tables failed!

Examine the logs in /var/lib/mysql/log for more information.
You can also try to start the mysqld daemon with:
/usr/sbin/mysqld --skip-grant &amp;
You can use the command line tool
/usr/bin/mysql to connect to the mysql
database and look at the grant tables:

shell&gt; /usr/bin/mysql -u root mysql
mysql&gt; show tables

Но тем не менее mysql стартует и вроде как работает, и в его переменных установлена опция default-storage-engine = InnoDB
При этом в логе никаких ошибок:

2011-Sep-04 23:03:56 :: startup
110904 23:03:56  InnoDB: Initializing buffer pool, size = 5.0G
110904 23:03:57  InnoDB: Completed initialization of buffer pool
110904 23:03:58  InnoDB: Started; log sequence number 0 416685169
110904 23:03:58 [Note] Event Scheduler: Loaded 0 events
110904 23:03:58 [Note] /usr/sbin/mysqld: ready for connections.
Version: &apos;5.1.56&apos;  socket: &apos;/mysql.sock&apos;  port: 3306  ALT Linux MySQL RPM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138037</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2013-02-19 20:34:27 +0400</bug_when>
    <thetext>Надо скопировать в p6 из t6 (можете тем временем поставить вручную и лишний раз проверить):

* Tue Apr 24 2012 Michael Shigorin &lt;mike@altlinux.org&gt; 5.1.62-alt0.M60T.1
- built for M60T

* Fri Mar 23 2012 Michael Shigorin &lt;mike@altlinux.org&gt; 5.1.62-alt1
- 5.1.62
- /dev/urandom tweaks
- spec cleanup

* Wed Mar 21 2012 Michael Shigorin &lt;mike@altlinux.org&gt; 5.1.61-alt2
- create /dev/urandom in chroot so SSL support actually works;
  thanks naf@ (closes: #27100)

* Thu Jan 12 2012 Michael Shigorin &lt;mike@altlinux.org&gt; 5.1.61-alt1
- 5.1.61

* Fri Dec 30 2011 Michael Shigorin &lt;mike@altlinux.org&gt; 5.1.60-alt2
- please note that 5.1.50-alt1 introduced modular InnoDB support
  thus the plugin must be loaded if it&apos;s supposed to be used

Возможно, есть смысл собрать 5.1.68 для начала в t6...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138038</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2013-02-19 20:45:52 +0400</bug_when>
    <thetext>(In reply to comment #0)
&gt; Installation of system tables failed!
Ещё возможно, что придётся для 5.1.x доработать mysql_install_db для поддержки вот такого вот innodb, который в 5.5.x откатили из модулей назад.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138054</commentid>
    <comment_count>3</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2013-02-20 12:56:18 +0400</bug_when>
    <thetext>(В ответ на комментарий №1)
&gt; Надо скопировать в p6 из t6 (можете тем временем поставить вручную и лишний раз
&gt; проверить):
#90406 TESTED #1 [test-only] p6 copy=MySQL


[root@main ~]# tail -n2 /var/lib/mysql/my.cnf
ignore-builtin-innodb
plugin-load=innodb=ha_innodb_plugin.so
[root@main ~]# service mysqld restart
Sending TERM signal to mysqld:                                                                                                                                              [ DONE ]
Waiting, while mysqld actualy stopped:                                                                                                                                      [ DONE ]
Adjusting environment for mysqld:                                                                                                                                           [ DONE ]
Starting mysqld service:                                                                                                                                                    [ DONE ]
[root@main ~]# service mysqld  status
mysqld is dead, but subsystem is locked

Не работает.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138055</commentid>
    <comment_count>4</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2013-02-20 13:07:51 +0400</bug_when>
    <thetext>Не удалил все  процессы. После этого всё запустилось и выдало InnoDB в show plugins;

Соответственно, таблицы с явным прописыванием ENGINE=InnoDB в CREATE TABLE создаются и показывают engine в show table status.

Проверьте задание под p6:

apt-repo add task 90406
apt-get update
apt-get dist-upgrade

Если всё устроит, отправлю в p6.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138056</commentid>
    <comment_count>5</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2013-02-20 13:11:08 +0400</bug_when>
    <thetext>При этом строка default-storage-engine = InnoDB всё также не даёт запустить mysqld.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138077</commentid>
    <comment_count>6</comment_count>
    <who name="Andrew Kornilov">hiddenman</who>
    <bug_when>2013-02-21 15:42:12 +0400</bug_when>
    <thetext>Разбираясь с аналогичной проблемой, пришел пока к таким выводам:
1. В документации и во всех советах в интернете для установки default storage engine в MySQL 5.1 (любом) нужно прописать default-storage-engine=InnoDB. У всех это работает и ничего не ругается
2. В нашей сборке (mysqld из t6, 5.1.62, кажется), при установке этого параметра ругается именно наш скрипт-обвязка вокруг mysqld. Которая /usr/sbin/mysql_install_db: Installation of system tables failed!

Но при этом mysqld запускается, default storage engine становится InnoDB и вроде как всё работает.

Судя по тому, что никто в &quot;этих ваших интернетах&quot; не жалуется на такую проблему вообще, проблема в наших скриптах.  Такое моё предположение, доказать пока нет времени, вчера только немного позанимался этим.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138080</commentid>
    <comment_count>7</comment_count>
    <who name="Sergey Vlasov">vsu</who>
    <bug_when>2013-02-21 17:36:48 +0400</bug_when>
    <thetext>Действительно, в p6 попытка установить default-storage-engine=InnoDB в файле /var/lib/mysql/my.cnf приводит к ругани при запуске сервера, поскольку скрипт /usr/sbin/mysql_install_db вызывает mysqld с опцией --skip-innodb, которая несовместима с default-storage-engine=InnoDB вне зависимости от наличия или отсутствия параметра ignore-builtin-innodb. При этом ругань не мешает последующему запуску сервера, если системные таблицы на самом деле уже были созданы.

Способ установки InnoDB по умолчанию, работающий в p6 - указывать этот параметр в /etc/sysconfig/mysqld:

OPT=&quot;--default-storage-engine=innodb&quot;

Что касается системных таблиц - они и должны быть в формате MyISAM, это указано в документации MySQL:

http://dev.mysql.com/doc/refman/5.1/en/converting-tables-to-innodb.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138083</commentid>
    <comment_count>8</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2013-02-21 18:22:55 +0400</bug_when>
    <thetext>Пакет пропускаем при условии последнего замечания?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141686</commentid>
    <comment_count>9</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2013-07-19 19:44:09 +0400</bug_when>
    <thetext>В p6 сейчас MySQL-5.1.62, в котором при задании default-storage-engine=InnoDB в my.cnf демон mysqld всё же запускается. Осталась одна косметическая проблема при создании баз данных (а именно в /usr/sbin/mysql_install_db нужно убрать перестраховочный --skip-innodb [в p6 и Sisyphus/p7]).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>227446</commentid>
    <comment_count>10</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2023-06-13 09:16:12 +0300</bug_when>
    <thetext>работает.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>