|
|
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
Добрый день Встал вопрос бэкапа без остановки работы клиентских приложений (сейчас приходится сервер приложения останавливать на время бэкапа, т.к. есть таблицы MyISAM) и т.к. таблиц MyISAM всего восемь решил их сделать InnoDB. Сейчас насколько быстрее MyISAM по сравнению с InnoDB, с учетом что база лежит на быстром массиве SSD. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2015, 07:05:24 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
GallemarСейчас насколько быстрее MyISAM по сравнению с InnoDBЗависит от того, что вы с этими таблицами делаете. С хорошей вероятностью InnoDB будет быстрее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2015, 07:26:50 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
GallemarДобрый день Встал вопрос бэкапа без остановки работы клиентских приложений (сейчас приходится сервер приложения останавливать на время бэкапа, т.к. есть таблицы MyISAM) и т.к. таблиц MyISAM всего восемь решил их сделать InnoDB. Сейчас насколько быстрее MyISAM по сравнению с InnoDB, с учетом что база лежит на быстром массиве SSD. Так вопрос-то в чём ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2015, 11:58:34 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
MasterZiv, сделать бэкап не отключая клиентские приложения, т.к. MyISAM не поддерживает транзакции, то в бэкапе получишь в этих таблицах мусор или клиентское приложение словит ошибку из-за блокировки таблицы. Могу ошибаться,я с MySQL не особо плотно работаю, в Firebird такого мракобесия нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2015, 15:03:20 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
GallemarMasterZiv, сделать бэкап не отключая клиентские приложения, т.к. MyISAM не поддерживает транзакции, то в бэкапе получишь в этих таблицах мусор или клиентское приложение словит ошибку из-за блокировки таблицы. Могу ошибаться,я с MySQL не особо плотно работаю, в Firebird такого мракобесия нет Ещё раз. В чём твой вопрос ? Нужен бэкап -- переходи на InnoDB, в чём проблема ? Не нужен -- не переходи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2015, 16:27:03 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
MasterZiv,насколько InnoDb уступает в скорости MyISAM или сейчас можно об этой разнице забыть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2015, 16:28:29 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
GallemarMasterZiv,насколько InnoDb уступает в скорости MyISAM или сейчас можно об этой разнице забыть? Я не знаю, на сколько уступает. Потому что -- ещё раз -- я с MyISAM не работаю. Но думаю ты легко найдёшь такие данные в сети. ПОЧЕМУ я не работаю с MyISAM ? Потому что MySQL+InnoDB -- это хоть и плохонькая, но СУБД. MySQL+MyISAM -- это хрень какая-то, что угодно, но не СУБД. Поэтому у тебя в общем выбор такой: хочешь работать с базой данных -- используй InnoDB. Не хочешь работать с базой данных -- MyISAM. Теперь немного не лирики, а физики. "насколько InnoDb уступает в скорости MyISAM" -- это значит, что ты помериишь скорости разных операций там и там, и их сравнишь. Операций в СУБД есть в основом две -- чтение и запись. По чтению MyISAM и InnoDB одинаковые, что там читать, что там -- какая разница ? Но InnoDB имеет кэш данных, а MyISAM кэширует только индексы (что уже само по себе безумная идея, ибо две основных технологии для БД -- это кэширование и индексирование). По записи MyISAM и InnoDB разные принципиально, в InnoDB есть ACID-транзакции, что и делает её нормальной СУБД, а значит, есть журнал и физическая запись в него, это теоретически медленнее (и на практике медленнее). Но зато есть кэш данных, который можно на диск вообще не писать, если есть место в памяти, а в MyISAM его вообще нет, и надо писать теоретически на диск. Так что вопрос очень сложный, на практике можно сказать, что Inno на записи где-то на процентов 30 медленнее (лучше поискать данные тестов, они наверняка есть). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2015, 16:54:48 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
А изменение в онлайне рабочей таблицы (записей уже несколько тысяч) типа MyISAM в тип InnoDB как-то скажется на самих данных или структуре? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2015, 21:23:59 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
meolaА изменение в онлайне рабочей таблицы (записей уже несколько тысяч) типа MyISAM в тип InnoDB как-то скажется на самих данных или структуре? конечно, данные будут переписаны из старого места (файл таблицы myisam) в новое место (файл базы данных innodb, один на все таблицы как правило), эта операция требует монопольный доступ к таблице. на какое то время таблица будет заблокирована. несколько тысяч записей - это немного. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2015, 07:27:25 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
MasterZivmeolaА изменение в онлайне рабочей таблицы (записей уже несколько тысяч) типа MyISAM в тип InnoDB как-то скажется на самих данных или структуре? конечно, данные будут переписаны из старого места (файл таблицы myisam) в новое место (файл базы данных innodb, один на все таблицы как правило), эта операция требует монопольный доступ к таблице. на какое то время таблица будет заблокирована. несколько тысяч записей - это немного.Thanks you! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2015, 20:46:24 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
А чем-нибудь опасно отключение света в момент изменения MyISAM в InnoDB? База данных упадет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2015, 20:52:38 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
meolaА чем-нибудь опасно отключение света в момент изменения MyISAM в InnoDB? База данных упадет?Да так же, как и пропадание ляктричества в любой другой момент при записи на диск - как повезёт. А как Вы планируете делать изменение типа движка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2015, 22:17:39 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
vklemeolaА чем-нибудь опасно отключение света в момент изменения MyISAM в InnoDB? База данных упадет?Да так же, как и пропадание ляктричества в любой другой момент при записи на диск - как повезёт. А как Вы планируете делать изменение типа движка?Через alter table, вместо engine=MyISAM укажу engine=InnoDB. Или такой способ не есть гут? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2015, 22:55:24 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
Да нормальный способ. Можно сделать дамп и залить его в новую таблицу, переименовав или удалив старую. В любом случае, бекапы, как страховку от всяческих неожиданностей, никто не отменял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2015, 09:42:19 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
Ещё такой момент - задал вопрос на форум по софту - народ сразу замахал руками, что конвертить MyISAM в Inno нельзя,вроде как код другой,писался именно для таблиц без транзакционности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2015, 10:10:50 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
GallemarЕщё такой момент - задал вопрос на форум по софту - народ сразу замахал руками, что конвертить MyISAM в Inno нельзя,вроде как код другой,писался именно для таблиц без транзакционности.Для этого существует автокоммит, включенный по умолчанию. Но да, если вы что-то некорректно делаете с транзакциями, то это может привести к ошибкам при переходе на InnoDB. Но вероятность этого я вижу ничтожной. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2015, 10:13:00 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
Хм,автокоммит точно включать не хочется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2015, 10:19:27 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
GallemarХм,автокоммит точно включать не хочется.Он уже включен изначально. Да и, собственно, почему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2015, 10:23:57 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
miksoft,подумал ещё раз и решил,что наверно зря боюсь. Я же с MyISAM перехожу на Inno, а не наоборот ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2015, 10:27:14 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
сделайте дамп (или возьмите последний). В блокноте!!! измените MyIsam на InnoDB Разверните локальный сервер. Залейте данные на локальный сервер. Экпериментируйте. записей уже несколько тысяч - это НИЧТОжно мало, чтобы беспокоиться. Пройдитесь по форуму по поводу настроек для InnoDB, примите для себя необходимые. Экпериментируйте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2015, 10:38:55 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
Gallemar Сейчас насколько быстрее MyISAM по сравнению с InnoDB, с учетом что база лежит на быстром массиве SSD. На 1000. Ещё вопросы есть ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2015, 14:09:15 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
MasterZiv,нет. Написал в ТП софта о возможности перехода на Innodb, жду ответа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2015, 14:11:03 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
Поправьте если я не прав, но MySQL с MyISAM легко делает бэкапы так как все таблицы лежат отдельно и я много раз сталкивался что можно только скопировать файловую систему из /var/lib/mysql и ты уже готов к работе на другом сервере. (место для закидывания помидорами). В InnoDB это не прокатывало так как все хранилось до последней версии в одном файле. Так вот вопрос: кто-нибудь уже разворачивал 5.7 с настройками для InnoDB сохранять в разных файлах и какова возможность копирования бэкапа файликами из файловой системы в новой версии MySQL? То есть без остановки приложения как спрашивал Gallemar в первом посте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2015, 19:01:51 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
alexnewsВ InnoDB это не прокатывало так как все хранилось до последней версии в одном файле.innodb_file_per_table? Не, не ... alexnewsместо для закидывания помидорамину ты понял... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2015, 20:04:33 |
|
||
|
Перенос таблиц с MyISAM на InnoDb
|
|||
|---|---|---|---|
|
#18+
[quot alexnews]Поправьте если я не прав, ты неправ. но MySQL с MyISAM легко делает бэкапы так как все таблицы лежат отдельно и я много раз сталкивался что можно только скопировать файловую систему из /var/lib/mysql и ты уже готов к работе на другом сервере. это ты имеешь в виду так называемый "холодный бэкап" , который вообще не бэкап, а на самом деле просто способ переноса данных бызы. остановил бд, файлы не пишутся, перенес файла и конфиг в новое место, если что, немного поправил конфиг - и бд заработает на новом месте, если ее там запустить. это работает вообще со всеми субд, главное, чтобы там были файлы бд доступны. Но бд при этом нужно останавливать. В InnoDB это не прокатывало так как все хранилось до последней версии в одном файле. ну и что, меньше файлов кровь, даже удобнее... Работает это и в inno, ровно таким же макаром. Так вот вопрос: кто-нибудь уже разворачивал 5.7 с настройками для InnoDB сохранять в разных файлах и какова возможность копирования бэкапа файликами из файловой системы в новой версии MySQL? ровно точно такая же. То есть без остановки приложения как спрашивал Gallemar в первом посте. еще раз, останавливать бд при этом НАДО ОБЯЗАТЕЛЬНО. А вот автор говорил о бэкапе через mysqldump. Вот с ним как раз на myIsam нужно деятельность пользователей останавливать, потому что нет транзакций там, а на InnoDb, где есть транзакции, и snapshot isolation, этого делать не нужно, mysqldump начинает транзакцию, сливает базу, и получает консистентный дамп на время начала бэкапа. при этом работающая бд дампу не помешает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2015, 08:37:45 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=38977103&tid=1833094]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
65ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
84ms |
get tp. blocked users: |
2ms |
| others: | 234ms |
| total: | 434ms |

| 0 / 0 |
