MySQL 8.0.18 ЬшоВВ кластера от ведущего (MGR) полная конфигурация установки

Подсказка: MySQL InnoDB кластер группа репликация, лежащая в основе зависимого режима, по меньшей мере, три машины

DB-host1, дб-host2, дб-host3 затем настроить каждую машину хостов карта, соответствующая следующему: 1. Приготовить три CentOS Linux 7 (ядро), изменить имя каждого хоста

кот << EOF >> / и т.д. / хосты
 192.168.50.181 db- host1
 192.168.50.182 db- host2
 192.168.50.183 db- host3 
EOF

2. Убедитесь в том, что три сервера, чтобы получить доступ друг к другу должным образом, пожалуйста, отключите брандмауэр на период действия договора страхования, firewalld часто используемые команды, такие как:

# Start 
systemctl Start firewalld 

# закрыть 
systemctl СТОП firewalld 

# посмотреть статус 
systemctl Статус firewalld 

# загрузки отключена 
systemctl отключить firewalld 

# Power On 
systemctl включить firewalld 

# просматривать все открытые порты 
 брандмауэра CMD --zone = общественные --list- порты

3. Убедитесь, что используется SSH совместно посещения, здесь с помощью корневой учетной записи, такие как: осуществление дб-host1, и поэтому другие:

SSH-кейген - т RSA 
SSH -копию-идентификатор -i ~ / .ssh / id_rsa.pub 192.168.50.182 

SSH -keygen - т RSA 
SSH -копию-идентификатор -i ~ / .ssh / id_rsa.pub 192.168.50.183

4. Подготовка установки MySQL-сообщества-сервер, MySQL скорлупу, MySQL-маршрутизатор, установленный в машинах 3, обратите внимание на версию:

Wget https://dev.mysql.com/get/mysql80-community-release-el7-3 .noarch.rpm 
мин -ivh mysql80-сообщество релиз-el7-3 .noarch.rpm 
ня установить MySQL -community-сервер
Wget https://dev.mysql.com/get/Downloads/MySQL-Shell/mysql-shell-8.0.18-1 .el7.x86_64.rpm 
оборотов в минуту -ivh MySQL-оболочка-8.0.18-1 .el7.x86_64 .rpm 
ня установить MySQL -оболочку
Wget https://dev.mysql.com/get/Downloads/MySQL-Router/mysql-router-community-8.0.18-1 .el7.x86_64.rpm 
оборотов в минуту -ivh MySQL-маршрутизатор-сообщества 8.0.17-1 .el7.x86_64.rpm 
ням установить MySQL -router

5. После установки MysqlServer, последовательно каждой инициализации MySQL, следующие этапы: инициализации #:

туздО - выполнения инициализации; 


# назначать права доступа: 
Чаун MySQL: MySQL / вар / Lib / MySQL -R
# сервис MySQL начала:
systemctl Start mysqld.service;
# Установить загрузку с Каем MySQL
MySQL systemctl включить туздО;
# команду для просмотра пароля для базы данных :
CAT /var/log/mysqld.log | Grep пароль
# , чтобы ввести команду MySQL строку:
MySQL-uroot - р (пароль , введенный в базу данных выше для просмотра MySQL из командной строки)
# команду , чтобы изменить пароль:
альтер ПОЛЬЗОВАТЕЛЬ «корень» @ «Localhost «отождествить с mysql_native_password от» пароль «; # создать удаленный доступ:
в поле создать пользователя» корень «@»% «отождествить с mysql_native_password на» пароль «;
GRANT все привилегии . * * в TO» корень «@»% «Опция WITH GRANT OPTION ; флеш привилегии;

6. С зависимой группы копировать, модифицировать /etc/my.cnf в host1

server_id = 4000000161 
рыхлого -group_replication_group_name = " a38e32fd-5fb6-11e8-ad7a-00259015d941 " 
рыхлый -group_replication_local_address = " 192.168.50.181:3306 " 
свободное -group_replication_group_seeds = " 192.168.50.181:3306,192.168.50.182:3306,192.168.50.183: 3306 " 
свободный -group_replication_single_primary_mode = ИСТИНА

2 затем копируется на другую машину /etc/my.cnf

Rsync -e " SSH -p22 " -avpgolr /etc/my.cnf [email protected]: / и т.д. / 
Rsync -e " SSH -p22 " -avpgolr /etc/my.cnf [email protected]: / и т.д. /

Убедитесь в том, что их server_id и адрес

host1 server_id = 4000000161   

отрывными group_replication_local_address = "192.168.50.181:3306"

host2     server_id = 4000000162

отрывными group_replication_local_address = "192.168.50.182:3306"

host3     server_id = 4000000163

отрывными group_replication_local_address = "192.168.50.183:3306"

7.3 Тайвань MySQL сервер группы запуска копирования

начало group_replication

 

 

8. Проверьте примеры конфигурации с помощью mysqlsh

dba.checkInstanceConfiguration ( 'корень @ дб-host1: 3306 ') 
dba.checkInstanceConfiguration (' корень @ дб-host2: 3306 ') 
dba.checkInstanceConfiguration (' корень @ дб-host3: 3306')

 

 

8. Примеры конфигурации

dba.configureInstance ( 'корень @ дб-host1: 3306', { 'перезагрузка': истинный }) 
dba.configureInstance ( 'корень @ дб-host2: 3306', { 'перезагрузка': истинный }) 
dba.configureInstance ( 'корень @ дб-host3: 3306' , { 'перезагрузка': истинный })

 

 

9. Добавить экземпляр создается

var cluster = dba.createCluster('mycluster');
var cluster=dba.getCluster('mycluster')
cluster.addInstance('root@db-host2:3306');
cluster.addInstance('root@db-host3:3306');

10. 登录主服务器 ,查看,配置成功

mysql> select * from performance_schema.replication_group_members;

 

 

注意:由于8.0 中的一些变化和5.X配置有所配置不同,按照以前的配置容易出错,要善于对应分析日志进行排错

推荐参考资料:

https://blog.csdn.net/wzy0623/article/details/100779450

https://www.jianshu.com/p/6e2918845ec8

https://lefred.be/content/mysql-8-0-innodb-cluster-the-quick-hands-on-manual/

https://cloud.tencent.com/developer/article/1445710

 

рекомендация

отwww.cnblogs.com/mschen/p/11869964.html