Перенос PHP-приложений с MySQL на DB2: Часть 1. Подготовка к миграции

Опыт миграции интранет-приложения IBM

Узнайте, зачем переносить PHP-приложение на DB2®, как спланировать и выполнить миграцию, как поддерживать ее и как справиться с потенциальными рисками, на примере опыта миграции интранет-приложения IBM. В этой серии статей, состоящей из четырех частей, рассматривается уроки успешной миграции с MySQL на DB2 критически важного PHP-приложения, которое используют 4000 пользователей из разных стран мира для управления содержимым сайта ibm.com. В первой части описываются действия по подготовке к миграции.

Дэниел Крук, инженер-программист, IBM

Дэниел Крук (Daniel Krook) – сертифицированный специалист (IBM/Open Group Master Certified IT Specialist), проживающий в Нью-Йорке. Имеет более чем 10-летний опыт разработки Web-приложений, а в настоящее время занимается созданием облачной инфраструктуры для IBM с использованием Java EE, DB2, REST и мобильных технологий. Имеет сертификаты по PHP, Java EE, BlackBerry, DB2 и Solaris. Пишет статьи по PHP для IBM developerWorks и является соавтором документа IBM Redbook "Разработка PHP-приложений для IBM Data Servers".



Янь Ли Му, ИТ-архитектор, IBM

Янь Ли Му (Yan Li Mu) – ИТ-архитектор, работающий в Даляне (КНР). Занимается созданием Web-приложений более 8 лет, уделяя основное внимание технологиям Java EE, PHP и разработке баз данных.



Марк Ньюскейбл, старший ИТ-архитектор, IBM

Марк Ньюскейбл (Mark Nusekabel) – сертифицированный специалист (IBM/Open Group Master Certified IT Architect), проживающий в Тампа-Бэй, Флорида. Занимается информационными технологиями более 20 лет; в настоящее время проектирует инструментальные средства с использованием JavaScript, PHP, Java и DB2. Имеет сертификаты по решениям для электронного бизнеса, а также по Java и XML.



08.06.2012

Введение в серию статей

В настоящее время MySQL является самым распространенным сервером баз данных, используемым с языком программирования PHP для создания динамичных Web-приложений. Другая популярная база данных - DB2, которая хорошо поддерживается PHP и имеет неоспоримые преимущества перед MySQL, которые делают ее идеальным выбором для многих приложений.

Эта серия статей рассказывает о том, почему целесообразно перенести PHP-приложение на DB2, как подготовиться к миграции, как выполнить ее, как поддерживать ее и как справиться с потенциальными рисками, на примере опыта, приобретенного авторами ходе недавно проведенной миграции. Приводится много примеров исходного кода и конфигураций, а также ссылок на ресурсы, которые помогут безболезненно выполнить перенос приложения.

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

В этой серии, состоящей из четырех статей, рассматриваются уроки успешной миграции с MySQL на DB2 работающего критически важного PHP-приложения, которое используют 4000 пользователей из разных стран мира для управления содержимым сайта ibm.com.

  • В первой части рассматриваются действия по подготовке миграции.
  • Во второй части рассматриваются действия по миграции базы данных.
  • В третьей части рассматриваются действия по преобразованию PHP-кода.
  • В четвертой части рассматриваются действия по развертыванию и поддержке приложения.

Что вы узнаете

Цель данной серии статей – дать информацию о том, что нужно для переноса PHP-приложения с MySQL на DB2, какие имеются дополнительные ресурсы и как группа разработчиков IBM выполнила эту задачу в начале 2010 года.

Если вы изучали вопрос миграции с MySQL на DB2, вы, вероятно, уже оценили преимущества DB2, принимая во внимание информацию о продукте, тесты производительности, функции, описанные в документации по DB2, и сравнения в документах IBM Redbook®, включая "Руководство по переходу с MySQL на DB2" (см. раздел Ресурсы).

Возможно, вам также известно, что DB2 Express-C является бесплатным, полнофункциональным сервером реляционных баз данных, который можно легко установить или опробовать на платформах IBM Smart Business Development and Test Cloud или Amazon EC2 (ссылки приведены в разделе Ресурсы).

Данная серия статей описывает конкретный пример реальной миграции, успешно выполненной в 2010 году для интенсивно эксплуатируемого PHP-приложения, используемого компанией IBM в повседневной работе по управлению контентом, публикуемым в многочисленных разделах Web-сайта ibm.com.

После прочтения данной серии статей вы сможете выполнить аналогичную миграцию, определить сроки ее выполнения и зависимости элементов работ, оценить потенциальные риски и узнать, где найти помощь для каждого этапа проекта. Все это позволит вам еще увереннее сделать выбор в пользу сервера DB2 и его использования для PHP-приложений, которые в настоящее время работают на MySQL.

Что здесь не рассматривается

Цель данной серии статей – поделиться с читателями опытом, полученным IBM в процессе внутренней миграции с MySQL на DB2, и предоставить информацию об имеющихся ресурсах для выполнения аналогичной задачи. Она не является всеобъемлющим руководством по миграции, охватывающим все возможные сценарии.

Чтобы определить соответствующий вашим требованиям подход, обратитесь к "Руководству по переходу с MySQL на DB2" или обратитесь в отдел Software Migration Project Office (SMPO) за бесплатной оценкой миграции. Ссылки приведены в разделе Ресурсы.


Введение в учебный пример

Команда ibm.com более семи лет использует программу Project Tracking Tool (PTT) для поддержки жизненного цикла информации, которую группы пользователей подразделения Sales and Distribution публикуют на ibm.com. В учебном примере мы выполнили миграцию именно этого приложения.

Программа PTT органически выросла из инструмента уровня отдела, первоначально поддерживавшего небольшую организацию, в глобальное приложение для управления проектами и отслеживания сроков исполнения, обслуживающего более 4000 пользователей из разных стран.

Во многом программа PTT похожа на другие интранет-приложения, построенные на платформе LAMP (Linux, Apache, MySQL и PHP): это Web-приложение разработал за два выходных дня мотивированный разработчик, увидевший насущную бизнес-потребность в решении, которое быстро адаптировалось и совершенствовалось бы для поддержки множества новых требований по мере роста сообщества пользователей. Однако характеристики, которые поначалу сделали приложение популярным и ценным, впоследствии стали проблемой.

Мотивация для миграции

Хотя с точки зрения производительности и быстроты реакции на меняющиеся требования приложение выполняло своим функции очень хорошо, сама предметная область стала перерастать в оформившийся, устойчивый и стратегически всеобъемлющий процесс. На этом этапе само приложение имело четкий набор требований, проверенные передовые методики управления рабочим процессом и данные, выросшие в объеме и значении. Короче говоря, PTT набрало критическую массу и перестало быть просто удобным ситуационным приложением, став фундаментом основной деятельности нашей организации.

Кроме превращения PTT в более ценное и надежное приложение для повседневной деятельности организации, необходимо было провести серьезные архитектурные изменения для лучшей интеграции PTT с экосистемой Web-сервисов и источниками данных, с которыми она взаимодействовала. Для поддержки этого обновленного дизайна системы вокруг PTT была разработана целостная сервис-ориентированная архитектура, а также было выбрано новое средство бизнес-аналитики, чтобы помочь применять данные из PTT для дальнейшего повышения эффективности работы.

Основные мотивы миграции с MySQL на DB2 приведены в таблице 1. Они упорядочены по относительной важности для заинтересованных лиц.

Таблица 1. Перечень мотивов и ожидаемых преимуществ
ПреимуществоОбъяснениеВажность
Совместимость и производительность инструментария вычисления показателейОбъем наших данных превысил возможности нашего настольного инструментария вычисления показателей Hyperion Brio. Замена, которую мы нашли для решения проблемы (Cognos®), была совместима только с DB2 на Linux (MySQL поддерживается только на Windows через ODBC). Для принятия более интеллектуальных решений в духе времени нам была необходима миграция.Критичная
Совместимость с программным обеспечением IBM промежуточного уровняЧтобы поддерживать сервис-ориентированную архитектуру, мы также учитывали потенциальную совместимость с другими средствами и приложениями IBM, такими как FileNet® для управления производством контента и ILOG JRules для планирования взаимодействия наших бизнес-процессов.Высокая
Наличие квалификации в DB2Хотя в нашей группе много профессионалов с опытом работы в MySQL, в IBM имеется огромный объем документации, множество квалифицированных специалистов и полная поддержка DB2. Мы также заметили большой интерес к DB2 со стороны академического сообщества, откуда все чаще приходили новые сотрудники в отдел поддержки приложений.Высокая
Целостность данныхТаблицы нашей базы данных MySQL были основаны на механизме MyISAM, не поддерживающем транзакции. Учитывая растущее значение и объем ежедневных операций, переход к использованию транзакций, хранимых процедур и триггеров был критически важен для улучшения целостности данных и управления ими. Хотя MySQL предлагает многие из этих функций в альтернативных механизмах хранения данных, DB2 обладает более развитыми возможностями.Высокая
Варианты и стоимость хостингаВ настоящее время мы размещаем приложение в своем собственном центре обработки данных. При возникновении необходимости перехода на альтернативный хостинг или использования предустановленных образов сервера IBM Cloud нам потребовался бы общий проверенный профиль, чтобы сохранить стоимость поддержки на низком уровне.Средняя
Стоимость лицензированияПоддержка корпоративной версии MySQL от Oracle стоит от 600 до 5000 долларов в год. Для сотрудников IBM стоимость лицензии DB2 не являлась проблемой. Сторонние пользователи могут получить лицензию на поддержку DB2 Express за меньшую цену по сравнению с предложениями Oracle. Лицензия DB2 на фиксированный период стоит около 2000 долларов.Низкая

Естественно, учитывались и другие преимущества, которые часто являются очень привлекательными для перехода на DB2, в том числе:

  • Самонастройка и самоконфигурирование.
  • Исключительная масштабируемость.
  • Продуманная система безопасности.
  • Встроенная поддержка XML.
  • Сжатие данных.

Но эти соображения не имели первостепенного значения для в свете наших целей при миграции.

Анализ затрат и результатов

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

В таблице 2 перечислены некоторые из самых вероятных и влиятельных рисков, идентифицированных нами при проведении миграции, а также стратегии их уменьшения.

Таблица 2. Перечень рисков, работающих против миграции, и стратегии миграции
РискОписаниеПредотвращение
Внесение ошибок в стабильный код и структуру базы данныхПримерно за восемь лет мы создали стабильное и высокоспециализированное приложение, учитывающее все пожелания пользователей. Хотя приложение не являлось совершенным и при добавлении новых функций иногда возникали ошибки регрессии, оно было довольно стабильным и удовлетворяло наших пользователей.Тщательно задокументируйте критичную функциональность и используйте эту информацию для подготовки модульных и компонентных тестов, а также тестов приемлемости для пользователей.
Изменение существующей аппаратной и программной инфраструктурыМиграция внесла бы значительные изменения в существующую архитектуру резервирования и репликации.Определите ресурсы, необходимые для новой платформы, и создайте новую инфраструктуру, обеспечивающую те же или большие ресурсы.
Отвлечение ресурсов от разработки новых функциональных возможностей на выполнение миграции инфраструктурыЧем больше ресурсов вкладывается в инфраструктуру, тем меньше времени остается на новую функциональность. Учитывая зрелость приложения с функциональной точки зрения, это не было серьезной проблемой.Выполняйте миграцию в такое время года, когда система не очень интенсивно используется или когда не требуется разработка новых критично важных функций.

В таблице 3 приведен перечень рисков, которые, вероятнее всего, нам пришлось бы преодолевать, если бы мы остались на MySQL.

Таблица 3. Перечень рисков, подтверждающих необходимость миграции
РискОписание
Невозможность добиться максимальной гибкости бизнесаБез высокопроизводительного инструмента вычисления показателей для управления бизнес-аналитикой и эффективностью эксплуатации, мы бы все больше отставали, поскольку наш процесс создания отчетов и принятия решений с каждым днем требовал все больше времени из-за увеличения объемов данных.
Растущая угроза нарушения целостности данныхХотя MySQL предоставляет транзакционный механизм хранения, наше приложение было построено на облегченном механизме MyISAM табличного типа. Миграция на транзакционный механизм или на сервер баз данных другого поставщика была критичным фактором улучшения целостности данных и управления ими.
Зависимость от службы поддержки OracleПосле того как компания Oracle в 2009 году приобрела Sun, будущее поддержки MySQL стало неясным. Кроме того, в 2007 году Oracle купила инструмент вычисления показателей Hyperion Brio.

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


Создание системы обучения сотрудников

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

Кроме миграции приложения, мы запланировали возможные инфраструктурные изменения программного и аппаратного обеспечения, а также определили, будем ли вносить какие-нибудь изменения в нашу PHP-инфраструктуру кроме изменений на уровне данных.

Выполнив эти подготовительные работы, мы смогли составить довольно точный план проекта.

Обучение сотрудников работе с DB2

Поскольку наша группа обслуживает не только приложение PTT, многие сотрудники были знакомы с DB2, которая была самой употребительной платформой базы данных для других наших приложений. Для новичков были полезны следующие ознакомительные материалы для изучения DB2 (ссылки приведены в разделе Ресурсы):

  • "Рекомендованный список литературы: разработка приложений с использованием DB2 для Linux, UNIX и Windows" на сайте developerWorks.
  • "Рекомендованный список литературы: администрирование баз данных с использованием DB2 для Linux, UNIX и Windows" на сайте developerWorks.
  • "Освоение DB2: визуальное обучение с примерами" – опубликовано IBM Press.
  • Комплект IBM DB2 e-kit for Database Professionals на сайте developerWorks.

Возможно, вам больше подойдет другой процесс обучения, например, уроки, проводимые преподавателями. Более подробная информация приведена в разделе Ресурсы.

Обучение сотрудников процедуре миграции

Существует большое количество информации по миграции на программное обеспечение IBM с других серверов приложений, серверов данных и операционных систем. В частности, редакция IBM Redbooks издала ряд руководств по миграции. Основным нашим источником информации была новая редакция "Руководства по переходу с MySQL на DB2" (см. раздел Ресурсы). Это бесплатное руководство было обновлено в декабре 2009 года, когда мы приступили к планированию миграции. Оно послужило основным источником информации для миграции с MySQL на DB2.

Для сбора информации, относящейся к миграции PHP-приложений, мы использовали другой документ IBM Redbook "Разработка PHP-приложений для серверов данных IBM" и опыт, приобретенный одним из авторов во время миграции главного приложения независимого поставщика ПО. Замечания Дэниела Крука собраны в его блоге под названием "Написание SQL-выражений, работающих как на MySQL, так и на DB2" (см. раздел Ресурсы). Мы также использовали в качестве справочной информации список рекомендованной литературы и другую документацию по DB2.

Основываясь на нашем опыте работы с DB2 в других проектах, мы не стали прибегать к услугам отдела проектов миграции ПО (см. раздел Ресурсы), хотя этот вариант может подойти для других проектов миграции. Эта организация может бесплатно оценить ваш сценарий миграции.


Оценка инструментальных средств миграции

Изучайте, экспериментируйте, разрабатывайте и тестируйте, используя IBM Cloud

Во время осуществления нашей миграции платформа IBM Smart Business Development and Test on the IBM Cloud находилась на стадии открытого бесплатного бета-тестирования. Мы могли изучать DB2 на практике и экспериментировать с предварительно настроенными в этом облаке образами серверов DB2. Теперь это корпоративная платформа для сокращения сроков миграции приложений, которую можно также использовать для быстрого освоения DB2. Если бы мы проводили миграцию сегодня, это облако по-прежнему было бы важной частью нашей стратегии миграции приложения и базы данных.

После того как мы разобрались с общими задачами миграции, пришло время оценить автоматические инструментальные средства, которые позволяют ускорить процесс миграции. Есть несколько способов, позволяющих выполнить успешную миграцию с MySQL на DB2, и нам надо было определить наиболее подходящий для нас. Мы решили использовать IBM Data Movement Tool (DMT) и Rational® Software Architect (RSA). Для моделирования данных и разработки процедур можно использовать и другие средства, включая InfoSphere™ Data Architect и Optim™ Development Studio. Но для нас критериями выбора были простота и наше знание инструментальных средств Rational.

IBM Data Movement Tool
Автоматизированный экспорт DDL, трансляция объектов базы даны и перемещение данных. Этот инструмент заменяет более старую Migration Toolkit и упрощает работу.
Программный пакет Rational Software Architect
Подробное визуальное моделирование данных, инженерный анализ и тонкая настройка. Этот пакет можно использовать также для создания представлений, хранимых процедур, определяемых пользователем функций и триггеров.

Оценка аппаратного обеспечения, ПО промежуточного уровня и миграции приложений

Помимо рассмотрения миграции программного обеспечения мы также имели возможность выполнить обновление аппаратного обеспечения и формализовать нашу рабочую среду и среду разработки PHP-приложений. Ранее мы использовали специально собранное и настроенное аппаратное обеспечение и хотели перейти на поддерживаемый, готовый к использованию бинарный PHP-дистрибутив с графическим пользовательским интерфейсом. Дистрибутив Zend Server предлагает кэширование, мониторинг и другие возможности по настройке в дополнение к упрощению обновления PHP и его расширений. Он также является шагом вперед по направлению к более объектно-ориентированной архитектуре MVC (Model, View, Controller – модель, представление, контроллер) благодаря использованию проверенных PHP-библиотек в составе надежной инфраструктуры Zend Framework.


Разработка плана проекта

После сбора материалов, определения элементов работ, сроков их выполнения и зависимостей мы разработали план проекта для определения необходимых ресурсов и времени. Общий план представлен в таблице 4.

Мы оценили, что продолжительность проекта миграции 150 таблиц, 10 ГБ данных и нескольких сотен PHP-файлов с участием 1 архитектора, 2 разработчиков и менеджера проекта составит около 3 месяцев.

Таблица 4. Общий план проекта миграции с MySQL на DB2
ЭтапЗадачаПродолжительность (часов)
ПодготовкаСоздание перечня задач и оценок16
Планирование, сбор данных и необходимое обучение48
Анализ приложений и планирование системы64
Преобразование структуры базы данныхОценка возможности применения новых функций DB216
Определение области действия структур данных для миграции16
Преобразование DDL-выражений с MySQL на DB240
Создание объектов и базы данных DB224
Миграция данныхАнализ области действия данных для миграции8
Миграция данных40
Миграция полномочий8
Обновление приложенияПреобразование SQL-выражений32
Реализация новых вариантов курсора и параллелизма16
Реализация транзакций, определяемых пользователем функций и хранимых процедур16
Преобразование параметров и имен функций базы данных40
Определение сегментов кода, где функции отображаются неточно, и разработка обходных путей32
Настройка администрирования базы данныхОпределение предпочтительного пакета инструментальных программ для работы либо из командной строки, либо из графического пользовательского интерфейса8
Отображение и преобразование процедур резервного копирования16
Отображение и преобразование процедур репликации16
Реализация всех правил автоматического сохранения данных16
Тестирование и настройкаСоздание тестов приемлемости для пользователей, основанных на существующей функциональности16
Обнаружение узких мест в производительности и изменение логики работы приложения24
Использование Design Advisor, Performance Monitor и Index Advisor для настройки базы данных32
РазвертываниеПроверка корректности настройки PHP-модулей и среды хостинга24
Полное тестирование интеграции и приемлемости для пользователей40
Текущая поддержкаПроверка правильности реализации функциональности16
Реакция на уведомления о неправильной работе базы данных16
Решение проблем производительности, о которых сообщили пользователи24

Обобщение информации

После определения круга задач, которые необходимо выполнить, и сроков завершения проекта мы распределили имеющиеся в нашем распоряжении ресурсы на четыре этапа. В таблице 5 приведены последовательные итеративные этапы и соответствующие им публикации, инструментальные средства и инфраструктуры. Эти четыре этапа также соответствуют четырем частям данной серии статей.

Таблица 5. Этапы и ресурсы миграции
ЭтапРесурсы
Подготовка
  • Книги IBM Press
  • SMPO
  • Комплект eKit for DB2 Professionals
  • Руководство по переходу с MySQL на DB2
  • IBM Smart Business Development and Test on the IBM Cloud
Миграция данных
  • Средство Data Movement Tool
  • Программный пакет Rational Software Architect
  • Комплект eKit for DB2 Professionals, списки рекомендованной литературы
  • Руководство по переходу с MySQL на DB2
  • IBM Smart Business Development and Test on the IBM Cloud
Миграция исходного кода
  • Документы по PHP-расширениям
  • Документ PHP Redbook
  • Опыт независимых поставщиков
  • Руководство по переходу с MySQL на DB2
  • IBM Smart Business Development and Test on the IBM Cloud
Развертывание
  • Стратегии снижения затрат
  • Серии статей на developerWorks
  • Списки литературы
  • Руководство по переходу с MySQL на DB2
  • IBM Smart Business Development and Test on the IBM Cloud

Таблица 5 проиллюстрирована на рисунке 1.

Рисунок 1. Связь этапов и ресурсов миграции с MySQL на DB2
Рисунок 1. Связь этапов и ресурсов миграции с MySQL на DB2

Предварительные результаты миграции

Мы завершили разработку плана миграции приложения с MySQL на DB2 в конце 2009 года. К счастью, план такой миграции хорошо задокументирован, хотя есть и много других вариантов, которые могут иметь смысл в определенных ситуациях. Информацию об альтернативах можно найти в других источниках, например, в Руководстве по переходу с MySQL на DB2. В данной статье описываются план для нашей ситуации и инструментальные средства, которые помогли его осуществить.

В 2010 году мы успешно перенесли приложение на DB2, и это помогло увеличить объемы и улучшить качество нашей деятельности, а также повысить удовлетворенность потребителей.

Тот факт, что миграция прошла незаметно для подавляющего числа конечных пользователей, стал наиболее реальным показателем успеха. Приложение продолжает функционировать как обычно, но мы улучшили целостность данных и способность бизнеса реагировать на содержащиеся в данных идеи, а также распространили потенциал интеграции нашего приложения на инфраструктуру IBM, что позволит использовать возможности широкого спектра разнообразного ПО в будущем.


Заключение

Целью данной серии статей является предоставление подробной информации о нашем сценарии миграции PHP-приложения с MySQL на DB2. Вы узнали о существующих ресурсах и о том, как они помогли нам успешно выполнить эту задачу в начале 2010 года.

В первой части данной серии статей вы:

  • узнали о мотивах, рисках и преимуществах преобразования нашего интранет-приложения;
  • познакомились с нашим опытом сбора материалов для изучения DB2 и узнали, что необходимо для миграции с MySQL на DB2;
  • узнали об инструментальных средствах, помогающих выполнить миграцию;
  • узнали о том, как объединить все ресурсы, которые помогут вам на каждом этапе проекта.

В следующей части данной серии статей вы узнаете о том, как мы преобразовали структуру базы данных и выполнили миграцию данных.

Благодарности

Авторы благодарят Леонса Петразикиса (Leons Petrazickis) и Эмбриша Бхаргава (Ambrish Bhargava) за комментарии к статье.

Ресурсы

Научиться

Получить продукты и технологии

  • Получите IBM DB2 e-kit for Database Professionals для изучения возможностей DB2, использования вашего опыта разработки приложений и администрирования баз данных, подключения к сообществу DB2 и подготовки к экзаменам по сертификации.
  • Свяжитесь с группой Software Migration Project Office DB2, чтобы получить бесплатную оценку возможности миграции.
  • Попробуйте поработать с DB2 на Amazon EC2.
  • Zend Server – сервер Web-приложений корпоративного уровня для выполнения поддержки PHP-приложений, предъявляющих высокие требования к надежности, производительности и безопасности, на Linux, Windows или IBM i.
  • Zend Server включает в себя драйверы дл DB2, но для собственных конфигураций PHP можно использовать исходный код расширения драйвера в виде PECL или бинарных файлов для Windows на сайте SourceForge.
  • Дополнительная информация по обучению и сертификации по DB2. Пройдите учебный курс по управлению информационными ресурсами.
  • Загрузите и установите бесплатный сервер данных DB2 Express-C.
  • Используйте Rational Software Architect или InfoSphere Data Architect для выполнения логического и физического моделирования данных.
  • Используйте Optim Development Studio для разработки и оптимизации приложений, работающих с DB2.

Обсудить

Комментарии

developerWorks: Войти

Обязательные поля отмечены звездочкой (*).


Нужен IBM ID?
Забыли Ваш IBM ID?


Забыли Ваш пароль?
Изменить пароль

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


Профиль создается, когда вы первый раз заходите в developerWorks. Информация в вашем профиле (имя, страна / регион, название компании) отображается для всех пользователей и будет сопровождать любой опубликованный вами контент пока вы специально не укажите скрыть название вашей компании. Вы можете обновить ваш IBM аккаунт в любое время.

Вся введенная информация защищена.

Выберите имя, которое будет отображаться на экране



При первом входе в developerWorks для Вас будет создан профиль и Вам нужно будет выбрать Отображаемое имя. Оно будет выводиться рядом с контентом, опубликованным Вами в developerWorks.

Отображаемое имя должно иметь длину от 3 символов до 31 символа. Ваше Имя в системе должно быть уникальным. В качестве имени по соображениям приватности нельзя использовать контактный e-mail.

Обязательные поля отмечены звездочкой (*).

(Отображаемое имя должно иметь длину от 3 символов до 31 символа.)

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


Вся введенная информация защищена.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=Information Management, Open source
ArticleID=820390
ArticleTitle=Перенос PHP-приложений с MySQL на DB2: Часть 1. Подготовка к миграции
publish-date=06082012