CentOS中mysql cluster安装部署教程
一、安装要求
安装环境CentOS-6.5-32bit
软件名称mysql-cluster-gpl-7.2.25-linux2.6-i686.tar.gz
下载地址http://mysql.mirror.kangaroot./Downloads/
软件包mysql-cluster-gpl-7.2.25-linux2.6-i686.tar.gz
软件包存放目录/usr/local
管理节点(MGM) 192.168.1.71
数据节点1(NDBD1)192.168.1.72
数据节点2(NDBD2)192.168.1.73
sql节点1(SQL1) 192.168.1.74
sql节点2(SQL2) 192.168.1.75
二、安装部署
1.安装前(所有节点服务器需执行)
[root@MGM ]#rpm -qa|grep mysql (查询系统中存在的mysql) [root@MGM ]#rpm -e –nodeps mysql-libs-5.1.71-1.el6.i686 (根据自己查出来的mysql版本)
2.开始部署(所有节点服务器需执行)
[root@MGM ]#groupadd mysql [root@MGM ]#useradd mysql -g mysql [root@MGM ]#cd /usr/local (软件包在此目录下,根据自己存放位置进入) [root@MGM local]#tar -xvfmysql-cluster-gpl-7.2.25-linux2.6-i686.tar.gz [root@MGM local]#mkdir /usr/local/mysql (创建mysql目录) [root@MGM local]#mvmysql-cluster-gpl-7.2.25-linux2.6-i686/ mysql [root@MGM local]#chown -R mysql:mysql mysql/ [root@MGM local]#cd mysql [root@MGM mysql]#scripts/mysql_install_db –user=mysql (管理及数据节点执行这条命令) #scripts/mysql_install_db –user=mysql –datadir=/var/mysql/data (sql节点执行这条命令)
三、集群配置
1.管理节点配置
[root@MGM mysql]#mkdir /var/lib/mysql-cluster [root@MGM ]#mkdir /var/mysql [root@MGM ]#mkdir /var/mysql/data [root@MGM ]#mkdit /var/mysql/log [root@MGM mysql]#vi /var/lib/mysql-cluster/config.ini (添加以下内容) [NDBD DEFAULT] NoOfReplicas=2 #[TCP DEFAULT] #PortNumber=1186 [NDB_MGMD] #设置管理节点服务器 nodeid=1 HostName=192.168.1.71 DataDir=/var/mysql/data [NDBD] nodeid=2 HostName=192.168.1.72 DataDir=/var/mysql/data [NDBD] nodeid=3 HostName=192.168.1.73 DataDir=/var/mysql/data [MYSQLD] nodeid=4 HostName=192.168.1.74 [MYSQLD] nodeid=5 HostName=192.168.1.75 #必须有空的mysqld节点,不然数据节点断开后启动有报错 [MYSQLD] nodeid=6 [mysqld] nodeid=7
拷贝ndb_mgm、ndb_mgmd、config.ini到bin目录
[root@MGM mysql]#cd /usr/local/mysql/bin [root@MGM bin]#cp ./ndb_mgm /usr/local/bin/ [root@MGM bin]#cp ./ndb_mgmd /usr/local/bin/ [root@MGM bin]#cp /var/lib/mysql-cluster/config.ini /usr/local/bin/ [root@MGM bin]#vi /etc/sysconfig/iptables (添加红色方框内容)
[root@MGM bin]/etc/init.d/iptables restart 重启防火墙
2.数据节点配置(所有数据节点需执行)
[root@NDBD1 ]#mkdir /var/mysql [root@NDBD1 ]#mkdir /var/mysql/data [root@NDBD1 ]#mkdit /var/mysql/log [root@NDBD1 ]#/etc/init.d/iptables s (关闭防火墙,也可自行添加开放端口) [root@NDBD1 ]#vi /etc/my.f (添加以下内容) [mysqld] datadir=/var/mysql/data socket=/var/mysql/mysql.sock user=mysql # Disabling symbolic-links is remended to prevent assorted security risks symbolic-links=0 #运行NDB存储引擎 ndbcluster #指定管理节点 ndb-connectstring=192.168.1.71 [MYSQL_CLUSTER] ndb-connectstring=192.168.1.71 [NDB_MGM] connect-string=192.168.1.71 [mysqld_safe] log-error=/var/mysql/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid
3.sql节点配置:(所有sql节点需执行)
[root@SQL1 ]#cd /usr/local/mysql/ [root@SQL1 mysql]#cp support-files/mysql.server /etc/rc.d/init.d/mysqld [root@SQL1 mysql]#chmod +x /etc/rc.d/init.d/mysqld [root@SQL1 mysql]#chkconfig –add mysqld [root@SQL1 mysql]#mkdir /var/mysql [root@SQL1 mysql]#mkdir /var/mysql/data [root@SQL1 mysql]#mkdir /var/mysql/log [root@SQL1 mysql]#chown -R mysql:mysql /var/mysql [root@SQL1 mysql]#ln -s /usr/local/mysql/bin/mysql /usr/bin [root@SQL1 mysql]#ln -s /var/mysql/mysql.sock /tmp/mysql.sock [root@SQL1 mysql]#vi /etc/my.f [mysqld] datadir=/var/mysql/data socket=/var/mysql/mysql.sock user=mysql # Disabling symbolic-links is remended to prevent assorted security risks symbolic-links=0 log-bin = /var/mysql/log/mysql-bin.log max_connections=1000 #以下为mysql 主主模式的配置文件 # 忽略mysql数据库复制 binlog-ignore-db=mysql # 每次增长2 auto-increment-increment=2 # 设置自动增长的字段的偏移量,即初始值为2 auto-increment-offset=1 ndbcluster ndb-connectstring=192.168.1.71 [MYSQL_CLUSTER] ndb-connectstring=192.168.1.71 [NDB_MGM] connect-string=192.168.1.71 [mysqld_safe] log-error=/var/mysql/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid
四、mysql-cluster启动
1.启动mysql-cluster
mysql集群的启动顺序为管理节点->数据节点->SQL节点
mysql集群的关闭顺序为,SQL节点->数据节点->管理节点
2.管理节点
[root@MGM ]#ndb_mgmd -f /var/lib/mysql-cluster/config.ini –initial
(注意第一次或者对config文件进行修改后,打开服务一定要加上initial否则新增加的内容不会被使用)
3.数据节点
[root@NDBD1 ]#/usr/local/mysql/bin/ndbd –initial
(此处同上)
4.sql节点:
[root@SQL1 ]#service mysqld start
5.验证(在管理节点上)
[root@MGM ]#ndb_mgm
ndb_mgm>show
五、测试
1.在sql1节点执行
[root@SQL1 ]#mysql 调用mysql mysql>create database tianyuan; 创建数据库 mysql>use tianyuan; 使用数据库 mysql>create table test(i int,name varchar(10)) engine=ndbcluster; 创建表 mysql>insert into test values(1,'ceshi'); 插入表数据 mysql>select from test; 查询验证
2.在sql2节点验证sql1的数据是否已同步到sql2
[root@SQL2 ]#mysql 调用mysql mysql>show databases; 查询数据库 mysql>use tianyuan; 使用数据库 mysql>select from test; 查询验证
3.可通过中断数据节点或sql节点来验证数据是否会同步。
编程语言
- 宿迁百度关键词排名指南:实现精准营销的关键
- 四川SEO优化怎么做网络推广
- 立昂技术备案老域名收购:如何为您的业务赋能
- 安徽百度关键词seo贵不贵,一般需要多少钱
- 吉林百度快照排名怎么做电话营销
- 多伦新手做SEO怎么做
- 甘肃优化关键词排名推广怎么做论坛营销
- 沙雅SEO网站推广:提升您的在线可见性
- 四川SEO优化如何提升销售额和销售量
- 聂荣网站排名优化:提升网站可见性的全方位指
- 涞水SEO:提升地方企业在线可见性的策略
- 辽宁百度seo排名怎样做网站排名
- 临湘哪有关键词排名优化:提升网站可见度的关
- 黑龙江百度网站优化有没有优惠
- 凉城优化关键词排名推广:提升您的网络可见性
- 萝北整站优化:提升您网站流量和排名的全面指