四、mysql集群-基于GTID的主从复制
安装脚本id=`ifconfig eth0 | awk -F "[ :]+" 'NR==2 {print $4}' | cut -d . -f 4`
useradd -s /sbin/nologin mysql -M
cd /application/tools/
tar xf mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
ln -s /application/tools/mysql-5.7.21-linux-glibc2.12-x86_64/ /application/mysql && echo success
cd /application
mkdir /application/mysql/{log,data,tmp} -p
chown -R mysql:mysql mysql
cd /application/mysql
chown -R mysql:mysql ./*
cat /etc/my.cnf
port = 3306
socket = /tmp/mysql.sock
server_id= $id
port = 3306
user = mysql
character-set-server = utf8mb4
default_storage_engine = innodb
log_timestamps = SYSTEM
socket = /tmp/mysql.sock
basedir = /application/mysql
datadir = /application/mysql/data
pid-file = /application/mysql/data/mysql.pid
max_connections = 1000
max_connect_errors = 1000
table_open_cache = 1024
max_allowed_packet = 128M
open_files_limit = 65535
#####==================================================================
innodb_buffer_pool_size = 1024M
innodb_file_per_table = 1
innodb_write_io_threads = 4
innodb_read_io_threads = 4
innodb_purge_threads = 2
innodb_flush_log_at_trx_commit = 1
innodb_log_file_size = 512M
innodb_log_files_in_group = 2
innodb_log_buffer_size = 16M
innodb_max_dirty_pages_pct = 80
innodb_lock_wait_timeout = 30
innodb_data_file_path=ibdata1:1024M:autoextend
innodb_undo_tablespaces=3
######==================================================================
log_error = /application/mysql/log/mysql-error.log
slow_query_log = 1
long_query_time = 1
slow_query_log_file = /application/mysql/log/mysql-slow.log
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
log-bin=mysql-bin
##################slave设置参数##################
relay_log_purge=0
######================================================================
gtid_mode=on
enforce_gtid_consistency=on
log-slave-updates=1
EOF
cd /application/tools/mysql-5.7.21-linux-glibc2.12-x86_64/bin
./mysqld --initialize --user=mysql --basedir=/application/mysql --datadir=/application/mysql/data --innodb_undo_tablespaces=3 --explicit_defaults_for_timestamp && echo success
cp /application/tools/mysql-5.7.21-linux-glibc2.12-x86_64/support-files/mysql.server /etc/init.d/mysql
chkconfig --add mysql
chkconfig mysql on
service mysql start
cat >/etc/profile
#for mysql
PATH=$PATH:/application/mysql/bin
EOF
source /etc/profile && echo success
password=`grep -i password /application/mysql/log/mysql-error.log | awk -F '[ :]+' '{print $14}' | head -1`
mysqladmin -uroot -p$password password 123456
页:
[1]