SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 10.03.2008 15:02:13

Jozefina
Участник
Зарегистрирован: 10.03.2008
Сообщений: 3

Замена MyISAM на InnoDB?? как? последствия ??

Подскажите мне, пожалуйста!!!
мне необходимо поменять множество таблиц с MyISAM на тип InnoDB
1. можно ли это делать только при помощи команды

Код:

ALTER TABLE ... ENGINE=INNODB

2.какие последствия будут ввиду этих изменений??? придеться ли менять логику php-обработчика или , может, только в некоторых местах заменить часть кода??? чем это грозит???

Неактивен

 

#2 10.03.2008 16:39:14

Jozefina
Участник
Зарегистрирован: 10.03.2008
Сообщений: 3

Re: Замена MyISAM на InnoDB?? как? последствия ??

мне ответили:
"1. Да достаточно воспользоваться оператором ALTER TABLE
2. Нет никаких изменений быть не должно, кроме некоторого замедления скорости выполнения приложений. Хотя если вы используете полнотекстовый поиск - он перестанет работать, так как ориентирован на таблицы MyISAM."

Неактивен

 

#3 10.03.2008 17:47:42

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Замена MyISAM на InnoDB?? как? последствия ??

Jozefina написал:

мне ответили:
"2. Нет никаких изменений быть не должно, кроме некоторого замедления скорости выполнения приложений. "

Всё зависит от запросов, которые использует Ваше приложенияе В одних случаях быстрее работает MyISAM (в основном идет выборка SELECT), в других InnoDB (значительная часть запросов INSERT, UPDATE, DELETE).

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

Для каких целей Вам понадобилось изменение типа таблиц?

Неактивен

 

#4 10.03.2008 18:38:04

Jozefina
Участник
Зарегистрирован: 10.03.2008
Сообщений: 3

Re: Замена MyISAM на InnoDB?? как? последствия ??

для хранения многочисленных логов юзеров более 3000
запросы INSERT, UPDATE

Отредактированно Jozefina (10.03.2008 18:56:39)

Неактивен

 

#5 10.03.2008 19:48:57

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Замена MyISAM на InnoDB?? как? последствия ??

В случае одновременных запросов к разным частям таблицы, Вы можете получить выйгрыш от InnoDB из-за того, что в InnoDB блокировка на уровне строк (а не на уровне таблиц, как в MyISAM). Практически это означает, что если процесс хочет обновить строку в таблице, то он блокирует только эту строку, позволяя другим обновлять другие строки параллельно. В MyISAM все выстраиваются в очередь на блокировку таблицы.

Неактивен

 

#6 22.08.2008 01:08:34

Denozaur
Участник
Зарегистрирован: 22.08.2008
Сообщений: 1

Re: Замена MyISAM на InnoDB?? как? последствия ??

Подскажите пожалуйста.
Как поменять таблицу с InnoDB на тип  MyISAM, можно ли это делать с помошью Navicat MySQL  и как?

Неактивен

 

#7 22.08.2008 01:12:58

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Замена MyISAM на InnoDB?? как? последствия ??

Можно с помощью SQL-запроса:
ALTER TABLE имя_таблицы ENGINE=Innodb;

Может ли Navicat не знаю

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson