Установка AUTOCOMMIT = 0/1 на глобальном уровне, похоже, не имеет никакого эффекта в MariaDB 10.3 - PullRequest
0 голосов
/ 07 декабря 2018

Я парень из Oracle, в настоящее время изучаю MariaDB и MySQL.Я использую MariaDB 10.3.

К моему удивлению, изменения, которые я делаю в сеансе 1 без первого запуска транзакции, сразу же видны для сеанса 2, даже если я установил AUTOCOMMIT = 0 на глобальном уровне.И наоборот, изменения, внесенные в транзакцию в сеансе 1, не видны для сеанса 2, пока я не зафиксирую транзакцию явно, даже когда я установил AUTOCOMMIT = 1 на глобальном уровне.Итак, в настоящее время у меня сложилось впечатление, что настройка AUTOCOMMIT на глобальном уровне не дает никакого эффекта в MariaDB версии 10.3.

Примечание: настройка AUTOCOMMIT на уровне сеанса, похоже, работает правильно.Например, когда я говорю SET SESSION AUTOCOMMIT = 0, MariaDB неявно начинает новую транзакцию, когда предыдущая транзакция заканчивается;следовательно, изменения, которые я делаю в сеансе 1, становятся видимыми для сеанса 2 только после явной фиксации, и мне не нужно беспокоиться о явном запуске новых транзакций - именно так, как это делается в Oracle.

Я бы хотел, чтобы всемои сеансы должны иметь такое поведение по умолчанию, без необходимости явно устанавливать AUTOCOMMIT = 0 для каждого из них.Как я могу это сделать?

...