# Главная
# О библиотеке

# Выбор дистрибутива
преимущества Linux/UNIX | основные дистрибутивы | серверный Linux | BSD | LiveCDs | прочее

# Установка и удаление программ
общие вопросы | каталоги софта | специальные случаи

# Настройка и работа
установка, загрузчики | настройка Linux | консоль | файловые системы | процессы | шеллы, русификация, коммандеры | виртуальные машины, эмуляторы

# X Window и оконные менеджеры
настройка X Window | GNOME | KDE | IceWM и др.

# Работа с текстами
редакторы | офис | шрифты, кодировки и русификация | преобразования текстовых файлов | LaTeX, SGML и др. | словари

# Графика
GIMP | фото | обработка изображений | форматы графических файлов

# Сети, администрирование
общие вопросы | Dialup & PPP | брандмауэры | маршрутизация | работа в Windows-сетях | веб-серверы | Apache | прокси-серверы | сетевая печать | прочее

# Программирование
GCC & GNU make | программирование в UNIX | графические библиотеки | Tcl | Perl | PHP | Java & C# | СУБД | CVS | прочее

# Ядро
# Мультимедиа
# Интернет
# Почта
# Безопасность
# Железо
# Разное

# Linux HowTo (как сделать)
# Книги и руководства
# Материалы на английском языке


MySQL The World's Most Popular Open Source Database # Online shop | Site map |  
CompanyProductsSupport & ConsultingTraining & CertificationDownloadsDocumentation
  BooksArticlesMailing ListsPresentationsOther Sites  
Search the MySQL manual:
MySQL Manual
  • 2 Установка MySQL
    • 2.2 Общие вопросы инсталляции
      • 2.2.1 Как получить MySQL
      • 2.2.2 Проверка целостности пакетов с помощью MD5 Checksums или GnuPG
      • 2.2.5 Операционные системы, поддерживаемые MySQL
      • 2.2.6 Какую версию MySQL использовать
      • 2.2.7 Схемы установки
      • 2.2.8 Как и когда выпускаются обновления
      • 2.2.9 Бинарные коды MySQL, скомпилированные в MySQL AB
      • 2.2.10 Установка бинарного дистрибутива MySQL

Buy this Reference Manual in softcover from Barnes & Noble!

MySQL Reference Manual
Previous / Next / Up / Table of Contents

2.2.5 Операционные системы, поддерживаемые MySQL

Мы применяем GNU Autoconf, что дает возможность переносить MySQL на все современные системы с работающими потоками Posix и компилятором C++ (чтобы скомпилировать только код клиента, требуется только компилятор C++ без использования потоков). Для себя мы используем и разрабатываем программное обеспечение в основном на Sun Solaris (версий 2.5 - 2.7) и SuSE Linux версии 7.x.

Следует учитывать, что для многих операционных систем поддержка собственных потоков работает только в самых последних версиях. Согласно полученным нами сообщениям, MySQL успешно компилируется на следующих комбинациях операционных систем и потоковых пакетов:

  • AIX 4.x, 5.x с собственными потоками. См.раздел See section 2.6.6.4 Примечания к IBM-AIX.
  • Amiga.
  • BSDI 2.x с пакетом MIT-pthreads. See section 2.6.4.5 Примечания к BSD/OS версий 2.x.
  • BSDI 3.0, 3.1 и 4.x с собственными потоками. See section 2.6.4.5 Примечания к BSD/OS версий 2.x.
  • DEC Unix 4.x с собственными потоками. See section 2.6.6.6 Примечания к Alpha-DEC-UNIX (Tru64).
  • FreeBSD 2.x с пакетом MIT-pthreads. See section 2.6.4.1 Примечания к FreeBSD.
  • FreeBSD 3.x и 4.x с собственными потоками. See section 2.6.4.1 Примечания к FreeBSD.
  • HP-UX 10.20 с пакетом MIT-pthreads или пакетом DCE-threads. See section 2.6.6.2 Примечания к HP-UX версии 10.20.
  • HP-UX 11.x с собственными потоками. See section 2.6.6.3 Примечания к HP-UX версий 11.x.
  • Linux 2.0+ с потоками LinuxThreads 0.7.1+ или glibc 2.0.7+. См. раздел See section 2.6.1 Примечания к Linux (Все версии Linux).
  • Mac OS X. See section 2.6.5 Примечания к Mac OS X.
  • NetBSD 1.3/1.4 Intel и NetBSD 1.3 Alpha (требует GNU make). See section 2.6.4.2 Примечания к NetBSD.
  • OpenBSD > 2.5 с собственными потоками. OpenBSD < 2.5 с пакетом MIT-pthreads. See section 2.6.4.3 Примечания к OpenBSD 2.5.
  • OS/2 Warp 3, FixPack 29 и OS/2 Warp 4, FixPack 4. See section 2.6.7 Примечания к OS/2.
  • SGI Irix 6.x с собственными потоками. See section 2.6.6.8 Примечания к SGI Irix.
  • Solaris 2.5 и выше с собственными потоками на SPARC и x86. See section 2.6.3 Примечания к Solaris.
  • SunOS 4.x с пакетом MIT-pthreads. See section 2.6.3 Примечания к Solaris.
  • Caldera (SCO) OpenServer с последним портом пакета FSU Pthreads. See section 2.6.6.9 Примечания к Caldera (SCO).
  • Caldera (SCO) UnixWare 7.0.1. See section 2.6.6.10 Примечания к Caldera (SCO) Unixware Version 7.0.
  • Tru64 Unix
  • Windows 9x, Me, NT, 2000 и XP. See section 2.6.2 Примечания к Windows.

