MariaDB + Galera, Galera не копирует mysql.user

У меня есть mariadb galera с 2 узлами, когда я создаю пользователя в db1, он не реплицирует en db2, но если я создаю db в db1, он реплицируется в db2 !!!! Есть идеи для репликации mysql.user?


person user3353678    schedule 27.05.2014    source источник


Ответы (3)


Galera копирует только DDL (язык определения данных) и innodb -DML (язык обработки данных).

Если вы создаете пользователя с помощью команды "вставить в mysql.user ....", это будет myissam -DML -> НЕ ПОВТОРЯЕТСЯ.

Если вы создаете пользователя с помощью команды «создать пользователя ....», это DDL -> реплицируется.

person Ego    schedule 03.02.2015

По умолчанию MariaDB база данных mysql, а затем mysql.user MyISAM,
для изменения все таблицы на InnoDB это доказывают:

 mysqldump -uroot -p --no-data  -R --triggers mydb > mydb_schema.sql

Затем выгрузите данные:

mysqldump -uroot -p --no-create-info  -R --triggers mydb > mydb_data.sql

Изменить механизм хранения

sed -i.bak 's#MyISAM#innodb#g' mydb_schema.sql

и после импорта mydb_schema

mysql -u root -p < mydb_schema.sql

и, наконец, данные.

person el fuser    schedule 09.11.2016

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

person Tamas Szasz    schedule 15.07.2014