|
Тема
|
MySQL тъпо InnoDB
|
|
Автор |
нeщacтeн (gan.hit.bg) |
Публикувано | 14.04.04 17:35 |
|
Стигам до следния извод:
ако имаш база със 100 таблици от които
99 от тип InnoDB и 1 от тип MyISAM,
тогава транзакциите неработят в цялата база!!
Правилно ли съм открил топлата вода или още никой не се е сблъскал с този проблем?
Много тъпо от страна на MySQL-а....
- шантаво като теб ;)
| |
Тема
|
Re: MySQL тъпо InnoDB
[re: нeщacтeн]
|
|
Автор |
salle (един такъв) |
Публикувано | 15.04.04 00:29 |
|
Какво разбираш под "неработят"?
Редактирано от salle на 15.04.04 00:28.
| |
Тема
|
Re: MySQL тъпо InnoDB
[re: salle]
|
|
Автор |
нeщacтeн (gan.hit.bg) |
Публикувано | 15.04.04 10:53 |
|
Неработят - просто няма транзакции все едно всичките таблици са от тип MyISAM.
Дали аз бъркам нещо? Имаш ли база с двата типа таблици в която използваш транзакции (и си работят)?
- шантаво като теб ;)
| |
Тема
|
Re: MySQL тъпо InnoDB
[re: нeщacтeн]
|
|
Автор |
Noxie (Lifche) |
Публикувано | 15.04.04 12:45 |
|
Ами аз лично смятам, че ако някой е решил да прави подобно нещо с няколко вида таблици, ще трябва да си понесе и последствията. Ползваш InnoDB - имаш транзакции, не го ползваш - нямаш транзакции.
За конкретния твой случай, транзакциите ще засягат само InnoDB таблиците, но не съм 100 % сигурен, не ми е хрумвало да правя така.
| |
Тема
|
Re: MySQL тъпо InnoDB
[re: Noxie]
|
|
Автор |
нeщacтeн (gan.hit.bg) |
Публикувано | 15.04.04 13:47 |
|
Ако сам си правиш базата ок. Правиш ги всичките InnoDB и готово.
Но ако имаш (както е при мен) един скрипт който създава таблица от "стария" тип MyISAM в база с InnoDB таблици и хоп - изненада, транзакциите спират да работят. Върви се сети каква е причината.
Освен това аз държа да имам таблици от тип Heap. Трябва да пробвам дали и при тях се получава този гаден страничен ефект. Ако е така ще се наложи да ги преместя в отделна база.
Молбата ми към всички е, ако имате възможност да създадете таблица от тип Heap (или MyISAM) в база където всички други таблици са от тип InnoDB и да пробвате дали транзакциите продължават да работят.
Благодаря!
- шантаво като теб ;)Редактирано от нeщacтeн на 15.04.04 13:47.
| |
Тема
|
Re: MySQL тъпо InnoDB
[re: нeщacтeн]
|
|
Автор |
Noxie (Lifche) |
Публикувано | 16.04.04 15:04 |
|
Значи пробвах го. InnoDB таблиците са си под транзакции, действат си върху тях. Ако изпълниш rollback, изписва съобщение, че не всички таблици ще бъдат засегнати от това. Данните въведени в InnoDB се rollback-ват, тези от MyISAM не. Съвсем логично струва ми се.
3.23.56-max-log
Slackware Linux
| |
Тема
|
Re: само да добавя ...
[re: Noxie]
|
|
Автор |
salle (един такъв) |
Публикувано | 16.04.04 17:39 |
|
Транзакциите работят:
1. Винаги!
2. Само за таблиците, които ги поддържат
1. AND 2.
Както чудесно ти отговори Noxie ако имаш транзакция, която променя няколко таблици от различен тип и направиш ROLLBACK ще получиш съобщение, че някои от таблиците не го поддържат. (в случай на COMMIT няма никакво значение)
| |
Тема
|
Re: MySQL тъпо InnoDB
[re: Noxie]
|
|
Автор |
нeщacтeн (gan.hit.bg) |
Публикувано | 26.04.04 11:14 |
|
Noxie мерси за пробата и на salle за отговора. Значи при вас няма проблем. Все пак оставам със съмнения, че при голямо натоварване (таблици с над 1-2 милиона реда) транзакциите на mySQL-а не се държат прилично :) И се мъча да си обесня това поведение, затова и повдигнах въпроса. Продължавам да тествам и ще ви информирам, ако открия нещо интересно.
Поздрави!
- шантаво като теб ;)
| |
Тема
|
Re: Ама дай нещо конкретно ...
[re: нeщacтeн]
|
|
Автор |
salle (един такъв) |
Публикувано | 27.04.04 00:00 |
|
Кажи защо така смяташ? Дай някаква интифа за какво иде реч.
Ако е бъг да го оправим. На всичкото отгоре транзакциите по дефиниция или успяват (commit) или не (rollback). Не може да има такова животно като "не съвсем добра" транзакция.
| |
|
Работи си в смесен режим без никакви грижи!
Да не би да забравяш да пуснеш BEGIN и след това COMMIT (или ROLLBACK)?
Имам точно такъв сценарий - една ДБ, повечето таблици са MyISAM, а няколко са BDB. Направил съм го така за да е по-икономично от към ресурси, а и MyISAM май имаха некои предимства (вече не помня точно какво четох из хелповете).
Та значи BDB таблиците ми са логически свързани и инфото което се вкарва в тях трябва или да влезе във всичките едновременно и успешно или изобщо да не влиза. До сега не съм имал никакви проблеми. Вярно - не съм ги подлагал на зверски натоварвания, но вярвам че ще издържат.
| |
|
|
|
|