DBMNG数据库管理与应用

独立思考能力,对于从事科学研究或其他任何工作,都是十分必要的。
当前位置:首页 > MySQL > 技术手册

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。  4,5为组1。  2,3维持数据相同, 4,5维持数据相同。 组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

本站文章内容,部分来自于互联网,若侵犯了您的权益,请致邮件chuanghui423#sohu.com(请将#换为@)联系,我们会尽快核实后删除。
Copyright © 2006-2023 DBMNG.COM All Rights Reserved. Powered by DEVSOARTECH            豫ICP备11002312号-2

豫公网安备 41010502002439号