wiki:technical:percona
Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
wiki:technical:percona [2022/08/24 15:10] – [Пример конфига /etc/mysql/percona-xtradb-cluster.conf.d/wsrep.cnf] Diman | wiki:technical:percona [2023/05/23 23:32] (текущий) – [Генерация сертификатов] Diman | ||
---|---|---|---|
Строка 12: | Строка 12: | ||
=== Устанавливаем кластер === | === Устанавливаем кластер === | ||
- | percona-release disable all | + | <code bash> |
- | percona-release enable pxc-57 testing | + | percona-release disable all |
- | percona-release enable pxb-24 testing | + | # percona cluster 57 |
- | apt-get update | + | percona-release enable pxc-57 testing |
- | apt install percona-xtradb-cluster-57 | + | percona-release enable pxb-24 testing |
+ | apt-get update | ||
+ | apt install percona-xtradb-cluster-57 | ||
+ | # percona cluster 80 | ||
+ | percona-release setup pxc80 | ||
+ | apt install percona-xtradb-cluster | ||
+ | </ | ||
=== При необходимости устанавливаем утилиты percona-toolkit === | === При необходимости устанавливаем утилиты percona-toolkit === | ||
- | percona-release enable tools release | + | <code bash> |
- | apt update | + | percona-release enable tools release |
- | apt install percona-toolkit | + | apt update |
+ | apt install percona-toolkit | ||
+ | </ | ||
+ | |||
+ | === После установки останавливаем mysql === | ||
+ | <code bash> | ||
+ | # После установки останавливаем mysql | ||
+ | service mysql stop | ||
+ | </ | ||
+ | |||
+ | |||
==== Конфигурируем кластер ==== | ==== Конфигурируем кластер ==== | ||
Строка 31: | Строка 48: | ||
====Создаем конфиг первой ноды==== | ====Создаем конфиг первой ноды==== | ||
- | mkdir / | + | <code bash> |
- | nano / | + | mkdir /etc/mysql/ |
+ | nano /etc/mysql/ | ||
+ | </ | ||
В файл добавляем следующее содержимое: | В файл добавляем следующее содержимое: | ||
- | [mysqld] | + | <code bash> |
- | wsrep_provider=/ | + | [mysqld] |
- | wsrep_cluster_name=pxc-cluster | + | wsrep_provider=/ |
- | wsrep_cluster_address=gcomm:// | + | wsrep_cluster_name=pxc-cluster |
- | wsrep_node_name=db4 | + | wsrep_cluster_address=gcomm:// |
- | wsrep_node_address=192.168.0.220 | + | wsrep_node_name=db4 |
- | wsrep_sst_method=xtrabackup-v2 | + | wsrep_node_address=192.168.0.220 |
- | wsrep_sst_auth=sstuser: | + | wsrep_sst_method=xtrabackup-v2 |
- | pxc_strict_mode=ENFORCING | + | wsrep_sst_auth=sstuser: |
- | binlog_format=ROW | + | pxc_strict_mode=ENFORCING |
- | default_storage_engine=InnoDB | + | binlog_format=ROW |
- | innodb_autoinc_lock_mode=2 | + | default_storage_engine=InnoDB |
- | Подключаем конфиг в MySQL | + | innodb_autoinc_lock_mode=2 |
- | echo "!includedir / | + | </ |
- | Конфигурируем пользователя для синка данных между БД | + | |
- | mysql -u root -p | + | <code bash> |
+ | # Подключаем конфиг в MySQL | ||
+ | echo '!includedir / | ||
+ | #Конфигурируем пользователя для синка данных между БД | ||
+ | mysql -u root -p | ||
+ | |||
+ | </ | ||
====Добавляем пользователя MySQL==== | ====Добавляем пользователя MySQL==== | ||
- | CREATE USER ' | ||
- | GRANT RELOAD, LOCK TABLES, PROCESS, REPLICATION CLIENT ON *.* TO ' | ||
- | FLUSH PRIVILEGES; | ||
Останавливаем MySQL | Останавливаем MySQL | ||
- | service mysql stop | + | service mysql stop |
Bootstrat-им ноду | Bootstrat-им ноду | ||
+ | <code bash> | ||
+ | # В этот момент текущая нода определяет переменную wsrep_cluster_conf_id в 1 | ||
+ | systemctl start mysql@bootstrap.service | ||
+ | # Подключаемся в mysql и добавляем пользователя с паролем | ||
+ | mysql -p | ||
+ | </ | ||
+ | |||
+ | <code mysql> | ||
+ | CREATE USER ' | ||
+ | GRANT RELOAD, LOCK TABLES, PROCESS, REPLICATION CLIENT ON *.* TO ' | ||
+ | FLUSH PRIVILEGES; | ||
+ | </ | ||
+ | ==== Генерация сертификатов ==== | ||
+ | |||
+ | <code bash> | ||
+ | # Генерация сертификатов | ||
+ | mkdir / | ||
+ | |||
+ | # Generate CA key and certificate | ||
+ | # Generate the CA key file: | ||
+ | openssl genrsa 2048 > ca-key.pem | ||
+ | # Generate the CA certificate file: | ||
+ | openssl req -new -x509 -nodes -days 9999 -key ca-key.pem -out ca.pem | ||
+ | |||
+ | # Generate server key and certificate | ||
+ | # Generate the server key file: | ||
+ | openssl req -newkey rsa:2048 -days 9999 -nodes -keyout server-key.pem -out server-req.pem | ||
+ | # Remove the passphrase: | ||
+ | openssl rsa -in server-key.pem -out server-key.pem | ||
+ | # Generate the server certificate file: | ||
+ | openssl x509 -req -in server-req.pem -days 9999 -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem | ||
+ | |||
+ | # Generate client key and certificate | ||
+ | # Generate the client key file: | ||
+ | openssl req -newkey rsa:2048 -days 9999 -nodes -keyout client-key.pem -out client-req.pem | ||
+ | # Remove the passphrase: | ||
+ | openssl rsa -in client-key.pem -out client-key.pem | ||
+ | # Generate the client certificate file: | ||
+ | openssl x509 -req -in client-req.pem -days 9999 -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem | ||
+ | |||
+ | </ | ||
+ | |||
+ | |||
+ | |||
root@db4 ~ # / | root@db4 ~ # / | ||
Bootstrapping Percona XtraDB Cluster database server: mysqld .. | Bootstrapping Percona XtraDB Cluster database server: mysqld .. | ||
Строка 155: | Строка 222: | ||
wsrep_log_conflicts | wsrep_log_conflicts | ||
innodb_autoinc_lock_mode=2 | innodb_autoinc_lock_mode=2 | ||
- | wsrep_node_address=149.202.225.167 | + | wsrep_node_address=149.202.XXX.XXX |
wsrep_cluster_name=pxc-cluster | wsrep_cluster_name=pxc-cluster | ||
wsrep_node_name=pxc-cluster-node-1 | wsrep_node_name=pxc-cluster-node-1 |
wiki/technical/percona.1661343008.txt.gz · Последнее изменение: 2022/08/24 15:10 — Diman