Следует отметить, что не на всех платформах MySQL функционирует одинаково хорошо. Насколько подходит определенная платформа для высоконагружаемого многоцелевого сервера MySQL, определяется следующими факторами:

  • Общая стабильность потоковой библиотеки. Платформа может иметь отличную репутацию в других отношениях, но если в коде, который вызывается MySQL, потоковая библиотека нестабильна, то, даже если все остальное прекрасно, стабильность MySQL будет определяться стабильностью потоковой библиотеки.
  • Способность ядра и/или библиотеки потоков пользоваться преимуществом симметричной многопроцессорной обработки (SMP) на многопроцессорных системах. Другими словами, при создании процессом потока для этого потока должна быть возможность работать на ином центральном процессоре (CPU), чем исходный процесс.
  • Способность библиотеки ядра и/или потоков запускать много потоков, которые приобретают/освобождают синхронизирующий флаг в небольшой критической области, часто без излишних переключений контекста. Иными словами, если реализация pthread_mutex_lock() является очень ``уступающей'' время центрального процессора, это значительно вредит MySQL. Если не принять во внимание данное обстоятельство, то использование добавочных центральных процессоров сделает MySQL существенно медленнее.
  • Общая стабильность/производительность файловой системы.
  • Способность файловой системы работать с большими файлами вообще и работать с ними эффективно в случае больших таблиц.
  • Наш, т.е. разработчиков, уровень компетенции в том, что касается данной платформы. Для платформ, которые мы знаем хорошо, мы вводим в MySQL специфические для платформы оптимизации/исправления, доступные во время компиляции. Кроме того, мы можем также дать совет по оптимальной для MySQL конфигурации вашей системы.
  • Выполненный нами у себя объем тестирования подобных конфигураций.
  • Количество пользователей, успешно применяющих MySQL на данной платформе в подобных конфигурациях. Если это количество велико, то шансы получить некоторые специфические для данной платформы сюрпризы, намного меньше.

В соответствии с предыдущими критериями наилучшими платформами с этой точки зрения для функционирования MySQL являются: x86 под управлением SuSE Linux 7.1, с ядром 2.4 и ReiserFS (или любой подобный дистрибутив Linux) и SPARC под управлением Solaris 2.7 или 2.8. FreeBSD оказывается третьей, но мы в самом деле надеемся, что эта платформа войдет в число лучших, как только станет совершеннее потоковая библиотека. Мы также надеемся, что, с некоторого момента, мы сможем включить в высшую категорию все остальные платформы, на которых MySQL компилируется и функционирует нормально, но не с тем же уровнем стабильности и производительности. Это потребует некоторых усилий с нашей стороны в сотрудничестве с разработчиками компонентов операционных систем и библиотек, от которых зависит MySQL. Если вы заинтересованы в улучшении тех или иных компонентов, у вас есть возможность оказать влияние на их разработку и вы нуждаетесь в подробных инструкциях по поводу того, что нужно MySQL, чтобы работать лучше, пошлите письмо по адресу [email protected].

Просьба к вам: на основании приведенных выше сравнительных характеристик не делать выводов о том, что какая-либо операционная система лучше или хуже другой в общем. Мы говорим о выборе определенной операционной системы для конкретной цели - для работы MySQL, и сравниваем платформы только в таком смысле. С этой точки зрения результат такого сравнения был бы другим, если бы мы включили в него больше пунктов. И в некоторых случаях причина того, что одна операционная система лучше, чем другая, может заключаться всего лишь в том, что в тестирование и оптимизацию этой конкретной платформы было вложено гораздо больше усилий. Мы просто констатируем наши наблюдения, чтобы помочь вам принять решение - на какой платформе использовать MySQL в вашей системе.

User Comments

Add your own comment.

Top / Previous / Next / Up / Table of Contents
# MySQL.com home | Site map | Contact us | Press | Jobs | Privacy policy | Trademark info | © 1995-2003 MySQL AB. All rights reserved.