Vincent.Chan‘s Blog

常用链接

统计

积分与排名

网站

最新评论

Mysql 集群简介和配置

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

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

 

MySQL Cluster Components

 

 

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

1 Sql 结点( 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 node Management 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.251 and 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维持数据不同。

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

    3)Manager server

    管理SQl node Data node 状态。

 

 

6 深入了解

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

posted on 2006-06-28 23:45 Vincent.Chen 阅读(232) 评论(0)  编辑  收藏 所属分类: Database


只有注册用户登录后才能发表评论。


网站导航: