Updates
This commit is contained in:
@@ -0,0 +1 @@
|
||||
mariadb -u root -p$MARIADB_ROOT_PASSWORD
|
||||
@@ -0,0 +1,2 @@
|
||||
SHOW GLOBAL STATUS LIKE 'wsrep_%';
|
||||
SHOW GLOBAL STATUS LIKE 'wsrep_cluster_%';
|
||||
@@ -0,0 +1,11 @@
|
||||
FROM mariadb:11-jammy
|
||||
|
||||
RUN apt update
|
||||
RUN apt install -y curl wget zip unzip xz-utils galera-4
|
||||
|
||||
COPY entrypoint.sh /usr/local/bin/entrypoint.sh
|
||||
RUN chmod +x /usr/local/bin/entrypoint.sh
|
||||
|
||||
COPY .bash_history /root/.bash_history
|
||||
|
||||
CMD [ "mariadbd","--wsrep-new-cluster" ]
|
||||
@@ -0,0 +1,16 @@
|
||||
[mysqld]
|
||||
|
||||
# Mandatory settings
|
||||
wsrep_on = ON
|
||||
wsrep_cluster_name = "MariaDB Galera Cluster"
|
||||
wsrep_cluster_address = gcomm://mariadb-node1,mariadb-node2,mariadb-node3
|
||||
binlog_format = row
|
||||
default_storage_engine = InnoDB
|
||||
innodb_autoinc_lock_mode = 2
|
||||
|
||||
# Allow server to accept connections on all interfaces.
|
||||
bind-address = 0.0.0.0
|
||||
|
||||
# Optional settings
|
||||
#wsrep_slave_threads = 1
|
||||
#innodb_flush_log_at_trx_commit = 0
|
||||
@@ -0,0 +1,8 @@
|
||||
[mariadb]
|
||||
|
||||
wsrep_on = ON
|
||||
wsrep_cluster_address = gcomm://
|
||||
wsrep_provider = /usr/lib/libgalera_smm.so
|
||||
|
||||
binlog_format = ROW
|
||||
default_storage_engine = InnoDB
|
||||
@@ -0,0 +1,8 @@
|
||||
[mariadb]
|
||||
|
||||
wsrep_on = ON
|
||||
wsrep_cluster_address = gcomm://mariadb-node1
|
||||
wsrep_provider = /usr/lib/libgalera_smm.so
|
||||
|
||||
binlog_format = ROW
|
||||
default_storage_engine = InnoDB
|
||||
@@ -0,0 +1,8 @@
|
||||
[mariadb]
|
||||
|
||||
wsrep_on = ON
|
||||
wsrep_cluster_address = gcomm://mariadb-node1
|
||||
wsrep_provider = /usr/lib/libgalera_smm.so
|
||||
|
||||
binlog_format = ROW
|
||||
default_storage_engine = InnoDB
|
||||
@@ -0,0 +1,12 @@
|
||||
[mysqld]
|
||||
max_connections = 200
|
||||
|
||||
skip-networking=0
|
||||
skip-bind-address
|
||||
|
||||
ssl-ca = /ssl/ca-cert.pem
|
||||
ssl-cert = /ssl/server-cert.pem
|
||||
ssl-key = /ssl/server-key.pem
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
[mariadb]
|
||||
|
||||
wsrep_on = ON
|
||||
wsrep_cluster_address = gcomm://mariadb-node1,mariadb-node2,mariadb-node3
|
||||
wsrep_provider = /usr/lib/libgalera_smm.so
|
||||
wsrep_provider_options ="socket.ssl_key=/ssl/server-key.pem;socket.ssl_cert=/ssl/server-cert.pem;socket.ssl_ca=/ssl/ca-cert.pem"
|
||||
|
||||
binlog_format = ROW
|
||||
default_storage_engine = InnoDB
|
||||
@@ -0,0 +1 @@
|
||||
11.6.2-MariaDB
|
||||
@@ -0,0 +1 @@
|
||||
11.3.2-MariaDB
|
||||
@@ -0,0 +1 @@
|
||||
11.3.2-MariaDB
|
||||
@@ -0,0 +1,54 @@
|
||||
name: galera
|
||||
|
||||
services:
|
||||
mariadb-node1:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
networks:
|
||||
galera:
|
||||
container_name: mariadb-node1
|
||||
environment:
|
||||
- MARIADB_ROOT_PASSWORD=password
|
||||
volumes:
|
||||
- ./conf.d:/etc/mysql/conf.d
|
||||
- ./ssl:/ssl
|
||||
- ./db:/var/lib/mysql
|
||||
|
||||
mariadb-node2:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
container_name: mariadb-node2
|
||||
networks:
|
||||
galera:
|
||||
environment:
|
||||
- MARIADB_ROOT_PASSWORD=password
|
||||
- MARIADB_SLAVE=1
|
||||
volumes:
|
||||
- ./conf.d:/etc/mysql/conf.d
|
||||
- ./ssl:/ssl
|
||||
- ./db2:/var/lib/mysql
|
||||
command: ["mariadbd"]
|
||||
entrypoint: null
|
||||
|
||||
mariadb-node3:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
container_name: mariadb-node3
|
||||
networks:
|
||||
galera:
|
||||
environment:
|
||||
- MARIADB_ROOT_PASSWORD=password
|
||||
- MARIADB_SLAVE=1
|
||||
volumes:
|
||||
- ./conf.d:/etc/mysql/conf.d
|
||||
- ./ssl:/ssl
|
||||
- ./db3:/var/lib/mysql
|
||||
command: ["mariadbd"]
|
||||
entrypoint: null
|
||||
|
||||
networks:
|
||||
galera:
|
||||
driver: bridge
|
||||
@@ -0,0 +1,3 @@
|
||||
#!/bin/bash
|
||||
|
||||
mariadbd --wsrep-new-cluster
|
||||
@@ -0,0 +1,97 @@
|
||||
version: '2'
|
||||
services:
|
||||
node1-mariadb:
|
||||
image: hauptmedia/mariadb:10.1
|
||||
hostname: node1-mariadb
|
||||
container_name: node1-mariadb
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: 'iamgroot'
|
||||
REPLICATION_PASSWORD: 'iamgroot'
|
||||
GALERA: 'On'
|
||||
NODE_NAME: node1-mariadb
|
||||
CLUSTER_NAME: maria_cluster
|
||||
CLUSTER_ADDRESS: gcomm://
|
||||
TZ : 'Asia/Seoul'
|
||||
ports:
|
||||
- 13306:3306/tcp
|
||||
volumes:
|
||||
- ./galeranode1/mariadb:/var/lib/mysql
|
||||
- ./sqldir:/docker-entrypoint-initdb.d
|
||||
command:
|
||||
--wait_timeout=28800
|
||||
--character-set-server=utf8
|
||||
--collation-server=utf8_general_ci
|
||||
--max-allowed-packet=512M
|
||||
--net-buffer-length=5048576
|
||||
--wsrep-new-cluster
|
||||
stdin_open: true
|
||||
tty: true
|
||||
privileged: true
|
||||
ulimits:
|
||||
nofile:
|
||||
soft: 600000
|
||||
hard: 640000
|
||||
|
||||
|
||||
node2-mariadb:
|
||||
image: hauptmedia/mariadb:10.1
|
||||
hostname: node2-mariadb
|
||||
container_name: node2-mariadb
|
||||
links:
|
||||
- node1-mariadb
|
||||
environment:
|
||||
REPLICATION_PASSWORD: 'iamgroot'
|
||||
GALERA: 'On'
|
||||
NODE_NAME: node2-mariadb
|
||||
CLUSTER_NAME: maria_cluster
|
||||
CLUSTER_ADDRESS: gcomm://node1-mariadb
|
||||
TZ : 'Asia/Seoul'
|
||||
ports:
|
||||
- 23306:3306/tcp
|
||||
volumes:
|
||||
- ./galeranode2/mariadb:/var/lib/mysql
|
||||
command:
|
||||
--wait_timeout=28800
|
||||
--character-set-server=utf8
|
||||
--collation-server=utf8_general_ci
|
||||
--max-allowed-packet=512M
|
||||
--net-buffer-length=5048576
|
||||
stdin_open: true
|
||||
tty: true
|
||||
privileged: true
|
||||
depends_on:
|
||||
- node1-mariadb
|
||||
ulimits:
|
||||
nofile:
|
||||
soft: 600000
|
||||
hard: 640000
|
||||
|
||||
node3-mariadb:
|
||||
image: hauptmedia/mariadb:10.1
|
||||
hostname: node3-mariadb
|
||||
container_name: node3-mariadb
|
||||
links:
|
||||
- node1-mariadb
|
||||
environment:
|
||||
REPLICATION_PASSWORD: 'iamgroot'
|
||||
GALERA: 'On'
|
||||
NODE_NAME: node3-mariadb
|
||||
CLUSTER_NAME: maria_cluster
|
||||
CLUSTER_ADDRESS: gcomm://node1-mariadb
|
||||
TZ : 'Asia/Seoul'
|
||||
ports:
|
||||
- 33306:3306/tcp
|
||||
volumes:
|
||||
- ./galeranode3/mariadb:/var/lib/mysql
|
||||
command:
|
||||
--wait_timeout=28800
|
||||
--character-set-server=utf8
|
||||
--collation-server=utf8_general_ci
|
||||
--max-allowed-packet=512M
|
||||
--net-buffer-length=5048576
|
||||
stdin_open: true
|
||||
tty: true
|
||||
privileged: true
|
||||
depends_on:
|
||||
- node1-mariadb
|
||||
- node2-mariadb
|
||||
@@ -0,0 +1,105 @@
|
||||
version: '2'
|
||||
services:
|
||||
node1-mariadb:
|
||||
image: hauptmedia/mariadb:10.1
|
||||
hostname: node1-mariadb
|
||||
container_name: node1-mariadb
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: 'iamgroot'
|
||||
REPLICATION_PASSWORD: 'iamgroot'
|
||||
GALERA: 'On'
|
||||
NODE_NAME: node1-mariadb
|
||||
CLUSTER_NAME: maria_cluster
|
||||
CLUSTER_ADDRESS: gcomm://
|
||||
TZ : 'Asia/Seoul'
|
||||
ports:
|
||||
- 13306:3306/tcp
|
||||
volumes:
|
||||
- /data/someone/mariadb/galeranode1/mariadb:/var/lib/mysql
|
||||
- /data/someone/mariadb/sqldir:/docker-entrypoint-initdb.d
|
||||
command:
|
||||
--wait_timeout=28800
|
||||
--character-set-server=utf8
|
||||
--collation-server=utf8_general_ci
|
||||
--max-allowed-packet=512M
|
||||
--net-buffer-length=5048576
|
||||
--wsrep-new-cluster
|
||||
stdin_open: true
|
||||
tty: true
|
||||
privileged: true
|
||||
ulimits:
|
||||
nofile:
|
||||
soft: 600000
|
||||
hard: 640000
|
||||
labels:
|
||||
io.rancher.scheduler.affinity:host_label: labelkey1=labelkvalue1
|
||||
io.rancher.container.pull_image: always
|
||||
|
||||
node2-mariadb:
|
||||
image: hauptmedia/mariadb:10.1
|
||||
hostname: node2-mariadb
|
||||
container_name: node2-mariadb
|
||||
links:
|
||||
- node1-mariadb
|
||||
environment:
|
||||
REPLICATION_PASSWORD: 'iamgroot'
|
||||
GALERA: 'On'
|
||||
NODE_NAME: node2-mariadb
|
||||
CLUSTER_NAME: maria_cluster
|
||||
CLUSTER_ADDRESS: gcomm://node1-mariadb
|
||||
TZ : 'Asia/Seoul'
|
||||
ports:
|
||||
- 23306:3306/tcp
|
||||
volumes:
|
||||
- /data/someone/galeranode2/mariadb:/var/lib/mysql
|
||||
command:
|
||||
--wait_timeout=28800
|
||||
--character-set-server=utf8
|
||||
--collation-server=utf8_general_ci
|
||||
--max-allowed-packet=512M
|
||||
--net-buffer-length=5048576
|
||||
stdin_open: true
|
||||
tty: true
|
||||
privileged: true
|
||||
depends_on:
|
||||
- node1-mariadb
|
||||
ulimits:
|
||||
nofile:
|
||||
soft: 600000
|
||||
hard: 640000
|
||||
labels:
|
||||
io.rancher.scheduler.affinity:host_label: labelkey2=labelkvalue2
|
||||
io.rancher.container.pull_image: always
|
||||
|
||||
node3-mariadb:
|
||||
image: hauptmedia/mariadb:10.1
|
||||
hostname: node3-mariadb
|
||||
container_name: node3-mariadb
|
||||
links:
|
||||
- node1-mariadb
|
||||
environment:
|
||||
REPLICATION_PASSWORD: 'iamgroot'
|
||||
GALERA: 'On'
|
||||
NODE_NAME: node3-mariadb
|
||||
CLUSTER_NAME: maria_cluster
|
||||
CLUSTER_ADDRESS: gcomm://node1-mariadb
|
||||
TZ : 'Asia/Seoul'
|
||||
ports:
|
||||
- 33306:3306/tcp
|
||||
volumes:
|
||||
- /data/someone/galeranode3/mariadb:/var/lib/mysql
|
||||
command:
|
||||
--wait_timeout=28800
|
||||
--character-set-server=utf8
|
||||
--collation-server=utf8_general_ci
|
||||
--max-allowed-packet=512M
|
||||
--net-buffer-length=5048576
|
||||
stdin_open: true
|
||||
tty: true
|
||||
privileged: true
|
||||
depends_on:
|
||||
- node1-mariadb
|
||||
- node2-mariadb
|
||||
labels:
|
||||
io.rancher.scheduler.affinity:host_label: labelkey3=labelkvalue3
|
||||
io.rancher.container.pull_image: always
|
||||
+18
@@ -0,0 +1,18 @@
|
||||
#!/bin/bash
|
||||
|
||||
checkvariablecnt=$#
|
||||
|
||||
if [ $checkvariablecnt == 4 ]; then
|
||||
echo "Migrate to an existing [ $3 ]schema. "
|
||||
mysql -u$1 -p$2 --database=$3 < $4
|
||||
else
|
||||
echo "Migrate file $3 "
|
||||
mysql -u$1 -p$2 < $3
|
||||
fi
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user