一、实验环境

管理节点:192.168.50.219

数据节点:192.168.50.217,192.168.50.218

sql节点:192.168.50.216

装ndb前,先删除原先系统自带mysql;

各个节点的安装顺序“管理节点—数据节点—SQL节点”;

1、安装管理节点

[root@server1 tarbag]# groupadd mysql

[root@server1 tarbag]# useradd -g mysql mysql[root@server1 tarbag]# tar -zxvf mysql-cluster-gpl-7.0.9-linux-i686-glibc23.tar.gz -C ../software/

[root@server1 tarbag]# cd ../software/mysql-cluster-gpl-7.0.9-linux-i686-glibc23/bin/

[root@server1 bin]# cp -rp ndb* /usr/local/bin/

[root@server1 bin]# mkdir -p /usr/local/mysql-cluster

[root@server1 bin]# cd /usr/local/mysql-cluster/

[root@server1 mysql-cluster]# cp /usr/local/src/software/mysql-cluster-gpl-7.0.9-linux-i686-glibc23/support-files/config.medium.ini ./config.ini

[root@server1 mysql-cluster]# vim config.ini

[NDBD DEFAULT]

NoOfReplicas=2

DataDir=/mydata

DataMemory=200M

IndexMemory=50M

MaxNoOfConcurrentTransactions=500

MaxNoOfConcurrentOperations=1000

MaxNoOfOrderedIndexes=256

MaxNoOfUniqueHashIndexes=128

MaxNoOfAttributes=1000

MaxNoOfTables=100

TimeBetweenWatchDogCheck=15000

NoOfFragmentLogFiles=200

[NDB_MGMD DEFAULT]

PortNumber=1186

DataDir=/mydata

ArbitrationRank=1

[ndb_mgmd]

id=1

HostName=192.168.50.219[ndbd]

Id=2

HostName=192.168.50.217

[ndbd]

Id=3

HostName=192.168.50.218

[mysqld]

Id=4

HostName=192.168.50.216

[mysqld]    //预留1个空的mysqld,数量与sql节点数量一致,数据库恢复时使用

[tcp default]

PortNumber=63132

[root@server1 mysql-cluster]# cp /usr/local/src/software/mysql-cluster-gpl-7.0.9-linux-i686-glibc23/support-files/my-huge.cnf  /etc/my.cnf

[root@server1 ~]# vim /etc/my.cnf

[mysqld]

ndbcluster

ndb-connectstring = 192.168.50.219

[mysql_cluster]

ndb-connectstring = nodeid=1,192.168.50.219

[root@server1 ~]#/usr/local/bin/ndb_mgmd -f /usr/local/mysql-cluster/config.ini  --configdir=/usr/local/mysql-cluster[root@server1 /]# netstat -ntpl |grep ndb

tcp        0      0 0.0.0.0:1186                0.0.0.0:*                   LISTEN   2561/ndb_mgmd  [root@server1 mysql-cluster]# vim /mydata/ndb_1_cluster.log2010-04-30 13:39:58 [MgmtSrvr] INFO     -- Got initial configuration from '/usr/local/mysql-cluster/config.ini', will try to set it when all ndb_mgmd(s)

started

2010-04-30 13:39:58 [MgmtSrvr] INFO     -- Mgmt server state: nodeid 1 reserved for ip 192.168.50.219, m_reserved_nodes 00000000000000000000000000000000

00000000000000000000000000000002.

2010-04-30 13:39:58 [MgmtSrvr] INFO     -- Node 1: Node 1 Connected

2010-04-30 13:39:58 [MgmtSrvr] INFO     -- Id: 1, Command port: *:1186

2010-04-30 13:39:58 [MgmtSrvr] INFO     -- Starting initial configuration change

2010-04-30 13:39:58 [MgmtSrvr] INFO     -- Configuration 1 commited

2010-04-30 13:39:58 [MgmtSrvr] INFO     -- Config change completed! New generation: 1

管理节点安装完毕

2、数据节点安装

[root@server2 ~]# groupadd mysql

[root@server2 ~]# useradd -g mysql mysql

wget http://download.softagency.net/MySQL/Downloads/MySQL-Cluster-7.0/mysql-cluster-gpl-7.0.9-linux-i686-glibc23.tar.gz

[root@server2 tarbag]# tar -zxvf mysql-cluster-gpl-7.0.9-linux-i686-glibc23.tar.gz -C ../software

[root@server2 tarbag]# mv ../software/mysql-cluster-gpl-7.0.9-linux-i686-glibc23/  /usr/local/mysql

[root@server2 tarbag]# cp /usr/local/mysql/support-files/my-huge.cnf /etc/my.cnf

[root@server2 ~]# vim /etc/my.cnf

[mysqld]

datadir=/mydata

ndbcluster

ndb-connectstring = 192.168.50.219

