搭建mysql集群需要什么用_mysql集群搭建如何搭建?mysql集群是什么?

在企业项目中,最重要的架构一定是数据库,搭建高可用MySQL

集群可以有效防止单点、备份缺失所造成的损失,那么,小伙伴们知道MySQL集群该怎么搭建吗?跟小编一起来了解了解吧。

集群搭建

1.修改相应配置

分别在三台服务器中使用如下命令修改配置文件$ vim /etc/my.cnf

分别向三台服务器的/etc/my.cnf mysql配置文件添加如下内容:masetrslave1slave2

server - id = 1# 主库开启binlog日志

log - bin = /var/lib / mysql / mysql - binserver - id = 2 server - id = 3

2、在主库创建复制用户

在mysql命令下输入如下命令创建一个用户供从库(slave)复制主库(master)mysql > grant replication slave on * .*to 'test'

@ '%'

identified by

'123456';

Query OK, 0 rows affected(0.00 sec)

mysql > flush privileges;

Query OK, 0 rows affected(0.00 sec)

3、从库关联主库

查看主库(master)状态mysql> show master status;

输出以下信息,当然你的可以和我的不一样mysql > show master status; +

-- -- -- -- -- -- -- -- -- + -- -- -- -- -- + -- -- -- -- -- -- -- + -- -- -- -- -- -- -- -- -- + -- -- -- -- -- -- -- -- -- - +

|

File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |

+ -- -- -- -- -- -- -- -- -- + -- -- -- -- -- + -- -- -- -- -- -- -- + -- -- -- -- -- -- -- -- -- + -- -- -- -- -- -- -- -- -- - +

|

mysql - bin .000002 | 5141037 | | | |

+ -- -- -- -- -- -- -- -- -- + -- -- -- -- -- + -- -- -- -- -- -- -- + -- -- -- -- -- -- -- -- -- + -- -- -- -- -- -- -- -- -- - +

row in set(0.00 sec)

以上结果:只需要看 File 和

Position,其它的两个分别是白名单和黑名单,意思为同步哪几个数据库和不同步哪几个数据库,可自行根据需求进行设置。记录以上前两个字段信息后()。

分别在两台从库(slave)上操作如下命令:mysql > change master to master_host = '47.100.222.111', master_port = 3306

, master_user = 'test', master_password = '123456'

, master_log_file = 'mysql-bin.000002', master_log_pos = 5141037;

mysql > flush privileges;

mysql > slave start;

执行完毕,从库上继续执行如下语句:mysql> show slave statusG;

输出如下信息:** ** ** ** ** ** ** ** ** ** ** ** ** * 1. row ** ** ** ** ** ** ** ** ** ** ** ** ** *

Slave_IO_State: Waiting

for master to send event

Master_Host: 47.100 .225 .121

Master_User: helper

Master_Port: 3306

Connect_Retry: 60

Master_Log_File: mysql - bin .000002

Read_Master_Log_Pos: 5141037

Relay_Log_File: slave1 - relay - bin .000003

Relay_Log_Pos: 5140628

Relay_Master_Log_File: mysql - bin .000002

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

Replicate_Do_DB:

Replicate_Ignore_DB:

如果 Slave_IO_Running: 和Slave_SQL_Running: 都为YES就证明配置成功了。

Mysql集群是什么

MySQL集群是一个无共享的(shared-nothing)、分布式节点架构的存储方案,目的是为了提供容错性和高性能。

数据更新使用读已提交隔离级别(read-committedisolation)来保证所有节点数据的一致性,使用两阶段提交机制(two-phasedcommit)保证所有节点都有相同的数据(如果任何一个写操作失败,则更新失败)。

无共享的对等节点使得某台服务器上的更新操作在其他服务器上立即可见。传播更新使用一种复杂的通信机制,这一机制专用来提供跨网络的高吞吐量。

通过多个MySQL服务器分配负载,从而最大程序地达到高性能,通过在不同位置存储数据保证高可用性和冗余

以上就是本文全部内容了,有关Java常见问答的更多详细内容,请关注我们了解吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值