`

Mysql 集群简介和配置

阅读更多

1. 先了解一下你是否应该用mysql集群。

减少数据中心结点压力和大数据量处理,采用把mysql分布,一个或多个application对应一个mysql数据库。把几个mysql数据库公用的数据做出共享数据,例如购物车,用户对象等等,存在数据结点里面。其他不共享的数据还维持在各自分布的mysql数据库本身中。

 

MySQL Cluster Components

 

 

2. 集群Mysql中名称概念.(如上图)

1Sql结点(SQL node--上图对应为mysqld:分布式数据库。包括自身数据和查询中心结点数据.

2)数据结点(Data node -- ndbd):集群共享数据(内存中).

3)管理服务器(Management Server – ndb_mgmd):集群管理SQL node,Data node.

 

3.配置

      mysql-max版本,当然现在mysql集群系统windonws平台上面不被支持.

      安装mysql就不多说了,网上一打堆,简明扼要。

      A:192.168.1.251 – Data nodeManagement Server.

      B:192.168.1.254 – SQL node.

当然,你也可以让一个机器同时为3者。

A,B my.inf加上:

      

[MYSQLD]                       

ndbcluster                     # run NDB engine

ndb-connectstring=192.168.1.251 # location of MGM node

 

# Options for ndbd process:

[MYSQL_CLUSTER]                

ndb-connectstring=192.168.1.251 # location of MGM node

 

A: /var/lib/mysql-cluster/config.ini

[NDBD DEFAULT]   

NoOfReplicas=1   # Number of replicas

DataMemory=80M   # How much memory to allocate for data storage

IndexMemory=18M  # How much memory to allocate for index storage

                 # For DataMemory and IndexMemory, we have used the

                 # default values. Since the "world" database takes up

                 # only about 500KB, this should be more than enough for

                 # this example Cluster setup.

# TCP/IP options:

[TCP DEFAULT]    

portnumber=2202  # This the default; however, you can use any

                 # port that is free for all the hosts in cluster

                 # Note: It is recommended beginning with MySQL 5.0 that

                 # you do not specify the portnumber at all and simply allow

                 # the default value to be used instead

# Management process options:

[NDB_MGMD]                     

hostname=192.168.1.251          # Hostname or IP address of MGM node

datadir=/var/lib/mysql-cluster # Directory for MGM node logfiles

# Options for data node "A":

[NDBD]                         

                               # (one [NDBD] section per data node)

hostname=192.168.1.251          # Hostname or IP address

datadir=/usr/local/mysql/data  # Directory for this data node's datafiles

# SQL node options:

[MYSQLD]

hostname=192.168.1.254

#[MYSQLD] #这个相当于192.168.1.251

 

 

4.      启动测试

 

·        在管理服务器上面(这里是192.168.1.251):

·               shell>ndb_mgmd -f /var/lib/mysql-cluster/config.ini

 

·        在数据结点服务器上面(依然是192.168.1.251and more):

·               shell>ndbd--initial (第一次时加--initial参数)

 

·        SQL结点服务器上面(192.168.1.254):

·               shell>mysqld &

 

251上面察看

 

./ndb_mgm

-- NDB Cluster -- Management Client --

ndb_mgm> show

Connected to Management Server at: 192.168.1.251:1186

Cluster Configuration

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

[ndbd(NDB)]    1 node(s)

id=2   @192.168.1.251 (Version:5.0.22, Nodegroup: 0, Master)

 

[ndb_mgmd(MGM)] 1 node(s)

id=1   @192.168.1.251 (Version:5.0.22)

 

[mysqld(API)]  1 node(s)

id=3   @192.168.1.254 (Version:5.0.22)

 

ok

关闭集群:

shell>ndb_mgm -e shutdown

 

 

5.基本的集群说明

1)在mysql集群中.table引擎为NDBCLUSTER时才做集群,其他非NDBCLUSTER表和一般mysql数据库表一样,不会共享数据. NDBCLUSTER表数据存储在Data node服务器内存中Data Node可以为1台或多台服务器,它们之间存放共享数据。Data Node服务器可以分组数据copy

例如:2,3,4,5为四台Data Node服务器ID. 2,3为组0 45为组1 23维持数据相同,45维持数据相同。 组0和组1维持数据不同。

   2sql node服务器中,非NDBCLUSTER数据存在本身数据库中,table引擎为NDBCLUSTER时,数据存储在Data Node中。当查询NDBCLUSTER表时,它会从Data node集群中提起数据.

   3)Manager server

   管理SQl nodeData node状态。

 

 

6深入了解

 

http://dev.mysql.com/doc/refman/5.0/en/ndbcluster.html

 

源自:http://blog.19lou.com/10131711/viewspace-338346

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics