mysql集群安装(centos)
永不放棄,一切皆有可能!!!
只為成功找方法,不為失敗找借口!
mysql集群安裝(centos)
mysql cluster :
?
1. 基于NDB Cluster 的分布式數(shù)據(jù)庫系統(tǒng)
2. mysql集群中各服務(wù)器節(jié)點(diǎn)不共享數(shù)據(jù)
3. 在mysql cluster中節(jié)點(diǎn)指的是進(jìn)程,區(qū)別于其他的集群中節(jié)點(diǎn)指的是計算機(jī)的情況, 因而在單臺計算機(jī)上可以有任意多的節(jié)點(diǎn)
?
4. 三種節(jié)點(diǎn): 1)管理節(jié)點(diǎn): 管理cluster內(nèi)其他節(jié)點(diǎn); 包括啟動,停止, 備份,配置等;?
在啟動其他節(jié)點(diǎn)前需要先啟動管理節(jié)點(diǎn)
管理節(jié)點(diǎn)不應(yīng)是一臺,否則如果宕機(jī)會導(dǎo)致集群不可用
2)數(shù)據(jù)節(jié)點(diǎn): 保存cluster數(shù)據(jù),?
如果有兩個副本,每個副本有兩個片段,那么就有4個數(shù)據(jù)節(jié)點(diǎn),依此類推
3)sql節(jié)點(diǎn): 用于訪問cluster中數(shù)據(jù)
? 在最低的mysql cluster配置中,至少應(yīng)該有三個節(jié)點(diǎn)
?
?5. 啟動方式:
管理節(jié)點(diǎn): ndb_mgmd數(shù)據(jù)節(jié)點(diǎn): ndbdsql節(jié)點(diǎn): mysqld_ndbcluster ,更改my.cnf配置文件后可用mysqld啟動,下面會有說明 ?
?6. 默認(rèn)端口:
管理節(jié)點(diǎn): 1186數(shù)據(jù)節(jié)點(diǎn): 2202 ?
準(zhǔn)備:
?
1. mysql下載鏈接: ?http://mysql.mirror.kangaroot.net/Downloads/MySQL-Cluster-7.3/
使用 Pietty工具連接linux
?和 winscp工具進(jìn)行文件拷貝
?
2. 3臺服務(wù)器: centos 6.4, 網(wǎng)絡(luò)連接:bridged
192.168.1.136 : 管理節(jié)點(diǎn)
192.168.1.95: 數(shù)據(jù)節(jié)點(diǎn)
? ? 192.168.1.62: sql節(jié)點(diǎn)
?
3. 安裝位置: /usr/local/mysql
? ? 數(shù)據(jù)位置: /usr/local/mysql/data
? ? 日志位置: /usr/local/mysql/log
?
4. 相關(guān)centos指令:
查看centos版本: cat /etc/redhat-release查看是否已安裝mysql: rpm -qa | grep mysql查看服務(wù)狀態(tài): service mysql staus關(guān)閉當(dāng)前sql服務(wù): /etc/init.d/mysqld stop
啟動當(dāng)前sql服務(wù): /etc/init.d/mysqld start
重啟sql服務(wù): /etc/init.d/mysqld restart查看進(jìn)程是否關(guān)閉: ps -ef | grep mysql 卸載已安裝的mysql: rpm -e --allmatches --nodeps mysql mysql-server 刪除相關(guān)目錄: rm -rf /usr/local/mysql rm -rf /var/mysql rm -rf /var/lib/mysql 組和用戶添加: groupadd mysql useradd mysql -g mysql 解壓: tar -zxvf mysql-cluster-gpl-7.3.4-linux-glibc2.5-i686.tar.gz 重命名文件夾: mv mysql-cluster-gpl-7.3.4-linux-glibc2.5-i686 mysql 更改文件或文件夾所有者: chown mysql:mysql mysql (mysql: mysql中前面為用戶,后面為組) 運(yùn)行腳本: scripts/mysql_install_db --user=mysql (--user=mysql指示用戶身份為mysql組) 創(chuàng)建文件夾: mkdir /var/lib/mysql-cluster(加上-p時如果目錄不存在則新建一個目錄) 創(chuàng)建或者編輯文件: vi + /var/lib/mysql-cluster/config.ini vi filename :打開或新建文件,并將光標(biāo)置于第一行首 vi +n filename :打開文件,并將光標(biāo)置于第n行首 vi + filename :打開文件,并將光標(biāo)置于最后一行首 vi +/pattern filename:打開文件,并將光標(biāo)置于第一個與pattern匹配的串處 vi -r filename :在上次正用vi編輯時發(fā)生系統(tǒng)崩潰,恢復(fù)filename vi filename....filename :打開多個文件,依次進(jìn)行編輯 永久關(guān)閉防火墻:chkconfig --level 35 iptables off 查看防火墻狀態(tài): /etc/init.d/iptables status ?
安裝:
?
1. 安裝前檢查是否已經(jīng)安裝,如已安裝卸載重新安裝
查看是否已安裝mysql: rpm -qa | grep mysql查看服務(wù)狀態(tài): service mysql staus關(guān)閉當(dāng)前sql服務(wù): /etc/init.d/mysqld stop
啟動當(dāng)前sql服務(wù): /etc/init.d/mysqld start
重啟sql服務(wù): /etc/init.d/mysqld restart查看進(jìn)程是否關(guān)閉: ps -ef | grep mysql卸載已安裝的mysql: rpm -e --allmatches --nodeps mysql mysql-server 刪除相關(guān)目錄: rm -rf /usr/local/mysql rm -rf /var/mysql rm -rf /var/lib/mysql ?
?
2. 管理節(jié)點(diǎn)安裝
?在192.168.1.136 上安裝
[root@wish ~]# groupadd mysql //添加組
[root@wish ~]# useradd mysql -g mysql //添加用戶
[root@wish ~]# cd /usr/local
[root@wish local]# tar -zxvf mysql-cluster-gpl-7.3.4-linux-glibc2.5-i686.tar.gz //解壓 [root@wish local]# mv mysql-cluster-gpl-7.3.4-linux-glibc2.5-i686 mysql //重命名 ?
[root@wish local]# chown mysql:mysql mysql //更改文件夾所有者
[root@wish local]# cd mysql
[root@wish mysql]# scripts/mysql_install_db --user=mysql //安裝 ?
3.管理節(jié)點(diǎn)配置
[root@wish mysql]# cd ~
[root@wish ~]# mkdir /var/lib/mysql-cluster
[root@wish ~]# mkdir /usr/local/mysql/log
[root@wish ~]# cd /var/lib/mysql-cluster [root@wish mysql-cluster]# vi + /var/lib/mysql-cluster/config.ini [root@wish mysql-cluster]# vi + /var/lib/mysql-cluster/config.ini ?
config.ini文件內(nèi)容如下:
[NDBD DEFAULT]
NoOfReplicas=1
[NDB_MGMD]
#設(shè)置管理節(jié)點(diǎn)服務(wù)器
HostName=192.168.1.136 DataDir=/usr/local/mysql/data [NDBD] #設(shè)置存儲節(jié)點(diǎn)服務(wù)器(NDB節(jié)點(diǎn)) HostName=192.168.1.95 DataDir=/usr/local/mysql/data #[NDBD] #第二個NDB節(jié)點(diǎn) [MYSQLD] #設(shè)置SQL節(jié)點(diǎn)服務(wù)器 HostName=192.168.1.62 #[MYSQLD] #第二個SQL節(jié)點(diǎn)
?
?
啟動管理節(jié)點(diǎn):
/usr/local/mysql/bin/ndb_mgmd -f /var/lib/mysql-cluster/config.ini //-f表示后后面的參數(shù)是啟動的配置參數(shù)文件 ?我們看到管理節(jié)點(diǎn)的端口1186已被監(jiān)聽:
?
?
關(guān)閉管理節(jié)點(diǎn):
[root@wish ~]# /usr/local/mysql/bin/ndb_mgm -e shutdown
Connected to Management Server at: localhost:1186
1 NDB Cluster node(s) have shutdown.
Disconnecting to allow management server to shutdown. ?
?
?
4. ?數(shù)據(jù)節(jié)點(diǎn)和sql節(jié)點(diǎn)安裝
?1)?192.168.1.95: 數(shù)據(jù)節(jié)點(diǎn),?192.168.1.62:sql節(jié)點(diǎn) ?上分別以上面同樣的方式新建用戶和組
groupadd mysql
useradd mysql -g mysql ?
?2) 將管理節(jié)點(diǎn)/usr/local/mysql 目錄復(fù)制至數(shù)據(jù)節(jié)點(diǎn)和節(jié)點(diǎn) ?
?
?
5. sql節(jié)點(diǎn)配置:
[root@localhost mysql]# cp support-files/my-default.cnf /etc/my.cnf
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld cd /etc
vi my.cnf添加如下內(nèi)容:
[MYSQLD]
ndbcluster
ndb-connectstring=192.168.1.136
ndb-connectstring=192.168.1.136 [NDB_MGM] connect-string=192.168.1.136 sql節(jié)點(diǎn)啟動: service mysqld start(需啟動管理節(jié)點(diǎn))
[root@localhost mysql]# service mysqld start
Starting MySQL............................................................................................................................. SUCCESS! sql節(jié)點(diǎn)關(guān)閉:?/usr/local/mysql/bin/mysqladmin -uroot shutdown
?
?
6. 數(shù)據(jù)節(jié)點(diǎn)配置
[root@localhost mysql]# cp support-files/my-default.cnf /etc/my.cnf
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld cd /etc/
vi my.cnf添加:[MYSQLD]
ndbcluster
ndb-connectstring=192.168.1.136
[MYSQL_CLUSTER]
ndb-connectstring=192.168.1.136 [NDB_MGM] connect-string=192.168.1.136 ?數(shù)據(jù)節(jié)點(diǎn)啟動:
/usr/local/mysql/bin/ndbd --initial ( 需要啟動管理節(jié)點(diǎn))
[root@localhost support-files]# /usr/local/mysql/bin/ndbd --initial
2014-06-22 17:31:08 [ndbd] INFO -- Angel connected to '192.168.1.136:1186' 2014-06-22 17:31:08 [ndbd] INFO -- Angel allocated nodeid: 2 ?
測試:
?
在數(shù)據(jù)節(jié)點(diǎn)上創(chuàng)建數(shù)據(jù)庫
[root@localhost mysql]# /etc/rc.d/init.d/mysqld status
[root@ localhost ~]# /etc/rc.d/init.d/mysqld start
[root@ localhost ~]# /usr/local/mysql/bin/mysql –u root -p
mysql> show database;
mysql> create database wishtestdb;
mysql> use wishtestdb; mysql> create table table1_test (id varchar(50), name varchar(100)); mysql> insert into table1_test(‘a(chǎn)bc’, ‘wish’);
在sql節(jié)點(diǎn)上查看數(shù)據(jù):
mysql> use wishtestdb;
mysql> select * from table1_test; ?
轉(zhuǎn)載于:https://www.cnblogs.com/liangyihui/p/5886799.html
總結(jié)
以上是生活随笔為你收集整理的mysql集群安装(centos)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 盼友再世重逢下一句是什么呢?
- 下一篇: php function集合