MySQL NDB Cluster 7.5.16部署OGG同步

安装MySQL NDB Cluster 7.5.16

环境:

mgmd:192.168.121.133

sqlndbd1: 192.168.121.134

sqlndbd2: 192.168.121.135

每个节点先关闭防火墙:

[r[email protected] ~]# systemctl disable firewalld

[[email protected] ~]# chkconfig iptables off

(sql节点和数据节点都在同一台机器上,但是生产环境建议sql节点和数据节点分开配置。)

下载MySQL NDB Cluster:https://dev.mysql.com/downloads/cluster/

一、安装管理节点:mgmd

[[email protected] ~]# tar -xvf mysql-cluster-gpl-7.5.16-linux-glibc2.12-x86_64.tar.gz

[[email protected] ~]# mv mysql-cluster-gpl-7.5.16-linux-glibc2.12-x86_64 /usr/local/mysql

[[email protected] ~]# cp /usr/local/mysql/bin/ndb_mgm* /usr/local/bin

[[email protected] ~]# mkdir /data/mysql-cluster

[[email protected] ~]# vi /data/mysql-cluster/config.ini

config.ini 的配置:

[ndbd default]

NoOfReplicas=1

DataMemory=512M

IndexMemory=18M

[ndb_mgmd]

HostName=192.168.121.133

DataDir=/data/mysql-cluster

[ndbd]

HostName=192.168.121.134

DataDir=/data/mysql/db_file

[ndbd]

HostName=192.168.121.135

DataDir=/data/mysql/db_file

[mysqld]

HostName=192.168.121.134

[mysqld]

HostName=192.168.121.135

初始化管理节点:

/usr/local/bin/ndb_mgmd -f  /data/mysql-cluster/config.ini –initial

查看节点状态:

[[email protected] ~]# ndb_mgm

二、安装sql节点和数据节点:sqlndbd1和sqlndbd2

新增用户和用户组:

[[email protected] ~]#groupadd mysql

[[email protected] ~]#useradd -g mysql -s /bin/false mysql

[[email protected] ~]# tar -xvf mysql-cluster-gpl-7.5.16-linux-glibc2.12-x86_64.tar.gz

[[email protected] ~]# mv mysql-cluster-gpl-7.5.16-linux-glibc2.12-x86_64 /usr/local/mysql

[[email protected] ~]# chown -R mysql:mysql  /usr/local/mysql

[[email protected] ~]# mkdir -p /data/mysql/db_file

[[email protected] ~]# mkdir -p /data/mysql/log

[[email protected] ~]# mkdir -p /data/mysql/log_bin

[[email protected] ~]# chown -R mysql:mysql  /data/mysql

初始化 MySQL:

/usr/local/mysql/bin/mysqld –initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/data/mysql/db_file

-----注意,初始化数据库会生成登录MySQL数据库的root密码,一定要记住,一会登录数据库要用

编辑SQL节点 my.cnf 文件:

[mysqld]

basedir=/usr/local/mysql/

datadir=/data/mysql/db_file

socket=/usr/local/mysql/ mysql.sock

log-error=/data/mysql/log/sqlnode.err

default-storage-engine=ndbcluster

ndbcluster

ndb-connectstring=192.168.121.133

server-id=1

skip-slave-start=true

log-bin = /data/mysql/log_bin/log-bin.bin

log-bin-index = /data/mysql/log_bin/log-bin.index

binlog-format = ROW  //SQL节点ogg同步需要配置的

[mysql_cluster]

ndb-connectstring=192.168.121.133

拷贝MySQL启动脚本:

[[email protected] ~]# cp /usr/local/mysql/support-files/mysql.server  /etc/rc.d/init.d/

[[email protected] ~]# chmod +x /etc/rc.d/init.d/mysql.server

[[email protected] ~]# chkconfig --add mysql.server

启动MySQL节点:

[[email protected] ~]# /etc/init.d/mysql.server start

登录MySQL以及修改密码:

[[email protected] ~]# /usr/local/mysql/bin/mysql -u root -p  # 将刚才存储的随机MySQL密码 复制进来

mysql>ALTER USER ‘root‘@‘localhost‘IDENTIFIED BY ‘123456‘; # 修改密码为123456

mysql> flush privileges;

启动NDB

[[email protected] ~]# /usr/local/mysql/bin/ndbd –initial

如果出现以下类似信息表示启动成功

2018-08-30 21:21:20 [ndbd] INFO     -- Angel connected to ‘192.168.0.100:1186‘

2018-08-30 21:21:20 [ndbd] INFO     -- Angel allocated nodeid: 2

