Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

 В директорию /var/lib/proxysql/ необходимо добавить следующий скрипт read_only_switch.sh и назначить на него права выполнения (sudo chmod +x read_only_switch.sh):

Блок кода
#!/bin/bash
MASTER_HOST="<ip_server_master>"
SLAVE_HOST="<ip_server_slave>"
MYSQL_USER="javauser"
MYSQL_PASS="javapassword"

# Проверяем доступность мастера
if mysqladmin -h $MASTER_HOST -u $MYSQL_USER -p$MYSQL_PASS ping; then
    # Мастер доступен, убедимся, что он в read-write
    mysql -h $MASTER_HOST -u $MYSQL_USER -p$MYSQL_PASS -e "SET GLOBAL read_only = 0;"
    # Установить слейв в read-only, если он был временно переключен
    mysql -h $SLAVE_HOST -u $MYSQL_USER -p$MYSQL_PASS -e "SET GLOBAL read_only = 1;"
else
    # Если мастер недоступен, переключаем слейв в read-write
    mysql -h $SLAVE_HOST -u $MYSQL_USER -p$MYSQL_PASS -e "SET GLOBAL read_only = 0;"
fi

...

Блок кода
# На слейве
stop slave;
change master to  master_host='<IP MASTER>',  master_port=5890,  master_user='replication',  master_password='password',  master_use_gtid=slave_pos;
start slave;

# На мастере
stop slave;
change master to  master_host='<IP SLAVE>',  master_port=5890,  master_user='replication',  master_password='password',  master_use_gtid=slave_pos;
start slave;

Смена версии mysql, которую отдает proxysql

Заходим в административную консоль, изменяем переменную:

Без форматирования
update global_variables set variable_value='5.7.19' where variable_name='mysql-server_version';

Загружаем изменения в оперативную конфигурацию proxysql:

Без форматирования
load mysql variables to runtime;

Сохраняем изменения:

Без форматирования
save mysql variables to disk;

Проверяем значение переменной:

Без форматирования
show variables like 'mysql-server_version';


Добавление/удаление/отключение сервера

...