mysql集群异地部署_linux 环境下 部署mysql 集群

概述

环境描述:适用于新环境部署

安装目录:/data/mysql

数据目录:/data/mysqldata

端口号 :3306

socket :/data/mysqldata/mysql.sock

补充说明

若为有数据的单库切换为主从,在进行主从搭建操作前,需将主库数据备份还原至从库,再进行锁表建立主从

安装步骤

主从库操作

1、创建mysql用户组(无需设置密码)

groupadd mysql

useradd -g mysql -m mysql

2、下载mysql安装包并解压(放于/data/package)

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz

tar -zxf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz

mv mysql-5.7.25-linux-glibc2.12-x86_64 /data/mysql

3、建立数据目录

mkdir /data/mysqldata

chown -R mysql:mysql /data/mysqldata

4、初始化,记下初始化后的随机密码

cd /data/mysql

./bin/mysqld --user=mysql --basedir=/data/mysql --datadir=/data/mysqldata --initialize

5、配置配置文件

vim /etc/my.cnf

[client]

port = 3306

socket = /data/mysqldata/mysql.sock

[mysqld]

#skip-grant-tables

basedir = /data/mysql

port = 3306

socket = /data/mysqldata/mysql.sock

datadir = /data/mysqldata

server-id = 1

log-bin = mysql-bin #打开二进制功能,MASTER主服务器必须打开此项

binlog-format=mixed

#gtid-mode=on

#enforce-gtid-consistency=true

master-info-repository=TABLE

slave-parallel-workers=0

binlog-checksum=CRC32

master-verify-checksum=1

slave-sql-verify-checksum=1

binlog-rows-query-log_events=1

expire_logs_days=7

max_binlog_size=1024M #binlog单文件最大值

max_connections = 3000

max_connect_errors = 30

character-set-server=utf8 #服务端默认字符集

wait_timeout=1800 #请求的最大连接时间

interactive_timeout=1800 #和上一参数同时修改才会生效

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES #sql模式

max_allowed_packet = 10Md

bulk_insert_buffer_size = 8M

query_cache_type = 1

query_cache_size = 128M

query_cache_limit = 4M

key_buffer_size = 256M

read_buffer_size = 16K

skip-name-resolve

slow_query_log=1

long_query_time = 6

slow_query_log_file=slow-query.log

relay-log = /data/mysqldata/relay-bin

slave-skip-errors = 1032,1062

replicate-ignore-db =mysql

innodb_flush_log_at_trx_commit = 2

innodb_log_buffer_size = 16M

innodb_buffer_pool_size=2G #此项根据实际修改,我这边4c8g通过性能测试选择的最佳大小 不加此项默认为128M

[mysql]

auto-rehash

[myisamchk]

key_buffer_size = 20M

sort_buffer_size = 20M

read_buffer = 2M

write_buffer = 2M

[mysqlhotcopy]

interactive-timeout

[mysqldump]

quick

max_allowed_packet = 16M

6、启动mysql

cd /data/mysql

cp -a ./support-files/mysql.server /etc/init.d/mysqld

/etc/init.d/mysqld start

7、添加环境变量

vim /etc/profile #交互式

vim /etc/bashrc #非交互式-加此环境变量为了后续自动化脚本连接数据库操作做准备

export PATH=$PATH:/data/mysql/bin

8、修改mysql root密码,并授予远程登录权限--初次登录为初始化密码

$mysql -u root -p

mysql>alter user user() identified by '***'

远程登录授权

mysql>grant all privileges on *.* to root@'%' identified by '**';

主库操作

1、创建主从复制slave 账号

mysql>grant replication slave on *.* to slave@'%' identified by '***';

2、锁表,查看master状态

mysql>flush tables with read lock;

mysql>show master status;

记录mysql-bin以及pos位置

从库操作

1、change master

msyql>CHANGE MASTER TO

MASTER_HOST = 'host', #另一台机器的地址

MASTER_PORT = 3306, #另一台机器的端口

MASTER_USER = 'slave',#另一台机器上第一步分配的用户名

MASTER_PASSWORD = 'slave', #另一台机器上第一步分配的密码

MASTER_LOG_FILE = 'mysql-bin.000001',#另一台机器上执行SHOW MASTER STATUS得到的文件名

MASTER_LOG_POS = 192; #另一台机器上执行SHOW MASTER STATUS得到的偏移量

2、启动主从复制

mysql>start slave

3、检查主从状态

mysql>show slave status\G;

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值