Compatibility Check When a Table Is Opened

Nasza ocena:

5
Wyświetleń: 819
Komentarze: 0
Notatek.pl

Pobierz ten dokument za darmo

Podgląd dokumentu
Compatibility Check When a Table Is Opened - strona 1 Compatibility Check When a Table Is Opened - strona 2

Fragment notatki:

Compatibility Check When a Table Is Opened
When a table is first accessed, InnoDB (including some releases prior to InnoDB 1.0) checks that
the file format of the tablespace in which the table is stored is fully supported. This check prevents
crashes or corruptions that would otherwise occur when tables using a “too new” data structure are
encountered.
All tables using any file format supported by a release can be read or written (assuming
the user has sufficient privileges). The setting of the system configuration parameter
innodb_file_format [1752] can prevent creating a new table that uses specific file formats,
even if they are supported by a given release. Such a setting might be used to preserve backward
compatibility, but it does not prevent accessing any table that uses any supported format.
As noted in Named File Formats, versions of MySQL older than 5.0.21 cannot reliably use database
files created by newer versions if a new file format was used when a table was created. To prevent
various error conditions or corruptions, InnoDB checks file format compatibility when it opens a file (for
example, upon first access to a table). If the currently running version of InnoDB does not support the
file format identified by the table type in the InnoDB data dictionary, MySQL reports the following error:
ERROR 1146 (42S02): Table 'test.t1' doesn't exist
InnoDB also writes a message to the error log:
InnoDB: table test/t1: unknown table type 33
The table type should be equal to the tablespace flags, which contains the file format version as
discussed in Section 5.4.7.3, “Identifying the File Format in Use”.
Versions of InnoDB prior to MySQL 4.1 did not include table format identifiers in the database files, and
versions prior to MySQL 5.0.21 did not include a table format compatibility check. Therefore, there is no
way to ensure proper operations if a table in a “too new” format is used with versions of InnoDB prior to
5.0.21.
The file format management capability in InnoDB 1.0 and higher (tablespace tagging and run-time
checks) allows InnoDB to verify as soon as possible that the running version of software can properly
process the tables existing in the database.
If you permit InnoDB to open a database containing files in a format it does not support (by setting the
parameter innodb_file_format_check [1753] to OFF), the table-level checking described in this
section still applies.
Users are strongly urged not to use database files that contain Barracuda file format tables with
releases of InnoDB older than the MySQL 5.1 with the InnoDB Plugin. It is possible to “downgrade ... zobacz całą notatkę



Komentarze użytkowników (0)

Zaloguj się, aby dodać komentarz