[mysqlhotcopy]

interactive-timeout

[mysql_cluster]

ndb-connectstring= nodeid=2,192.168.50.219

[root@server2 ~]# mkdir /mydata

[root@server2 ~]# chown -R mysql.mysql /mydata/

[root@server2 ~]# vim  .bash_profile

PATH=$PATH:$HOME/bin:/usr/local/mysql/bin

export PATH

[root@server2 ~]# source .bash_profile

[root@server2 ~]# /usr/local/mysql/bin/ndbd --initial

2010-05-01 13:36:37 [ndbd] INFO     -- Configuration fetched from '192.168.50.219:1186', generation: 1

[root@server2 ~]# netstat -ntpl |grep ndb

tcp        0      0 192.168.50.215:63132        0.0.0.0:*                   LISTEN      12177/ndbd

设置开机启动

[root@server2 ~]# vi /etc/rc.local

/usr/local/mysql/bin/ndbd

数据结点安装完毕

3、sql节点安装

[root@server4 ~]# groupadd mysql

[root@server4 ~]# useradd -g mysql mysql

[root@server4 ~]# cd /usr/local/src/tarbag/

wgethttp://download.softagency.net/MySQL/Downloads/MySQL-Cluster-7.0/mysql-cluster-gpl-7.0.9-linux-i686-glibc23.tar.gz[root@server4 tarbag]# tar -zxvf mysql-cluster-gpl-7.0.9-linux-i686-glibc23.tar.gz -C /usr/local/

[root@server4 tarbag]# cd /usr/local/

[root@server4 local]# mv mysql-cluster-gpl-7.0.9-linux-i686-glibc23/ mysql

[root@server4 local]# cp mysql/support-files/my-huge.cnf /etc/my.cnf

[root@server4 local]# vim  /etc/my.cnf |uniq

datadir = /mydata

ndbcluster

ndb-connectstring = 192.168.50.219

[mysql_cluster]

ndb-connectstring= nodeid=4,192.168.50.219

[root@server4 ~]# cd /usr/local/mysql/

[root@server4 mysql]# ./scripts/mysql_install_db --user=mysql

[root@server4 mysql]# cp support-files/mysql.server /etc/init.d/mysqld

[root@server4 mysql]# chmod +x /etc/init.d/mysqld

[root@server4 mysql]# chkconfig mysqld on

[root@server4 mysql]# service mysqld start

Starting MySQL.. SUCCESS!

[root@server4 mydata]# mysqlWelcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 3

Server version: 5.1.39-ndb-7.0.9-cluster-gpl-log MySQL Cluster Server (GPL)

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

sql节点安装完毕二、MySQL cluster备份恢复

1、打开管理节点的ndb_mgm控制台,输入start backup backupID(backupid用任意数字,比如日期20100106,注意,不能和以前的备份ID相同)。在所有存储节点的$datadir/BACKUP下会生成相应备份目录BACKUP-backupid

2、在ndb_mgm中输入shutdown来关闭所有的存储节点和所有的管理节点

3、在所有的sql节点中删除数据库,留下系统自带的

4、按顺序启动mysql集群

4.1启动管理节点

/usr/local/bin/ndb_mgmd -f /usr/local/mysql-cluster/config.ini --configdir=/usr/local/mysql-cluster --initial  //必须加上initial参数,否则在存储节点恢复是时出现以下错误

Nodeid = 3

Backup Id = 20100510

backup path = /mydata/BACKUP/BACKUP-20100510/

Opening file '/mydata/BACKUP/BACKUP-20100510/BACKUP-20100510.3.ctl'

Backup version in files: ndb-6.3.11 ndb version: mysql-5.1.39 ndb-7.0.9

Stop GCP of Backup: 136000128

Configuration error: Error : Could not alloc node id at 192.168.50.219 port 1186: Id 3 configured as ndbd(NDB), connect attempted as mysqld(API).

Failed to initialize consumers

NDBT_ProgramExit: 1 - Failed

4.2启动存储节点

/usr/local/mysql/bin/ndbd --initial //必须加上initial参数

4.3 启动sql节点

/usr/local/mysql/support-files/mysql.server  restart

5、在存储节点Master(192.168.50.217)上执行ndb_restore还原命令

/usr/local/mysql/bin/ndb_restore -n2 -b20100510 -r -m --backup_path=/mydata/BACKUP/BACKUP-20100510/ --ndb-connectstring=nodeid=5,192.168.50.219

命令解释:

-n 当前存储节点的nodeid

-b 要还原的backupid

-r 数据开关,也就是还原数据了

-m 还原表结构

--ndb-connectstring=nodeid=5,192.168.50.219  //5为config.ini预留的mysql节点

6、在第二个节点(192.168.50.218)上执行还原命令

