<div id="docs-body">
 <div class="section">
  <div class="titlepage">
   <div>
    <div>
     <h3 class="title">
      <a name="error-creating-innodb">
      </a>
      17.20.1 Troubleshooting InnoDB I/O Problems
     </h3>
    </div>
   </div>
  </div>
  <a class="indexterm" name="idm46045149035520">
  </a>
  <p>
   The troubleshooting steps for
   <code class="literal">
    InnoDB
   </code>
   I/O
      problems depend on when the problem occurs: during startup of the
      MySQL server, or during normal operations when a DML or DDL
      statement fails due to problems at the file system level.
  </p>
  <h4>
   <a name="idm46045149032304">
   </a>
   Initialization Problems
  </h4>
  <p>
   If something goes wrong when
   <code class="literal">
    InnoDB
   </code>
   attempts to
      initialize its tablespace or its log files, delete all files
      created by
   <code class="literal">
    InnoDB
   </code>
   : all
   <code class="filename">
    ibdata
   </code>
   files and all redo log files
      (
   <code class="filename">
    #ib_redo
    <em class="replaceable">
     <code>
      N
     </code>
    </em>
   </code>
   files).
      If you created any
   <code class="literal">
    InnoDB
   </code>
   tables, also delete
      any
   <code class="filename">
    .ibd
   </code>
   files from the MySQL database
      directories. Then try initializing
   <code class="literal">
    InnoDB
   </code>
   again. For easiest troubleshooting, start the MySQL server from a
      command prompt so that you see what is happening.
  </p>
  <h4>
   <a name="idm46045149025584">
   </a>
   Runtime Problems
  </h4>
  <p>
   If
   <code class="literal">
    InnoDB
   </code>
   prints an operating system error
      during a file operation, usually the problem has one of the
      following solutions:
  </p>
  <div class="itemizedlist">
   <ul class="itemizedlist" style="list-style-type: disc; ">
    <li class="listitem">
     <p>
      Make sure the
      <code class="literal">
       InnoDB
      </code>
      data file directory
          and the
      <code class="literal">
       InnoDB
      </code>
      log directory exist.
     </p>
    </li>
    <li class="listitem">
     <p>
      Make sure
      <a class="link" href="mysqld.html" title="6.3.1 mysqld — The MySQL Server">
       <span class="command">
        <strong>
         mysqld
        </strong>
       </span>
      </a>
      has access rights to
          create files in those directories.
     </p>
    </li>
    <li class="listitem">
     <p>
      Make sure
      <a class="link" href="mysqld.html" title="6.3.1 mysqld — The MySQL Server">
       <span class="command">
        <strong>
         mysqld
        </strong>
       </span>
      </a>
      can read the proper
      <code class="filename">
       my.cnf
      </code>
      or
      <code class="filename">
       my.ini
      </code>
      option file, so that it starts with the options that you
          specified.
     </p>
    </li>
    <li class="listitem">
     <p>
      Make sure the disk is not full and you are not exceeding any
          disk quota.
     </p>
    </li>
    <li class="listitem">
     <p>
      Make sure that the names you specify for subdirectories and
          data files do not clash.
     </p>
    </li>
    <li class="listitem">
     <p>
      Doublecheck the syntax of the
      <a class="link" href="innodb-parameters.html#sysvar_innodb_data_home_dir">
       <code class="literal">
        innodb_data_home_dir
       </code>
      </a>
      and
      <a class="link" href="innodb-parameters.html#sysvar_innodb_data_file_path">
       <code class="literal">
        innodb_data_file_path
       </code>
      </a>
      values.
          In particular, any
      <code class="literal">
       MAX
      </code>
      value in the
      <a class="link" href="innodb-parameters.html#sysvar_innodb_data_file_path">
       <code class="literal">
        innodb_data_file_path
       </code>
      </a>
      option
          is a hard limit, and exceeding that limit causes a fatal
          error.
     </p>
    </li>
   </ul>
  </div>
 </div>
 <br/>
</div>
