最近搭了mysql集群,在搭建过程中遇到了一些问题,分享出来,希望同志们少走些弯路. 其实步骤不难,只不过网上有些帖子错误引导,导致多走很多弯路,算了不喷了... 总体介绍下步骤, 1 找两台pc或使用vm虚拟,总之需要模拟集群环境 2 下载mysql 3 安装mysql,添加配置文件 4 启动结点 5 测试,注意表引擎阿 1 我找了两台机器, 192.168.0.102 作管理节点, 数据节点 , sql节点 192.168.0.104 作数据节点,sql节点 两台机器,设置好ip,hab,两跟网线,防火墙关了,104开启来宾用户,102使用来宾访问104共享目录,当然ping通是前台,访问共享目录只是为了复制文件方便. 2 下载mysql http://dev.mysql.com/downloads/cluster/ mysql-cluster-gpl-7.4.8-win32.msi版本即可, 访问网站后不用login,直接下就行. 3 a 安装mysql,一般默认安装在C:\Program Files (x86)\MySQL\MySQL Cluster 7.4,下一步就行.(我当时选的complete.) b 添加配置文件 在 C:\Program Files (x86)\MySQL\MySQL Cluster 7.4 目录下需要添加两个配置文件, config.ini my.ini config文件内容如下: [ndbd default] NoOfReplicas=2 MaxNoOfTables=1024 MaxNoOfUniqueHashIndexes=1024 MaxNoOfOrderedIndexes=1024 MaxNoOfAttributes=10000 [ndb_mgmd] NodeId=1 HostName=192.168.0.102 DataDir=C:\Program Files\MySQL\MySQL Cluster 7.4\data [ndbd] NodeId=21 HostName=192.168.0.102 DataDir=C:\Program Files\MySQL\MySQL Cluster 7.4\data [ndbd] NodeId=22 HostName=192.168.0.104 DataDir=C:\Program Files\MySQL\MySQL Cluster 7.4\data [mysqld] NodeId=11 HostName=192.168.0.102 [mysqld] NodeId=12 HostName=192.168.0.104 再搞my.ini [mysqld] character_set_server=utf8 basedir="C:\Program Files (x86)\MySQL\MySQL Cluster 7.4" datadir="C:\Program Files (x86)\MySQL\MySQL Cluster 7.4" sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES ndbcluster ndb-connectstring=192.168.0.102 explicit_defaults_for_timestamp=true [mysql_cluster] ndb-connectstring=192.168.0.102 ok,102搞定了. 现在搞104,同样安装mysql,之需要配置my.ini就可以了,把102的my.ini拷贝过去就可以. 4 启动102 4.1 启动102 管理节点, 在102 开启一个命令窗口,执行如下: cd C:\Program Files (x86)\MySQL\MySQL Cluster 7.4\bin ndb_mgmd.exe --config-file="C:\Program Files (x86)\MySQL\MySQL Cluster 7.4\config.ini" --configdir="C:\Program Files (x86)\MySQL\MySQL Cluster 7.4" 4.2 启动102 数据节点,再开一个新窗口 cd C:\Program Files (x86)\MySQL\MySQL Cluster 7.4\bin ndbd.exe --initial 4.3 启动102 sql节点 a 保证mysql服务启动正常 cd C:\Program Files (x86)\MySQL\MySQL Cluster 7.4\bin 如果没有mysql服务,需要创建服务,再启动,(如果有先都删了吧,先停服务 net stop 服务名, 再进入bin目录 mysqld -remove 服务名) cd "C:\Program Files (x86)\MySQL\MySQL Cluster 7.4\bin" mysqld --install net start mysql b 启动sql节点 开启新的命令窗口, cd C:\Program Files (x86)\MySQL\MySQL Cluster 7.4\bin mysqld 5 启动104 5.1 启动104数据节点,同4.2 5.2 启动104 sql节点,同4.3 6 测试各个节点启动情况, 在102开启新的命令行窗口, cd C:\Program Files (x86)\MySQL\MySQL Cluster 7.4\bin ndb_mgm.exe show 结果这样才行: [ndbd(NDB)] 2 node(s) id=21 @192.168.0.102 (mysql-5.6.24 ndb-7.4.6, Nodegroup: 0, *) id=22 @192.168.0.104 (mysql-5.6.24 ndb-7.4.6, Nodegroup: 0) [ndb_mgmd(MGM)] 1 node(s) id=1 @192.168.0.102 (mysql-5.6.24 ndb-7.4.6) [mysqld(API)] 2 node(s) id=11 @192.168.0.102 (mysql-5.6.24 ndb-7.4.6) id=12 @192.168.0.104 (mysql-5.6.24 ndb-7.4.6) 表示你的各个节点,都是正常工作的.如果不对,回帖,哥们帮你看看.上边这一步结果,我也搞了两天,马的各种sb错. 万里长征你已经过了雪山了,快熬出来了. 测试集群同步: 我使用一个软件 navicat, 连接mysql的客户端工具,还算好事,这个自己baidu下吧, 1 有个权限的事,不过我不确定同步有没有影响,给104的root用户提供一个读写的权限,我记得主从应该设权限的,集群不是很确定,不过我也设置了 grant all privileges on *.* to 'root'@'192.168.0.104' identified by '123456' with grant option 翻译一下 给104的用户名是root密码是123456的用户提供权限. 2 表引擎,ndbccluster,如果不是这个引擎,表同步肯定没戏 在102创建一个数据a,在a下建一个表b,填两条数据,然后到104的数据库上看看,是不是有a跟b了,如果有了,你就成功了.
mysql 安装测试ok_win7 mysql 集群搭建,自测ok
最新推荐文章于 2024-07-30 21:35:14 发布