/usr/local/mysql/bin/ndb_restore -n3 -b20100510 -r -d --backup_path=/mydata/BACKUP/BACKUP-20100510/ --ndb-connectstring=nodeid=5,192.168.50.219

在Master备份的时候要加 -m 开关。

在Slave上要加-d 而且不要-m开关。

7、在sql节点上创建需要还原的数据库,mysql必须重新建立SCHEMA

create database 库名;

mysql中ndb_restore_mysql ndb集群与恢复相关推荐

  1. mysql中overwrite,打造集群间HIVE数据库表半自动迁移(overwrite)工具

    Author:Christopher_L1n | CSDN Blog | 未经允许,禁止转载 Hive -> Hive 集群间迁移数据库表 阅读提示 为了代码易读性,脚本中加入冗余的参数赋值,可 ...

  2. mysql ndb集群

    重要说明:mysql-cluste与非集群时用的mysql-server与mysql-client没有任何关系,mysql-cluste安装包中已自带了集群用的server与client,启动mysq ...

  3. MySQL cluster集群/NDB集群学习

    公司主业务用的MySQL集群是官方自带的MySQL Cluster,MySQL自带的集群模式,这个集群的模式和MGR.PXC.主从 有点不一样. 一.存储引擎不是innodb,MySQL Cluste ...

  4. 项目中使用Quartz集群分享--转载

    原文:http://hot66hot.iteye.com/blog/1726143 在公司分享了Quartz,发布出来,希望大家讨论补充. CRM使用Quartz集群分享  一:CRM对定时任务的依赖 ...

  5. Mysql8 NDB集群二进制方式免安装配置图解

    Mysql8 NDB集群二进制解压安装配置图解 声明与简介 本文的数据来自网络,部分代码也有所参照,这里做了注释和延伸,旨在技术交流,如有冒犯之处请联系博主及时处理.本文主要介绍mysql的NDB集群 ...

  6. 搭建pxc集群时需要先安装mysql么_完美起航-高可用MySQL数据库之PXC集群

    高可用MySQL数据库之PXC集群 前言 在上一篇文章介绍了时下流行的几种数据库产品后(公众号发送"NewSQL"查看),有不少小伙伴表示对自动集群的数据库感兴趣,特别是Cockr ...

  7. galeracluster高可用集群异常恢复

    以三个节点为例 如果其中一个或两个节点被手动停止,需要恢复时,在对应节点直接启动mysql即可(实际测试中,节点异常宕机重启同样适用) systemctl start mysqld 如果三个节点都被手 ...

  8. Ambari在离线环境中安装Hadoop集群

    2019独角兽企业重金招聘Python工程师标准>>> http://www.hackbase.com/article-973-1.html (WJW)Ambari在离线环境中安装H ...

  9. MySQL数据库高可用集群搭建-PXC集群部署

    Percona XtraDB Cluster(下文简称PXC集群)提供了MySQL高可用的一种实现方法.集群是有节点组成的,推荐配置至少3个节点,但是也可以运行在2个节点上. PXC原理描述: 分布式 ...

最新文章

  1. magento 为用户注册增加一个字段(转)
  2. 文化之旅(dijstra)
  3. es6 --- Promise.all等待多个异步任务执行
  4. html css外接修改无效,HTML外部引用CSS文件为什么会不生效
  5. 也许,这样理解HTTPS更容易
  6. PHP: 手把手编写自己的 MVC 框架实例教程
  7. 带权并查集-Building Block
  8. Apache和Nginx下禁止访问特定的目录或文件
  9. eval函数处理JSON数据需要加括号
  10. Struts2报错异常Method setUser failed for object com.mikey.action.ConverterAction@dd34285
  11. List 集合排序 降序升序
  12. Taro 周报 #7: 收获「e代驾」案例,发布 v2.2.16 和 v3.2.0-canary.2
  13. 老鹰教小鹰飞翔的故事
  14. js截取url所带参数方法与url截取字段中包含中文会乱码的解决方案
  15. 如何申请Office365试用账号
  16. Linux内核版本主要有,Linux内核版本号主要有几部分组成? 各代表什么含义?
  17. 关于巴伦——Marchand巴伦
  18. 视频编解码 — H264结构
  19. Delphi写游戏外挂
  20. Android列表ListView控件的使用

热门文章

  1. 美国大选2020推特相关数据
  2. 一次小米路由器3刷机的翻车记录
  3. Java蚂蚁金服面试
  4. duilib学习------网易云信图片中间加文字
  5. 基于SSM的校园运动会管理系统
  6. 证件照背景色怎么换白色?这两个小技巧要掌握
  7. hostent实例详解
  8. 信用卡号码的解析(转)
  9. easyexcel 在 设置标题_七. EasyExcel标题加批注和标题字体填充红色
  10. 量子计算机原理以及量子算法