`

MySQL NDB 安装的安装,配置与测试

 
阅读更多
MySQL NDB 安装的安装,配置与测试
MySQL NDB 安装
     下载:mysql-cluster-gpl-7.1.10-linux-x86_64-glibc23.tar.gz
       
  配置之前,需要先从理论上好好系统把握一下mysql ndb的配置方法,这样可以少走很多弯路.
  
  一:配置前的规划
      管理节点IP:  192.168.133.98   节点ID: id=1
      NDB数据节点1: 192.168.133.101   节点ID: id=2
      NDB数据节点2: 192.168.133.102   节点ID: id=3
      mysql节点1:  192.168.133.62   节点ID: id=4
      mysql节点2:  192.168.133.100   节点ID: id=5
    
      OS:Centos 5.4 64位,4GB内存,5台都是虚拟机,都是运行在Vmware vsphere上的.
      [root@localhost ndbdatabase]# uname -a
      [root@localhost ndbdatabase] #:Linux localhost.localdomain 2.6.18-164.el5 #1 SMP Thu Sep 3 03:28:30 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux
--------------------------------------------------------------------------------
   二:开始安装
       A,安装数据节点与mysql节点,以下操作重复4次,在除管理节点以外的其他的节点上执行:
        #groupadd mysql
        #useradd –g mysql mysql
        #tar zxvf mysql-cluster-gpl-7.1.10-linux-x86_64-glibc23.tar.gz
        #chown mysql:mysql  mysql-cluster-gpl-7.1.10-linux-x86_64-glibc23
        #cd  mysql-cluster-gpl-7.1.10-linux-x86_64-glibc23
        #mv * /usr/local/mysql
   上述命令先创建mysql组和mysql用户,并且把MySQL分配到MySQL组,然后将安装文件解压,把它放置到/usr/local/mysql目录。
---------------------------------------------------------------------------------
    三:配置
      配置管理节点[192.168.133.98]:
      创建以下文件/var/lib/mysql-cluster/config.ini,并在其中添加如下内容:
    [NDBD DEFAULT]
    NoOfReplicas=2     #2表示节点
    DataMemory=100M
    IndexMemory=100M
   
    [TCP DEFAULT]
    portnumber=2202
   
    #管理节点
    [NDB_MGMD]
    id=1
    hostname=192.168.133.98
    datadir=/var/lib/mysql-cluster
   
   
    #第一个ndbd节点
    [NDBD]
    id=2
    hostname=192.168.133.101
    datadir=/usr/local/mysql/ndbdata
   
    #第二个ndbd节点
    [NDBD]
    id=3
    hostname=192.168.133.102
    datadir=/usr/local/mysql/ndbdata
    
    #SQL node
   
    [mysqld]
    id=4
    hostname=192.168.133.62
   
    [mysqld]
    id=5
    hostname=192.168.133.100
在这个文件里,我们分别给四个节点分配了ID,这有利于更好的管理和区分各个节点。当然,要是不指定,MySQL也会动态分配一个。上述几个Datadir如果还不存在的需要手动创建。用mkdir –p命令即可。
--------------------------------------------------------------------------------
    四:配置数据节点[192.168.133.101, 192.168.133.102]:

创建/etc/my.cnf文件,内容如下

# Options for mysqld process:

[mysqld]
datadir=/usr/local/mysql/ndbdata

[mysql_cluster]
ndb-connectstring  = 192.168.133.98
--------------------------------------------------------------------------------
    五:配置SQL节点[192.168.133.62,192.168.133.100]

创建/etc/my.cnf文件,内容如下

# Options for mysqld process:

[mysqld]
ndbcluster                      # run NDB storage engine
ndb-connectstring=192.168.133.98  # location of management server

# Options for ndbd process:
[mysql_cluster]
ndb-connectstring=192.168.133.98  # location of management server


[root@ndba bin]./scripts/mysql_install_db --user=mysql --defaults-file=/etc/my.cnf

Installing MySQL system tables...

OK

Filling help tables...

OK

到这里,所有配置已经完成了。
--------------------------------------------------------------------------------
    六:启动
启动管节点[192.168.133.98]:

[root@localhost bin]# ./ndb_mgmd -f /var/lib/mysql-cluster/config.ini

[root@localhost bin]# ./ndb_mgm

-- NDB Cluster -- Management Client --

ndb_mgm> show

Connected to Management Server at: 192.168.133.98:1186

Cluster Configuration

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

[ndbd(NDB)]     2 node(s)

id=2 (not connected, accepting connect from 192.168.133.101)

id=3 (not connected, accepting connect from 192.168.133.102)

[ndb_mgmd(MGM)] 1 node(s)

id=1    @192.168.133.98  (Version: 7.1.10)

[mysqld(API)]   1 node(s)

id=4 (not connected, accepting connect from 192.168.133.62)
id=5 (not connected, accepting connect from 192.168.133.100)

我们可以看到集群的状态都还没有启动,都是not connected状态。
--------------------------------------------------------------------------------
   七:启动数据节点[192.168.133.101, 192.168.133.102]:

[root@localhost ~]#cd /usr/local/mysql/bin

[root@localhost bin]#./ndbd

启动SQL节点[192.168.133.62,192.168.133.100]:

[root@localhost mysql]# ./bin/mysqld_safe &
 
至此,所有节点已经启动完成,让我们来查看系统状态:

Cluster Configuration
---------------------
[ndbd(NDB)]     2 node(s)
id=2    @192.168.133.101  (Version: 7.1.10, Nodegroup: 0, Master)
id=3    @192.168.133.102  (Version: 7.1.10, Nodegroup: 0)

[ndb_mgmd(MGM)] 1 node(s)
id=1    @192.168.133.98  (Version: 7.1.10)

[mysqld(API)]   2 node(s)
id=4    @192.168.133.62  (Version: 7.1.10)
id=5    @192.168.133.100  (Version: 7.1.10)
--------------------------------------------------------------------------------
    八:测试:
   在192.168.133.62上执行以下命令:
   #mysql
    mysql> use ndbdatabase;
  Database changed
  mysql> create table test (id int) engine=ndb;
  Query OK, 0 rows affected (0.10 sec)
 
  mysql> show create table test\G;
  *************************** 1. row ***************************
         Table: test
  Create Table: CREATE TABLE `test` (
    `id` int(11) DEFAULT NULL
  ) ENGINE=ndbcluster DEFAULT CHARSET=latin1
  1 row in set (0.00 sec)
 
  ERROR:
  No query specified
 
  mysql> insert into test values(1);
  Query OK, 1 row affected (0.00 sec)
 
  mysql> select * from test;
  +------+
  | id   |
  +------+
  |    1 |
  +------+
  1 row in set (0.00 sec)
 
  mysql>

在192.168.133.100上执行以下命令,验证以上操作:
  [root@localhost test]# mysql
  Welcome to the MySQL monitor.  Commands end with ; or \g.
  Your MySQL connection id is 4
  Server version: 5.1.51-ndb-7.1.10-log Source distribution
 
  Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
  This software comes with ABSOLUTELY NO WARRANTY. This is free software,
  and you are welcome to modify and redistribute it under the GPL v2 license
 
  Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
 
  mysql> show databases;
  +--------------------+
  | Database           |
  +--------------------+
  | information_schema |
  | mysql              |
  | ndbdatabase        |
  | ndbinfo            |
  | test               |
  +--------------------+
  5 rows in set (0.01 sec)
 
  mysql> use ndbdatabase;
  Database changed
  mysql> show tables;
  +-----------------------+
  | Tables_in_ndbdatabase |
  +-----------------------+
  | test                  |
  +-----------------------+
  1 row in set (0.00 sec)
 
  mysql> show create table test\G;
  *************************** 1. row ***************************
         Table: test
  Create Table: CREATE TABLE `test` (
    `id` int(11) DEFAULT NULL
  ) ENGINE=ndbcluster DEFAULT CHARSET=latin1
  1 row in set (0.02 sec)
 
  ERROR:
  No query specified
 
  mysql> select * from test;
  +------+
  | id   |
  +------+
  |    1 |
  +------+
  1 row in set (0.01 sec)
 
  mysql>

验证表明,集群工作正常.
--------------------------------------------------------------------------------
    九:破坏性测试:
  1,关闭其中一个数据节点,验证结果表明,集群工作正常,

   以下操作在数据节点2[192.168.133.102]上执行,如下:
    [root@localhost bin]# ps -ef | grep ndbd
  root      7541     1  0 01:52 ?        00:00:00 ./ndbd –nodeid=3 –initial
  root      7542  7541  0 01:52 ?        00:02:39 ./ndbd –nodeid=3 –initial
  root      9931  3295  0 20:47 pts/1    00:00:00 grep ndbd
  [root@localhost bin]# kill 7541 7542
  [root@localhost bin]# ps -ef | grep ndbd
  root      9933  3295  0 20:47 pts/1    00:00:00 grep ndbd
  [root@localhost bin]# ifconfig
  eth0      Link encap:Ethernet  HWaddr 00:50:56:B8:00:13
            inet addr:192.168.133.102  Bcast:192.168.133.255  Mask:255.255.255.0
            inet6 addr: fe80::250:56ff:feb8:13/64 Scope:Link
            UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
            RX packets:19511513 errors:0 dropped:0 overruns:0 frame.:0
            TX packets:19957492 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:1000
            RX bytes:1781288143 (1.6 GiB)  TX bytes:1899963551 (1.7 GiB)
            Base address:0x2000 Memory:d8920000-d8940000
          
          
  lo        Link encap:Local Loopback
            inet addr:127.0.0.1  Mask:255.0.0.0
            inet6 addr: ::1/128 Scope:Host
            UP LOOPBACK RUNNING  MTU:16436  Metric:1
            RX packets:597990 errors:0 dropped:0 overruns:0 frame.:0
            TX packets:597990 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:0
            RX bytes:51521498 (49.1 MiB)  TX bytes:51521498 (49.1 MiB)
 
  [root@localhost bin]#
--------------------------------------------------------------------------------
   十:去管理节点看集群的状态:
    ndb_mgm> show
  Cluster Configuration
  ---------------------
  [ndbd(NDB)]     2 node(s)
  id=2    @192.168.133.101  (Version: 7.1.10, Nodegroup: 0, Master)
  id=3 (not connected, accepting connect from 192.168.133.102)
 
  [ndb_mgmd(MGM)] 1 node(s)
  id=1    @192.168.133.98  (Version: 7.1.10)
 
  [mysqld(API)]   2 node(s)
  id=4    @192.168.133.62  (Version: 7.1.10)
  id=5    @192.168.133.100  (Version: 7.1.10)
 
    ndb_mgm>

表明192.168.133.102上的数据节点确实当掉了.

    去mysql节点1[192.168.133.62]做如下操作:
    [root@localhost setup]# mysql
  [root@localhost setup]# ifconfig
  eth0      Link encap:Ethernet  HWaddr 00:50:56:B8:00:0F
            inet addr:192.168.133.62  Bcast:192.168.133.255  Mask:255.255.255.0
            inet6 addr: fe80::250:56ff:feb8:f/64 Scope:Link
            UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
            RX packets:7603400 errors:0 dropped:0 overruns:0 frame.:0
            TX packets:4072260 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:1000
            RX bytes:684602777 (652.8 MiB)  TX bytes:402432650 (383.7 MiB)
            Base address:0x2000 Memory:d8920000-d8940000
 
  lo        Link encap:Local Loopback
            inet addr:127.0.0.1  Mask:255.0.0.0
            inet6 addr: ::1/128 Scope:Host
            UP LOOPBACK RUNNING  MTU:16436  Metric:1
            RX packets:203352 errors:0 dropped:0 overruns:0 frame.:0
            TX packets:203352 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:0
            RX bytes:11961759 (11.4 MiB)  TX bytes:11961759 (11.4 MiB)
 
  [root@localhost setup]# mysql
  Welcome to the MySQL monitor.  Commands end with ; or \g.
  Your MySQL connection id is 9
  Server version: 5.1.51-ndb-7.1.10-log Source distribution
 
  Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
  This software comes with ABSOLUTELY NO WARRANTY. This is free software,
  and you are welcome to modify and redistribute it under the GPL v2 license
 
  Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
 
  mysql> show databases;
  +--------------------+
  | Database           |
  +--------------------+
  | information_schema |
  | mysql              |
  | ndbdatabase        |
  | ndbinfo            |
  | test               |
  +--------------------+
  5 rows in set (0.00 sec)
 
  mysql> use ndbdatabase;
  Database changed
  mysql> show tables;
  +-----------------------+
  | Tables_in_ndbdatabase |
  +-----------------------+
  | test                  |
  +-----------------------+
  1 row in set (0.01 sec)
 
  mysql> select * from test;
  +------+
  | id   |
  +------+
  |    1 |
  +------+
  1 row in set (0.00 sec)
 
  mysql>

以上操作表明在一个数据节点当机后,集群依然工作正常
分享到:
评论

相关推荐

    CentOS8部署Mysql NDB Cluster8+Mysql Router8方案及应用.pdf

    在CentOS8上部署MySQL NDB Cluster 8及Mysql Router 8,需要经过一系列详细步骤,包括MySQL的卸载、统一配置、各个节点的安装以及集群验证和管理。 **一、MySQL卸载** 在安装新版本之前,首先确保系统中没有旧的...

    MySQL Cluster NDB 7.3 and MySQL Cluster NDB 7.4 官方说明翻译

    为了保持最佳性能和稳定性,建议使用最新的稳定版本,如 MySQL Cluster NDB 7.3,而 MySQL Cluster NDB 7.4 作为开发者预览版,适用于测试和评估新功能。 总之,MySQL Cluster NDB 7.3 和 7.4 提供了一种高效、可靠...

    mysql集群安装和初步配置.docx

    9. **启动与验证**:安装完成后,启动MySQL集群服务,并进行基本的连接测试和功能验证,确保集群正常运行且能够正确处理数据。 10. **维护与监控**:在集群运行后,持续监控系统的性能和状态,定期备份数据,及时...

    MySQL集群安装配置

    #### 二、MySQL Cluster的下载与安装 1. **下载:** 由于我们的服务器使用的是Ubuntu操作系统,因此我们需要从MySQL官方下载适用于Debian系列操作系统的MySQL Cluster安装包。下载地址为:[MySQL Cluster ...

    MYSQL的集群的安装与配置.pdf

    以下是对MySQL集群安装与配置的详细解析: 1. **准备工作**: - 首先,你需要至少6台机器,每台机器分配一个IP地址,例如192.168.0.231到192.168.0.236。这些机器将分别作为MGM节点、SQL节点和NDBD节点。 - 确保...

    mysql分布式集群安装

    本文将详细介绍MySQL Cluster 7.5.6版本的安装配置过程,包括集群的规划、安装部署、启动与停止以及简单的SQL测试。 #### 二、集群规划与前期准备 **1. 规划** - 管理节点:选择两台服务器(IP地址分别为10.68.23...

    MYSQL集群测试

    9. 硬件与操作系统选择:测试环境的硬件配置和操作系统的选择对测试结果有很大影响。例如,RedHat Linux 5.5 64位操作系统是文档中提到的一个测试环境。 10. 数据库版本选择:MYSQL集群的版本选择对测试也有影响。...

    mysql ndb集群备份数据库和还原数据库的方法

    MySQL NDB集群是一种高可用性和高性能的数据库解决方案,它通过将数据分布在多个节点上来提高系统的可靠性和可扩展性。在这样的环境中,备份和恢复策略至关重要,以确保在系统出现故障时能够快速恢复服务。以下是对...

    数据库管理\RHEL平台下MYSQL群集配置.

    本节将详细解释MySQL集群的安装及配置流程,包括各个服务器上的具体操作。 **步骤1: 准备环境** 确保每台服务器上没有其他MySQL相关的包存在,可以通过以下命令移除: ```bash rpm -e ``` **步骤2: 安装MySQL** -...

    CentOS安装Mysql_Cluster集群

    本文档详细介绍了如何在CentOS环境下安装和配置Mysql_Cluster集群,并针对不同节点进行了详细的安装步骤指导,以及相关的功能测试方法。通过本文的学习,读者可以更好地理解和掌握Mysql_Cluster集群的部署与维护流程...

    MySQL Cluster NDB 7.3和MySQL Cluster NDB 7.4的已知限制

    10. 版本兼容性:在升级到MySQL Cluster NDB 7.3和7.4时,可能存在与旧版本不兼容的问题,需要仔细评估和测试。 综上所述,MySQL Cluster NDB 7.3和7.4虽然提供了强大的分布式数据库功能,但也有其独特的限制和挑战...

    mysql集群配置教程

    4. **权限配置**:更改MySQL安装目录及其子目录的所有者为`mysql`用户,并设置适当的权限。同时,为`data`目录设置权限,确保MySQL可以在此写入数据。 5. **初始化MySQL**:使用`mysql_install_db`脚本初始化MySQL...

    mysql集群7.1.29配置文档linux

    **管理节点**:管理MySQL集群内的其他节点,包括配置数据管理、节点的启动与停止以及备份运行等任务。通常情况下,在启动其他类型的节点之前应首先启动管理节点。 **数据节点**:用于存储集群中的数据。其数量取决...

    Linux 下安装 Mysql5.0

    #### 第三步:编译与安装 接下来,需要进入解压后的目录并执行`configure`脚本来定制安装选项。以下是一些重要的配置参数: - `--prefix`: 指定MySQL的安装路径。 - `--localstatedir`: MySQL数据文件存放的位置。 -...

    mysql集群安装.pdf

    本文档主要介绍了如何在Linux环境下安装MySQL 5.1版本的集群,包括管理节点、数据节点和SQL节点的配置。 在安装MySQL集群前,需要注意选择适合的操作系统,文档中推荐使用CentOS 6.5,因为这个版本在集群配置方面有...

    MySQL Cluster搭建与测试

    1. 安装MySQL Cluster软件包,包括SQL节点和NDB数据节点。 2. 配置主配置文件config.ini,设定节点类型、数量、冗余级别和其他参数。 3. 初始化管理节点,创建集群配置。 4. 启动管理节点,然后依次启动SQL节点和NDB...

    mysql集群安装部署.docx

    MySQL集群安装部署手册详细介绍了如何在分布式环境中搭建高可用、高冗余的MySQL集群,以确保系统的稳定性和数据安全性。MySQL Cluster是专为分布式计算设计的,它利用NDB存储引擎,采用shared-nothing架构,将数据...

Global site tag (gtag.js) - Google Analytics