Я читал о MySQL. На мой взгляд, я вижу два типа журнала как очень похожие. MySQL сохраняет как и когда данные изменяются в журнале. Информация используется для восстановления MySQL. Я путаю функцию двух типов журналов.
источник
Я читал о MySQL. На мой взгляд, я вижу два типа журнала как очень похожие. MySQL сохраняет как и когда данные изменяются в журнале. Информация используется для восстановления MySQL. Я путаю функцию двух типов журналов.
Журнал REDO - это терминология Oracle, журнал транзакций - это терминология InnoDB. Теперь, когда все являются инженерами Oracle, люди используют оба для обозначения одного и того же в MySQL .
По умолчанию журнал транзакций - его можно изменить - вызывают два файла, расположенных в $ DATADIR, ib_logfile0
и ib_logfile1
. Он выполняет те же функции, что и журнал REDO в других базах данных: безопасное хранение записей и восстановление в случае сбоя, хотя в реализации есть некоторые детали, отличающиеся по функциональности от других RDMS. Это основной компонент для InnoDB, чтобы быть транзакционным движком.
Не путайте журнал транзакций с двоичными журналами в MySQL . Бинлог, по умолчанию, находится в $ DATADIR, имеет *hostname*-bin.index
и несколько *hostname*-bin.00001
, и т. Д. Он особенно запутывает людей, приходящих из других баз данных, потому что он используется для других вещей, для которых другие базы данных используют журнал REDO: репликация и момент времени восстановление. Основное отличие состоит в том, что журнал транзакций предназначен только для InnoDB, двоичный журнал (в основном) не зависит от транзакций, как и для всех механизмов хранения, транзакционных или нет. MyISAM запишет (если включено) в двоичный журнал. InnoDB запишет в журнал транзакций и двоичный журнал.
Больше информации в руководстве: журнал REDO , двоичный журнал .
В SQL Server файлы TLog хранят информацию как об отмене, так и восстановлении. Но в MYSQL и Oracle TLog / Redo Log хранит только информацию о восстановлении.
Бинарная регистрация в MySQL - это способ восстановления на определенный момент времени. Включение двоичного ведения журнала эквивалентно полной модели восстановления в SQL Server.