Ознакомьтесь в этом разделе с командами, которые позволят вам управлять взаимодействием главного и подчиненного серверов. Все эти команды выполняются в интерфейсе MySQL. В процессе изучения этих операторов вы узнаете больше подробностей о репликации.
Команда change master
Команда CHANGE MASTER указывает подчиненному серверу проверить обновление на главном сервере в другом двоичном журнале и/или записывать в другой журнал передачи на подчиненном сервере. Этот оператор также используется для изменения параметров соединения и двоичного журнала. Он представлен в следующем листинге.
Листинг 17.1.
CHANGE MASTER TO MASTER_HOST = ' имя-главного', MASTER_USER = 'имя-подчиненного', MASTER_PASSWORD = 'пароль-подчиненного', MASTER_PORT = 'номер-порта',
MASTER_LOG_FILE = 'имя-файла-двоичного-журанала', MASTER_LOG_POS = 'точка-двоичного-журанала', MASTER_CONNECT_RETRY = 'значение';
RELAY_LOG_FILE = 'имя-файла-журанала-подключений',
RELAY_LOG_POS = ' значение';
Допустим, ваша компания купила под базу данных совершенно новый, сверхбольшой и сверхбыстрый сервер и вы хотите сделать его главным сервером. Рассмотрим пример с введенными параметрами.
Листинг 17.2.
mysql> CHANGE MASTER TO MASTER_HOST = 'MrBig', MASTER_USER = 'Slave1', MASTER_PASSWORD = 'Slav3Pass', MASTER_PORT = '33 06', MASTER_LOG_FILE = 'master-bin.0 01',
MASTER_LOG_POS = '7',
MASTER_CONNECT_RETRY = '15'; RELAY_LOG_FILE = 'slave-relay-bin.010', RELAY_LOG_POS = '6084';
Таблица 17.1 содержит сведения по всем этим параметрам. Обратите внимание, что изменятся только указанные вами параметры. Без вашего указания останется старое значение. Исключением из этого правила являются имя узла и номер порта. Если вы измените любой из них, MySQL "решит", что вы изменили главный сервер, и автоматически удалит значения имени двоичного журнала обновлений и положения в нем. Если вы не зададите два новых значения после изменения имени узла или номера порта, будут заданы значения MASTER_LOG_FILE = и MASTER_LOG_POS = '4'.
Если вы не укажете значения RELAY_LOG_FILE и RELAY_LOG_POS, оператор CHANGE MASTER удалит существующие журналы передачи и создаст новые. Он также обновляет файлы master.info и relay-log.info.
Обратите внимание, что если вы попробуете выполнить оператор CHANGE MASTER в среде с высокой нагрузкой, он может потерять некоторые запросы. Это может случиться, если поток SQL отстает от потока ввода/вывода, так как при удалении командой CHANGE MASTER журналов передачи может возникнуть разрыв между тем, что было записано, и тем, что обрабатывается в данный момент.
Этого можно избежать двумя способами. Первый способ - остановить потоки подчиненного сервера, пока он не прочитал все существующие журналы передачи. Для этого используйте команду STOP SLAVE IO_THREAD, и контролируйте чтение командами SHOW SLAVE STATUS и SELECT MASTER_OS_WAIT() . Второй способ - использовать
операторы STOP SLAVE и SHOW SLAVE STATUS, а в столбцах Relay_master_ log_file и Exec_master_log_pos следите за положением потока в двоичном журнале главного сервера. Когда получите эти значения, укажите их в параметрах Master_ log_file и Master_log_pos. Для подчиненного сервера это означает старт репликации в том месте, где завершил чтение поток подчиненного сервера, и, следовательно, абсолютно исключается потеря данных.
Команда purge master
Оператор PURGE MASTER удаляет двоичные журналы на главном сервере до указанной даты или указанного имени журнала. Это можно использовать в ситуации, когда вы хотите определить, какие журналы все еще обрабатываются. Синтаксис таков: PURGE MASTER LOGS TO двоичный-журнал
или
PURGE MASTER LOGS BEFORE дата
На заметку
Этот оператор требует привилегии SUPER.
Для примера предположим, что вы хотите удалить все главные двоичные журналы обновления до файла bin_log.999. Выполните следующее.
Листинг 17.3.
mysql> PURGE MASTER LOGS TO bin_log.999;
ТОП-10 популярных
Для работы с вещественными числами в MySQL предусмотрено три типа данных - это типы FLOAT, DOUBLE, DECIMAL. Числовой тип FLOAT...
БОЛЬШЕ БОЛЬШИХ LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Больше больших LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
НОУТБУК с блестящим экраном
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...
Иди и пиши. TravelMate C100
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...
Магнито-оптический дисковод DynaMO
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...
Компьютер для гурманов.«Эксимер ДМ»
Российская компания «Эксимер ДМ», известная как производитель настольных компьютеров, рабочих станций, серверов и ноутбуков, выступила техническим спонсором проведения торжеств, посвященных...
Российская компания «Эксимер ДМ», известная как производитель настольных компьютеров, рабочих станций, серверов и ноутбуков, выступила техническим спонсором проведения торжеств, посвященных...
Для длинных строк, т.е. строк длиннее 255 символов, в MySQL предусмотрены типы BLOB (Binary Large Object, большой двоичный объект) и...
В дополнение к календарным типам, предназначенным для хранения даты и времени отдельно, MySQL также поддерживает гибридные типы данных DATETIME и...
Вообще, к изменению настроек сервера прибегают очень редко. В MySQL программа заранее настроена так, чтобы соответствовать самым распространенным и основным...
Все о MySQL. Управление процессом репликации
28-12-2009
<< Предыдущая статья | Следующая статья >> |
Все о MySQL. Потоки репликации | Все о MySQL. Команда start slave |