---------------------------------------------------------------------------------------------------------------------------------

启动顺序:MGM初始化 —》 MySQL节点启动 —》 NDB启动

管理节点关闭命令:ndb_mgm -e shutdown

NBD关闭 /usr/local/mysql/bin/ndbd

 

注:建表时请注意 存储引擎 为 ENGINE=NDBCLUSTER

创建NFS共享文件夹

一、在一台服务器上创建NFS共享文件夹(本例是在管理节点创建的)

服务端:本例是在管理节点

1.安装NFS和rpc

[[email protected] ~]# yum install -y  nfs-utils  rpcbind

2.编辑/etc/exports

#在文本中添加内容:

/data/share/ 192.168.121.134(rw,no_root_squash,no_all_squash,sync)

/data/share/ 192.168.121.135(rw,no_root_squash,no_all_squash,sync)

保存好配置文件后,需要执行以下命令使配置立即生效:

[[email protected] ~]# exportfs –r

3.创建共享目录,和修改权限

[[email protected] ~]# mkdir /data/share

[[email protected] ~]# chmod 755 -R /data/share/

4.启动服务

[[email protected] ~]# systemctl start rpcbind

[[email protected] ~]# systemctl start nfs

5.开机启动

[[email protected] ~]# systemctl enable rpcbind

[[email protected] ~]# systemctl enable nfs

客户端:本例是在SQL节点

1.安装NFS和rpc

[[email protected] ~]# yum install -y  nfs-utils  rpcbind

2.查询挂载目录

[[email protected] ~]# showmount -e 192.168.121.133

3.建立挂载目录,执行挂载命令

[[email protected] ~]# mkdir -p /data/share

[[email protected] ~]# mount -t nfs 192.168.121.133:/data/share /data/share/ -o nolock,nfsvers=3,vers=3

//如果不加 -onolock,nfsvers=3 则在挂载目录下的文件属主和组都是nobody,如果指定nfsvers=3则显示root。

如果要解除挂载,可执行命令:

[[email protected] ~]# umount /data/share

4.开机自动挂载

[[email protected] ~]# vim /etc/rc.d/rc.local

#在文件最后添加一行:

mount -t nfs 192.168.121.133:/data/share /data/share/ -o nolock,nfsvers=3,vers=3

在NFS共享文件夹下安装OGG

下载OGG: https://www.oracle.com/middleware/technologies/goldengate-downloads.html

[[email protected] ~]# unzip 191003_ggs_Linux_x64_MySQL_64bit.zip

[[email protected] ~]# tar –xvf ggs_Linux_x64_MySQL_64bit.tar –C /data/share/ogg

[[email protected] ~]# cd /data/share/ogg

[[email protected] ogg]# ./ggsci

GGSCI (localhost.localdomain) 1>create subdirs

GGSCI (localhost.localdomain) 2>dblogin sourcedb [email protected]:3306,userid root,password xxx

配置MGR进程:

GGSCI (localhost.localdomain) 3> edit param mgr

port 7809

dynamicportlist 7800-8000

autorestart extract *,waitminutes 2,resetminutes 5

配置extract进程:

GGSCI (localhost.localdomain) 4> add extract ext,tranlog,begin now

GGSCI (localhost.localdomain) 5> add exttrail ./dirdat/es,extract ext

GGSCI (localhost.localdomain) 5> edit param ext

extract ext

setenv (MYSQL_HOME="/usr/local/mysql/data")

sourcedb [email protected]:3306,userid root,PASSWORD 123456

exttrail ./dirdat/es

tranlogoptions altlogdest /usr/local/mysql/data/log-bin.index

gettruncates

TABLE test.*;

配置pump进程:

GGSCI (localhost.localdomain) 6> add extract pu,exttrailsource ./dirdat/es

GGSCI (localhost.localdomain) 7> add rmttrail ./dirdat/et,extract pu

GGSCI (localhost.localdomain) 8> edit param pu

extract pump_1

rmthost 192.168.121.135,mgrport 7810 //目标端OGG地址和端口

rmttrail ./dirdat/et

passthru

gettruncates

table test.*;

原文地址:https://www.cnblogs.com/smandar/p/12272655.html

时间: 2024-11-13 08:15:51

MySQL NDB Cluster 7.5.16部署OGG同步的相关文章

MySQL NDB Cluster Installation Guide

Mysql NDB Cluster其主要功能是在无共享存储的系统中部署基于内存的数据库Cluster,其主要是通过NDB Cluster(简称NDB)存储引擎来实现的.本文使用的NDB Cluster版本为7.6,主机描述见下表: 1.各个节点软件包安装我这里创建了一个YUM仓库,所以直接通过yum命令安装. NDB管理节点安装软件包 [[email protected] ~]# yum -y install mysql-cluster-commercial-management-server

