Предотвратить записи нерепликации к ведомому устройству MySQL?

Интересная проблема - этот ответ является просто попыткой окружить его, а не непосредственное решение:

Раздел, Как Шрифты Соответствий Windows NT в рамках Главы 8 - Шрифты Рабочей станции MS Windows NT 4.0 Руководства по ресурсам квалифицируют Terminal рассматриваемый шрифт как Растр, зафиксированный, зависимый от дисплея размер, кроме, например, MS Sans Serif шрифт, который квалифицирован как Растр, пропорциональный, 8, 10, 12, 14, 18, 24 (для не разговора о шрифтах TrueType, которые все масштабируемы, конечно).

К сожалению, я не мог появиться какой-то конкретный алгоритм подстановки шрифтов, все еще кавычка от почти древней Печати Windows 95 и Шрифтов: Основы могли бы добавить к изображению, видеть раздел Fonts, Предусмотренный Совместимость:

Пользовательский интерфейс в Windows 95 полагается на шрифты TrueType. Однако три шрифта — Система, Фиксированная, и OEM (или Терминал) — установлена для поддержки дисплеев и устройств вывода для поддержания других приложений, которые могут потребовать этих шрифтов. Каждый из этих шрифтов поддерживает два типа дисплея — 8514/a (1024x768) разрешение и VGA (640x480) разрешение.

Следовательно, я подозреваю, что конкретный размер шрифта, отсутствующий из-за не соответствия характеристикам Ваших клиентов удаленного рабочего стола, отображает возможности, хотя по общему признанию это было бы довольно удивительным предоставлением всех других пиксельных доступных кортежей ширины/высоты. Тем не менее то, что шрифт отсутствует в PowerShell консоль также (согласно комментариям к ответу r0cas) поддержала бы этот являющийся эффектом подстановки шрифтов в масштабе всей системы, а не выпуском какой-то конкретной программы как cmd.exe.

Что я должен сделать для возвращения этого шрифта в списке?

В случае, если подстановка шрифтов Windows действительно вызвала бы это, как подозревается выше, Вы могли бы просто не мочь решить это. В конечном счете изменение Вашего клиентского разрешения дисплея и/или настроек DPI могло иметь значение здесь хотя; было ли это опцией, вообще зависит от Вашей конкретной среды и требований, конечно.

12
задан 31 August 2010 в 00:10
5 ответов

Включите read-only опция в my.cnf. Это может также быть указано как флаг на использовании командной строки --read-only с mysqld.

13
ответ дан 2 December 2019 в 21:34

Только дайте смежные права репликации пользователям на ведомом устройстве. У Вас все еще есть проблема прав пользователя root, но можно удалить удаленный корневой доступ к серверу БД.

0
ответ дан 2 December 2019 в 21:34

Как альтернатива установке read_only=1 (например, когда существуют другие базы данных временной памяти/создания отчетов/разработки по ведомому экземпляру), я иногда разделяю все полномочия кроме ВЫБОРА от всех пользователей к DB, который я копирую.

Таким образом, после выполнения команды GRANT на ведущем устройстве я выполняю команду REVOKE на ведомом устройстве.

4
ответ дан 2 December 2019 в 21:34

Как первое сообщение несколько предполагает, Вы делаете это с полномочиями. Опция только для чтения не работает на суперпользователи как к вашему сведению и также не действительно осуществимое решение для ведомого устройства, где Вы хотите предотвратить записи. Необходимо предотвратить записи с пользовательскими/базами данных/таблицами полномочиями. Для одного пользователь репликации все еще должен смочь записать в ведомое устройство для хранения его в синхронизации с ведущим устройством. Лучший способ управлять записями является Вами, должен отменить опции, которые позволяют записи (т.е. - вставляет, создает, и т.д.) для рассматриваемого пользователя, который должен делать чтения только на ведомом устройстве.

1
ответ дан 2 December 2019 в 21:34

Начиная с MySQL 5.7.8, теперь есть super_read_only опция, которая не позволяет даже пользователям SUPER выполнять клиентские обновления. Это не нарушает процесс репликации. Как и другие настройки, она может быть установлена:

  • в формате командной строки (--super_read_only=ON),
  • в качестве переменной в my.cnf (super_read_only=1), или
  • из клиентской строки (SET GLOBAL super_read_only = 1;).

Обратите внимание на это:

  • Включение super_read_only имплицитно включает read_only
  • Disabling read_only имплицитно отключает super_read_only

Некоторые предостережения:

  • Ни read_only, ни super_read_only не предотвратит операции с временными таблицами.
  • Они не препятствуют операциям с метаданными, таким как АНАЛИЗАЦИОННАЯ ТАБЛИЦА и ОПТИМИЗАЦИОННАЯ ТАБЛИЦА.
  • Сообщалось об ошибках для определенных запросов с включенной опцией super_read_only.

Ссылка: https://www.percona.com/blog/2016/09/27/using-the-super_read_only-system-variable/

2
ответ дан 2 December 2019 в 21:34

Теги

Похожие вопросы