The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Обзор типов хранилищ данных в MySQL

11.10.2005 22:09

В обзоре "MySQL Storage Engines" рассмотрена функциональность и особенности таких типов хранилищ MySQL, как:

  • MEMORY - все данные в ОЗУ, после рестарта сервера данные теряются. Подходит для создания временных или кеширующих таблиц;
  • MyISAM - отличная скорость на чтение, но нет транзакций и не эффективные локи (на таблицу целиком). Рекомендуется когда 90% запросов на чтение;
  • MERGE - объединение нескольких таблиц одинаковой структуры в одну. Может применяться для хранения логов, например, новая таблица в день;
  • FEDERATED - работа с таблицами на удаленном сервере как с локальными, MySQL при этом работает как прокси;
  • ARCHIVE - для создания архивов, данные хранятся в сжатом виде, возможны только операции INSERT и SELECT, обновление данных невозможно;
  • CSV - данные хранятся не в бинарном формате, а в текстовом CSV (Comma Separated Values), индексы не поддерживаются. Подходит для обмена данными с внешними программами;
  • BLACKHOLE - аналог /dev/null, назначение - тестирование конструкций;
  • ISAM - устарело, на смену пришел MyISAM;
  • BDB - хранилище через Berkeley DB, поддерживаются транзакции, локи на 8Кб блоки данных, ориентировано на хранение небольших блоков вида ключ-значение;
  • InnoDB - наиболее функциональный тип, поддерживает все возможности MyISAM + транзакции + локи на отдельную запись в таблице.

    Также показано как посмотреть список поддерживаемых хранилищ (команды show engines и show variables like "have_%";) и как осуществить пересборку для добавления недостающего.

    1. Главная ссылка к новости (http://www.linuxplanet.com/lin...)
    2. MySQL Storage Engines and Table Types
    Лицензия: CC BY 3.0
    Короткая ссылка: https://opennet.ru/6226-mysql
    Ключевые слова: mysql, databse
    При перепечатке указание ссылки на opennet.ru обязательно


    Обсуждение (10) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.2, ugenk (?), 00:00, 12/10/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    кстати, а innodb еще не научился реплицироваться стандартными средствами mysql?
     
     
  • 2.4, Хамавата (?), 00:49, 12/10/2005 [^] [^^] [^^^] [ответить]  
  • +/
    Например? Дамп? Какая разница дампу, в чем данные на винте?

    Платным инструментом было бинарное резервирование данных innodb файлов.

    И это уж точно не "стандартное средство mysql".

    Это все равно, что дампить диск подорожечно на низком уровне, вместо tar.

    А бинарное резервирование innodb необходимо оттого, что при изменении  объема хранилища данные уничтожаются полностью. И без дампа размер хранилища все равно не изменить.

    Так вот этот тул для бинарного резервирования позволяет восстановить убитое хранилище. Но не изменить его размер. Все равно без дампа не обойтись.

     
     
  • 3.10, chip (ok), 16:54, 12/10/2005 [^] [^^] [^^^] [ответить]  
  • +/
    >Например? Дамп? Какая разница дампу, в чем данные на винте?
    >
    >Платным инструментом было бинарное резервирование данных innodb файлов.
    >
    >И это уж точно не "стандартное средство mysql".

    Насколько я понял это "не "стандартное средство mysql"" могло бэкапить только на остановленной базе.

     
     
  • 4.11, Хамавата (?), 20:01, 12/10/2005 [^] [^^] [^^^] [ответить]  
  • +/
    - на горячуюю. На ходу.
     
  • 2.5, Alexey (??), 02:01, 12/10/2005 [^] [^^] [^^^] [ответить]  
  • +/
    Без проблем реплицируется. Причем на мастере и на слейве таблицы могут быть разных типов (myisam меньше место занимают, так что можно innodb-шные таблицы реплицировать в myisam'ные).
     
  • 2.6, Аноним (-), 10:02, 12/10/2005 [^] [^^] [^^^] [ответить]  
  • +/
    >кстати, а innodb еще не научился реплицироваться стандартными средствами mysql?

    Кто-нибудь в курсе когда в innodb появится возможность создания FULLTEXT индексов ? Или так и будем говорить что в MySQL поддерживаются и транзакции и прочие вкусности, а сами продолжать сидеть на MyISAM ?

     
     
  • 3.9, chip (ok), 16:53, 12/10/2005 [^] [^^] [^^^] [ответить]  
  • +/
    >>кстати, а innodb еще не научился реплицироваться стандартными средствами mysql?
    >
    >Кто-нибудь в курсе когда в innodb появится возможность создания FULLTEXT индексов ?

    Из http://www.innodb.com/todo.php :

    Add FULLTEXT indexes on InnoDB tables. A sponsor for this project has been found, and a developer has been hired. Appears probably in 2006.


     

  • 1.3, GR (??), 00:37, 12/10/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Кстати innodb теперь принадлежит Oracle ...
    Так что если им не понравятися чего (а вдруг MySQL и вправду чему такому наусится)- придушатЪ :(
     
     
  • 2.8, chip (ok), 16:50, 12/10/2005 [^] [^^] [^^^] [ответить]  
  • +/
    > Кстати innodb теперь принадлежит Oracle ...

    Всеже не InnoDB, а Innobase.

     

  • 1.7, Николай (??), 12:00, 12/10/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >> поддерживает все возможности MyISAM
    - враньё. например:
    "FULLTEXT  indexes can be used only with MyISAM  tables;" (http://dev.mysql.com/doc/mysql/en/fulltext-search.html)
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру