Ru-MaNGOS

Вернуться   Ru-MaNGOS > Документация > Установка MaNGOS

Важная информация

Установка MaNGOS Установка MaNGOS

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 12.05.2011, 17:23   #1
0xFF
Гость
 
Сообщений: n/a
По умолчанию PostgreSQL Mangos

Официально ядро поддерживает PostgreSQL , но почему в репозитории проекта лежат дампы только под MySQL??? Единственный *.sql файл для постгре это postgre_compatibility_addon.sql в котором создаются хранимые процедуры для замены стандартного типа timestamp'a. Сам синтаксис дампов только под MySQL, то есть эти дампы абсолютно нерабочие для PostgreSQL . Есть ли люди которые этим занимаются? И вообще планируется ли поддержка на уровне дампов PostgreSQL?
  Ответить с цитированием
Старый 12.05.2011, 17:43   #2
Vladimir
MaNGOS Dev
 
Регистрация: 09.02.2010
Сообщений: 594
Сказал(а) спасибо: 315
Поблагодарили 438 раз(а) в 181 сообщениях
Vladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небес
По умолчанию

В contrib/mysql_to_pgsql лежин конвертор sql заросов - не 100% панацея конечно.

Цитата:
Есть ли люди которые этим занимаются?
Среди разрабочиков из mangos team нет на данный момент пользующихся PostgreSQL.

Цитата:
И вообще планируется ли поддержка на уровне дампов PostgreSQL?
Соответственно, нет.

В общем-то поддержка PostgreSQL фактически ограничена совместимостью запросов в коде ядра.
__________________
Так как устал объяснять знайте ICQ не пользуюсь
Vladimir вне форума   Ответить с цитированием
Старый 12.05.2011, 17:50   #3
0xFF
Гость
 
Сообщений: n/a
По умолчанию

Цитата:
Сообщение от Vladimir Посмотреть сообщение
В contrib/mysql_to_pgsql лежит конвертор sql заросов - не 100% панацея конечно.
да надо было обратится к офф сайту сначало =\ , после создания темы нашел ответ твой на getmangos.com http://getmangos.com/community/post/132064/#p132064 .

Цитата:
Сообщение от Vladimir Посмотреть сообщение
Среди разрабочиков из mangos team нет на данный момент пользующихся PostgreSQL.
ну хорошо буду дошлифовыват ьсвоими силами...

Цитата:
Сообщение от Vladimir Посмотреть сообщение
В общем-то поддержка PostgreSQL фактически ограничена совместимостью запросов в коде ядра.
То есть я правильно понял, что помимо траблы решаемой запросами из postgre_compatibility_addon.sql есть еще какие то проблемы с работоспособностью для PostgreSQL?
  Ответить с цитированием
Старый 12.05.2011, 22:07   #4
Vladimir
MaNGOS Dev
 
Регистрация: 09.02.2010
Сообщений: 594
Сказал(а) спасибо: 315
Поблагодарили 438 раз(а) в 181 сообщениях
Vladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небес
По умолчанию

Если структура базы правильная, то ядро должно работать нормально.
Конечно не с той скоростью, как с mySQL - из-за нереализованности prepared statements для PostgreSQL.
__________________
Так как устал объяснять знайте ICQ не пользуюсь
Vladimir вне форума   Ответить с цитированием
Старый 12.05.2011, 22:09   #5
Mediv
Ученый
 
Аватар для Mediv
 
Регистрация: 17.11.2010
Сообщений: 204
Сказал(а) спасибо: 40
Поблагодарили 20 раз(а) в 14 сообщениях
Записей в дневнике: 1
Mediv На верном пути
Отправить сообщение для Mediv с помощью ICQ
По умолчанию

Смысла в постгресе для мангоса нет.
__________________
Ололо, мангос сила :D
Mediv вне форума   Ответить с цитированием
Старый 13.05.2011, 09:40   #6
0xFF
Гость
 
Сообщений: n/a
По умолчанию

Цитата:
Сообщение от Vladimir Посмотреть сообщение
Если структура базы правильная, то ядро должно работать нормально.
спасибо за разЪяснение

