[+/-]
    Maria is a crash safe version of
    MyISAM. The Maria storage
    engine supports all of the main functionality of the
    MyISAM engine, but includes recovery support (in
    the event of a system crash), full logging (including
    CREATE, DROP,
    RENAME and
    TRUNCATE operations), all
    MyISAM row formats and a new
    Maria specific row format.
  
    Maria has been designed as a replacement for the
    MyISAM storage engine, supporting the speed and
    flexibility of the original MyISAM
    implementation, in combination with MVCC transaction support. Within
    the current release, a limited level of concurrency for
    INSERT/UPDATE
    and SELECT functionality is
    supported. For more information, see
    Section 13.5.6, “Maria Statement Concurrency”.
  
    For more information on known bugs and limitations in
    Maria, see Section 13.5.9, “Maria Open Bugs”
  
    To create a Maria table you must specify the
    engine when using the CREATE TABLE
    statement:
  
mysql> CREATE TABLE maria_table (id int) ENGINE=Maria;
    You can also use ALTER TABLE to
    convert an existing table to the Maria engine:
  
mysql> ALTER TABLE myisam_table ENGINE=Maria;
    Data in Maria tables is stored in three files:
  
        table.frm — the standard MySQL FRM
        file containing the table definition.
      
        table.MAD — the
        Maria data file.
      
        table.MAI — the
        Maria index file.
      
    In addition, Maria creates at least two
    additional files in your standard datadir
    directory:
  
        maria_log.???????? — the
        Maria log file. Each file is named
        numerically and sequentially, with new files automatically
        created when the log file limit has been reached. You can
        control the log file size using
        maria_log_file_size
        option, and control the deletion of logs using
        maria_log_purge_type.
        The newly created files stay in place until deleted either
        automatically or manually.
      
        maria_log_control — a control file
        that holds information about the current state of the
        Maria engine.
      
          You should not delete the
          maria_log_control file from an active
          Maria installation as it records
          information about the current state of the
          Maria engine, including information about
          the log files and the default page block size used for the log
          and data files.
        
    The basic functionality of Maria matches the
    functionality of MyISAM with a number of
    differences. These are:
  
        Two types of tables are supported. Non-crash safe tables
        (non-transactional) are written immediately to their
        corresponding data file. Transactional tables are crash safe and
        data is written into the Maria log. For more
        information on the log, see Section 13.5.3, “Maria Transaction Log”. Data
        which had already been written to the log is then applied to the
        data and index files as the statement completes.
      
        Maria supports auto-recovery in the event of
        a crash. For more information, see
        Section 13.5.4, “Maria Recovery”.
      
        Maria supports a single writer and multiple
        readers. The writer supports both
        INSERT and
        UPDATE operations.
        MyISAM supports only concurrent
        INSERT and
        SELECT statements. For more
        information, see Section 13.5.6, “Maria Statement Concurrency”.
      
        Maria provides a new row format,
        PAGE. For more information, see
        Section 13.5.2, “Maria Table Options”. Existing
        MyISAM row formats are also supported on
        non-transactional tables.
      
        Maria supports crash-safe operations over
        many statements by enclosing statements within
        LOCK TABLES and
        UNLOCK
        TABLES statements.
      


User Comments
Add your own comment.