MySQL Delphi. Компоненты для работы с MySQL

Ruslan82

Premium
Регистрация
5 Фев 2011
Сообщения
49
Реакции
6
Credits
190
Друзья!

Инфы в интернете много, но времени на испробовать все категорически нет, поэтому нужна информация из опыта использования различных компонентов в делфи для работы с MySQL. Компонентов я видел много, хотелось бы инфа типа "работал с UniDAC поменял на MyDAO и все полетело, или наоборот, или не полетело, скорость не изменилась, но работает стабильнее и возможностей больше.

Есть софт который разработали и продаем и стала задача перевести его с Access на более серьезную базу. Полгода тестили Postgre но она КРАЙНЕ медленная, когда дело заходит про апдейт таблиц с индексами, нужно удалять индексы и делать другие подпорки, может заодно, чтобы не плодить тем, посоветуете и на счет MySQL, чтобы не терять еще полгода, может с ней такие же косяки, хотя плотно работал с нею лет 5 назад и таких проблем не было замечено. Платные БД изначально не рассматриваются, но может тот же Firebird или Interbase будет с делфи работать быстрее чем MySQL. Речь о работе с таблицами, содержащими 1-10 млн. записей.

Спасибо всем заранее!
 

LeshaRB

Свой
Регистрация
11 Июн 2007
Сообщения
320
Реакции
467
Credits
39
Друзья!

Инфы в интернете много, но времени на испробовать все категорически нет, поэтому нужна информация из опыта использования различных компонентов в делфи для работы с MySQL. Компонентов я видел много, хотелось бы инфа типа "работал с UniDAC поменял на MyDAO и все полетело, или наоборот, или не полетело, скорость не изменилась, но работает стабильнее и возможностей больше.

Есть софт который разработали и продаем и стала задача перевести его с Access на более серьезную базу. Полгода тестили Postgre но она КРАЙНЕ медленная, когда дело заходит про апдейт таблиц с индексами, нужно удалять индексы и делать другие подпорки, может заодно, чтобы не плодить тем, посоветуете и на счет MySQL, чтобы не терять еще полгода, может с ней такие же косяки, хотя плотно работал с нею лет 5 назад и таких проблем не было замечено. Платные БД изначально не рассматриваются, но может тот же Firebird или Interbase будет с делфи работать быстрее чем MySQL. Речь о работе с таблицами, содержащими 1-10 млн. записей.

Спасибо всем заранее!
Ты думаешь на уровне MySQL инедксов нет?

Скорее всего в твоем случае компоненты не помогут
У вас неправильно организована структур БД
 

Ruslan82

Premium
Регистрация
5 Фев 2011
Сообщения
49
Реакции
6
Credits
190
индексы есть везде, в Access тоже, 2 аналогичные таблицы в аксес и потсгре, содержат одинаковые индексы и 100 000 товаров. в аксесе update выполняется 10 сек, в постгре - 10 минут, если удалить индексы - 5 сек. с базами и структурой базы все нормально. Я собираюсь использовать UniDAC, но может есть лучше компоненты для работы с MySQL
 

LeshaRB

Свой
Регистрация
11 Июн 2007
Сообщения
320
Реакции
467
Credits
39
индексы есть везде, в Access тоже, 2 аналогичные таблицы в аксес и потсгре, содержат одинаковые индексы и 100 000 товаров. в аксесе update выполняется 10 сек, в постгре - 10 минут, если удалить индексы - 5 сек. с базами и структурой базы все нормально. Я собираюсь использовать UniDAC, но может есть лучше компоненты для работы с MySQL
Не может быть такого

Я когда раньше использовал SQLDirect
 

Ruslan82

Premium
Регистрация
5 Фев 2011
Сообщения
49
Реакции
6
Credits
190
Не может быть такого

Я когда раньше использовал SQLDirect

да, я тоже начитался перед выбором постгри какая она крутая, а потом гуглил по поводу update - у всех так, все пишут что это нормально, постгре в общем когда делаешь update table set field = 1 where code = 2 - обновляет индексы каждую запись! т.е. если запросом должно обновиться 100 записей то она обновляет индекс 100 раз... жесть, причем даже если индексные поля не используются в запросе. и типа кто как рекомендует, кто типа через временную таблицу обновлять, кто индексы удалять
 