Цитата:
Сообщение от Vladimir Посмотреть сообщение
Конечно не с той скоростью, как с mySQL - из-за нереализованности prepared statements для PostgreSQL.
Ну во-первых нет ничего такого в MySQL , чего не было бы в PostgreSQL(если же нет, то оно либо не нужно либо реализовано иными средствами, причем второе справедливо в 90% процентах случаев).
Во-вторых видимо вы давно не заглядывали в документацию по постгре потому что для 8 и 9 ветки prepared statements реализованы и еще неизвестно где быстрее работает данный механизм (пруфы на офф маны http://www.postgresql.org/docs/curre...l-prepare.html http://www.postgresql.org/docs/8.0/s...l-prepare.html)
В-третьих насчет быстроты.В профессиональных кругах не секрет, что промышленное качество кода постгре в разы лучше MySQL(не зря же MySQL крайне не рекомендуют для продакшена) плюс свои уникальные алгоритмы работы и оптимизации ее. Вообще есть вики страница на офф сайте постгре , где говорится об ключевых отличиях http://wiki.postgresql.org/wiki/Why_..._of_MySQL_2009 . Но холивар не буду разводить ибо ресурс не для этого да и нелюбитель я их.Что действительно в MySQL есть это таблицы с движком MyISAM которые очень быстрые для чтения, но жертвуя при этом отказоустойчивостью и блокировки для записи.
цитата с вики про движок MyISAM
Цитата:
This engine has excellent read performance for straightforward queries, which combine to make it very fast in read-intensive applications like web applications involving simple SELECTs. However, it is commonly known that MyISAM is more vulnerable to data corruption than most serious database applications would tolerate, and after a crash it can take a long time to repair the tables, during which the server is down. Furthermore, it does not support foreign keys or transactions that would allow the database to have ACID properties. MyISAM also has issues dealing with concurrent reads and updates, since it only provides table level locking.
Но опять же постгре легко подстраивается под конкретные нужды, нужны лишь прямые руки и умение читать офф документацию

P.S> Вообщем то я уже решил самостоятельно осуществить миграцию на постгре, уже собрал небольшой тулкит для миграции дампов с MYSQL на PostgreSQL(самописные и сторонние perl скрипты + прога из /contrib/mysql_to_pgsql), перевел и протестировал на работоспособность следующие дампы :
characters.sql
create_mysql.sql
mangos.sql
mangos_spell_check.sql
realmd.sql
и около половины из updates

есть еще проблемы,но думаю я их решу

P.S.S кому интересно perl-скрипты для миграции выложил в открытую часть репозитория своей сборки сервера https://bitbucket.org/unStatiK/firewow-server/src

Последний раз редактировалось 0xFF; 13.05.2011 в 09:52.
  Ответить с цитированием
Старый 13.05.2011, 09:50   #7
zergtmn
MaNGOS Dev
 
Аватар для zergtmn
 
Регистрация: 07.03.2010
Сообщений: 314
Сказал(а) спасибо: 30
Поблагодарили 153 раз(а) в 83 сообщениях
zergtmn Обладатель прекрасной аурыzergtmn Обладатель прекрасной ауры
По умолчанию

Цитата:
Сообщение от 0xFF Посмотреть сообщение
потому что для 8 и 9 ветки prepared statements реализованы
Вы, наверное, не правильно поняли. В мангосе реализованы Prepared Statements только для MySQL. Если напишете патч, реализующий их для PostgreSQL, он может быть рассмотрен и принят в офф репо.
zergtmn вне форума   Ответить с цитированием
Старый 13.05.2011, 09:53   #8
0xFF
Гость
 
Сообщений: n/a
По умолчанию

Цитата:
Сообщение от zergtmn Посмотреть сообщение
Вы, наверное, не правильно поняли. В мангосе реализованы Prepared Statements только для MySQL. Если напишете патч, реализующий их для PostgreSQL, он может быть рассмотрен и принят в офф репо.
Хорошо, наверно и этим тоже займусь, потому что я очень заинтерисован в работоспособности постгре для мангоса
  Ответить с цитированием
Старый 28.06.2011, 14:50   #9
user456
Новичок
 
Регистрация: 31.03.2010
Сообщений: 22
Сказал(а) спасибо: 2
Поблагодарили 23 раз(а) в 8 сообщениях
user456 На верном пути
По умолчанию

Цитата:
Сообщение от Vladimir Посмотреть сообщение
Конечно не с той скоростью, как с mySQL - из-за нереализованности prepared statements для PostgreSQL.
Вообще-то сам делал prepared для MySQL и Postgres. До этого постгрес мне не особо нравился, но запихивая prepared MySQL в класс мне показалось что делали он эту часть в свободное от работы время. А потом нарвался на мускульный глюк с невозможностью выполнения другого запроса пока открыт первый. А вот в постгрес всё логично.
Вот к примеру во вложении логон сервер на постгрес. Класс именно постгрес в Common/PostgresClasses.pas. Для тех кто не понимает Дельфи - переименуйте begin в {, end в }, а дальше почти одинаково.
Вложения
Тип файла: zip LogonServer2.4.ZIP (83.2 Кб, 396 просмотров)

Последний раз редактировалось user456; 28.06.2011 в 15:28.
user456 вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[10772] Fixed build for different PostgreSQL version at diff platforms. newsbot CMaNGOS Commits 0 22.11.2010 01:00
trinity (world) to mangos (mangos) Timmy-kr Корзина 1 02.06.2010 04:51


Текущее время: 07:30. Часовой пояс GMT +3.


ru-mangos.ru - Русское сообщество MaNGOS
Главная цель проекта MaNGOS - обучающая, поэтому разрешается использовать исходный код и собранную программу только для образовательных целей.
Вы не можете использовать MaNGOS в коммерческих целях, а также не разрешается устанавливать публичные серверы на базе MaNGOS.
Любое копирование материалов, информации в любом виде без указания источника - форума Ru-MaNGOS будет считаться нарушением авторских прав и нарушением Уголовного Кодекса РФ, ст. 146 ст. 147.
Перевод vBulletin: zCarot