NDB Cluster (分布式存储引擎)存储引擎简单简介及Mysql cluster的实现

一.NDB Cluster (分布式存储引擎)存储引擎简单简介 NDB 存储引擎也叫NDB Cluster 存储引擎,主要用于MySQL Cluster 分布式集群环境, Cluster 是MySQL 从5.0 版本才开始提供的新功能.这部分我们可能并不仅仅只是介绍NDB存储引擎,因为离开了MySQL CLuster 整个环境,NDB 存储引擎也将失去太多意义.所以 接下来会和MySQL Cluster的搭建一块介绍. Mysql Cluster 是一种技术,其主要功能是在无共享的相关系统中部署

部署MySQL Galera Cluster

部署MySQL Galera Cluster 0.功能简介 特性 基于行复制的完全并行同步复制 实时多主架构,任意节点可读写 无延迟复制,事务零丢失,可靠健壮的读写体验. 自动化节点关系控制:节点故障自动摘除,节点加入自动协调 接近原生的MySQL数据库连接的体验 原理简析当一个事务在当前写入的节点提交后,通过wsrep API(write set replication API)将这个事务变成写集(write set)广播到同集群的其他节点中,其他节点收到写集事务后,对这个事务进行可行性检查,

部署zabbix监控mysql (三) MPM插件介绍和部署

MPM插件部署 1.安装MPM依赖的相关perl模块 安装mpm需要的相关依赖包:[保险起见,agent端也安装下面的依赖包] # yum -y install perl-File-Which perl-libwww-perl perl-Digest-SHA1 perl-DBD-MySQL perl-Time-HiRes perl-Crypt-SSLeay # yum -y install perl-File-Which perl-libwww-perl perl-Digest-SHA1 per

LVS+Keepalived+Squid+Nginx+MySQL主从高性能集群架构部署方案

方案一,在tomcat的workers.properties里面配置相关条件 worker.tomcat.lbfactor=50 worker.tomcat.cachesize=10 worker.tomcat.cache_timeout=600 worker.tomcat.socket_keepalive=1 worker.tomcat.socket_timeout=300 Linux内核优化: vi /etc/sysctl.conf   # 编辑sysctl.conf文件添加以下内容net.

关于Oracle的rac集群和mysql Galera Cluster的想法

到了新公司,公司用的是rac,我比较熟悉mysql第三方的集群方案Galera Cluster这类多主集群, 下面是我参考了他人对rac的介绍,然后和mysql方案进行的臆测级别的分析对比. rac和mysql Galera Cluster(mgc)的对比, 1.实施和运维,rac是商业方案系统化性当然强点,mgc大多使用各种开源高可用负载均衡器,部署起来对实施人员的要求rac比较低,废话...rmb都给了甲骨文了,如果是自行配制弄得不好性能2台还不如一台,其实运维方面来说体量大了都一样: 2.

MySQL(8)--Cluster 7.4 rpm centos7

还没来得及写.我就知道一个月完毕不了,暂时添加的工作总是拖后腿. .. MySQL集群 docker下安装MySQL Cluster报错了.是我image的包少了perl.老实装吧.image又小不了了.还须要安装numactl, net-tools error: Failed dependencies: /usr/bin/perl is needed by MySQL-Cluster-server-gpl-7.4.10-1.el7.x86_64 libnuma.so.1()(64bit) is

[MySQL] MySQL的自己主动化安装部署

有过MySQL运维的人应该都清楚,线上的MySQL一般都採用源代码编译,由于这样才干够依据企业的各自须要选择要编译的功能,尽管MySQL的源代码编译挺简单的,可是试想一下,假设你有几百台server同一时候要安装MySQL,难道你还一台台去手动编译.编写配置文件吗?这显然太低效了,本文讨论MySQL的自己主动化安装部署. 1.制作符合自己需求的RPM包 我们要依据MySQL的源代码编译符合企业需求的RPM包,源代码获取命令例如以下: wget http://downloads.mysql.com

MySQL Community Server 8.0.16安装及密码修改备注

MySQL Community Server 8.0.16 官方下载地址:https://dev.mysql.com/downloads/mysql/ 1. 下载后解压到本地目录. 2. 初始化data目录: bin\mysqld --initialize --console或者 bin\mysqld --initialize-insecure --console 此处记得注意初始化data时生成的临时密码,日志如下: 2019-05-08T15:05:11.405238Z 5 [Note] [