LeshaRB

Свой
Регистрация
11 Июн 2007
Сообщения
320
Реакции
467
Credits
39
Дай скрипты таблиц
 

Mironico

Турист
Регистрация
14 Апр 2008
Сообщения
13
Реакции
0
Credits
28
но может тот же Firebird или Interbase будет с делфи работать быстрее чем MySQL
По любому.
Сам юзаю птичку уже 13 лет.
FibPlus (VCL) сейчас тоже бесплатный, деврейс его в народ отдала.
Единственное чего не хватает - встроенной репликации.
Но, говорят, в 4 версии будет.
 

j1981

Местный
Регистрация
4 Сен 2008
Сообщения
9
Реакции
2
Credits
38
Absolute Database
"Description
-----------

With AbsoluteDatabase you can forget the Borland Database Engine (BDE) .
Absolute Database is the compact, high-speed, robust and easy-to-use database engine.
With Absolute Database you will not need special installation and configuration,
it compiles right into your EXE.
Make your application faster and smaller with Absolute Database!

Key Features:

· No BDE; no DLLs
· SQL'92 (DDL & DML) support
· Single database file
· Unmatched ease-of-use
· 100% compatibility with standard DB-aware controls
· Strong encryption
· BLOB compression
· Full source code available
· Royalty-free
"
 

yyjksw

Местный
Регистрация
17 Июл 2008
Сообщения
20
Реакции
6
Credits
26
1. fireBird: There is a strong but inconvenient use. Encryption and more ...
2. NexusDB: Powerful, fast and reliable, but slow for networking. Supported by Unidac.
3. AbsoluteDatabase: Similar to NexusDB, but with a slightly lower overall score.
4. DBISAM: It's easy to write and share, but I'm a bit nervous now.
 

Ruslan82

Premium
Регистрация
5 Фев 2011
Сообщения
49
Реакции
6
Credits
190
и как остальные, кроме файрберд из списка, справятся с 10 млн записей в таблице?
 

stan_uz

Турист
Регистрация
22 Окт 2013
Сообщения
9
Реакции
1
Credits
53
Если в планах использовать MySQL то лучше сразу использовать MyDAC.

Добавлено через 2 минуты
индексы есть везде, в Access тоже, 2 аналогичные таблицы в аксес и потсгре, содержат одинаковые индексы и 100 000 товаров. в аксесе update выполняется 10 сек, в постгре - 10 минут, если удалить индексы - 5 сек. с базами и структурой базы все нормально. Я собираюсь использовать UniDAC, но может есть лучше компоненты для работы с MySQL

А в чем именно причина такого поведения? Не ужели обновление индекса занимает столько времени? Есть структура таблицы? А триггеры используются?
 
Последнее редактирование модератором:

oakrom

Местный
Регистрация
2 Авг 2014
Сообщения
20
Реакции
4
Credits
34
Не давно тоже стояла задача переделать БД коммерческого проекта под MySql, попробовал использовать стандартные компоненты доступа FireDAC. Вроде нормально работает никто пока не жаловался из клиентов. :) Со всеми стандартными компонентами (dbGrid, dbEdit и т.д.) работает весьма слажено.
 

Beast_Power

Местный
Регистрация
29 Апр 2014
Сообщения
62
Реакции
41
Credits
660
I use Zeoslib with MySql Server running on a raspberry Pi and it runs superfast over a lan connection.
 

S_Gur

Premium
Регистрация
26 Фев 2007
Сообщения
76
Реакции
13
Credits
1,309
Долгое время работал через ADO, несколько лет назад перешел на UniDAC. Ни в первом, ни во втором случае никаких проблем при работе с MySQL не наблюдалось. А вообще, многое зависит от распределения бизнес-логики между клиентом и сервером. Если как можно больше бизнес-логики выносить в хранимые процедуры, триггеры и представления, то интерфейс доступа к базе играет минимальное значение.