1、準備三臺服務器2、為三臺機器分別安裝Linux操作系統(OracleLinux/RHEL6.5x86_64bit)3、分別IP地址管理節點192.168.1.110(負責管理整個集群)SQL節點&nb..
1、準備三臺服務器
2、為三臺機器分別安裝Linux操作系統(Oracle Linux / RHEL 6.5 x86_64bit)
3、分別IP地址
管理節點 192.168.1.110 (負責管理整個集群)
SQL節點 192.168.1.111 (負責操作數據庫)
SQL節點 192.168.1.112 (負責操作數據庫)
數據節點 192.168.1.111 (負責存儲數據)
數據節點 192.168.1.112 (負責存儲數據)
SQL節點和數據節點可以同在一臺機器上
4、修改三臺服務器的/etc/hosts文件,修改完后的內容如下:
127.0.0.1 localhost localhost.domain
192.168.1.110 node01
192.168.1.111 node02
192.168.1.112 node03
5、修改三臺服務器的/etc/sysconfig/nework文件,修改完后的內容分別如下:
NETWORKING=yes
HOSTNAME=node01
GATEWAY=192.168.1.1 (網關地址因所處網絡的不同而不同)
NETWORKING=yes
HOSTNAME=node02
GATEWAY=192.168.1.1 (網關地址因所處網絡的不同而不同)
NETWORKING=yes
HOSTNAME=node03
GATEWAY=192.168.1.1 (網關地址因所處網絡的不同而不同)
6、分別重啟三臺服務器
7、下載NDB集群軟件mysql-cluster-advanced-7.3.5-linux-glibc2.5-x86_64.tar.gz
集群軟件有三種格式:
a、以tar.gz結尾的二制進格式
b、以rpm結尾的rpm包形式
c、以源文件編譯安裝方式
rpm包安裝方式,由于是自動安裝的,所以不方便配置軟件安裝位置和數據存儲位置
所以通常選用.tar.gz結尾的二進制格式的安裝文件
注意:mysql-cluster-advanced-7.3.5-linux-glibc2.5-x86_64.tar.gz包含了mysql數據庫軟件和NDB集群軟件
8、分別復制mysql-cluster-advanced-7.3.5-linux-glibc2.5-x86_64.tar.gz文件到三臺服務器上的/usr/local/目錄下
9、新建用戶mysql
# groupadd mysql
# useradd -r -g mysql mysql (由于mysql用戶只是用于安裝配置NDB集群或mysql軟件,而不用用于登陸系統)
(所以以-r參數來創建mysql用戶,并且不用為該用戶設置密碼)
10、分別在三臺服務器上解壓mysql-cluster-advanced-7.3.5-linux-glibc2.5-x86_64.tar.gz文件
# cd /usr/local
# tar zxvf mysql-cluster-advanced-7.3.5-linux-glibc2.5-x86_64.tar.gz
# ln -s mysql-cluster-advanced-7.3.5-linux-glibc2.5-x86_64 mysql
# chown -R mysql.mysql mysql-cluster-advanced-7.3.5-linux-glibc2.5-x86_64
# cd mysql
# chown -R mysql.mysql .
配置完成以后,結果如下
11、在192.168.1.111和192.168.1.112兩個數據節點(兩臺服務器)上安裝mysql數據庫軟件
由于是二進制安裝,所以mysql數據庫軟件就安裝在/usr/local/mysql下,
但數據庫的數據可以存放到其它地方,如/u01/app/mysql/data/下面
注意:以下命令在兩臺數據節點服務器上都要執行
# mkdir -p /u01/app/mysql/data
# chown -R mysql.mysql /u01
# cd /usr/local/mysql
# scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/u01/app/mysql/data --user=mysql
執行完這條命令以后,數據庫的數據文件(包括mysql,test , performance_schema等數據庫)就被安裝到了
/u01/app/mysql/data目錄下了
# cp bin/ndbd /usr/local/bin/
# cp bin/ndbmtd /usr/local/bin/
然后將啟動數據庫服務的啟動文件復制到/etc/rc.d/init.d/目錄下
# cp support-files/mysql.server /etc/rc.d/init.d/mysqld (改名)
執行完上面這條命令以后,就可以使用service mysqld start | stop | restart命令來管理數據庫服務了
# cp my.cnf /etc/my.cnf
# vi /etc/my.cnf
[mysqld]
ndbcluster
basedir=/usr/local/mysql
datadir=/u01/app/mysql/data
port=3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysql_cluster]
ndb-connectstring=192.168.1.110
再次注意:以上命令在兩臺數據節點服務器上都要執行
到此,數據節點和SQL節點的安裝配置就結束了,如果數據節點和SQL節點是分開在不同的機器上,則每個數據節點
和每個SQL節點都要執行以上命令。
12、在管理節點上進行安裝配置
由于第10步已經解壓縮mysql-cluster-advanced-7.3.5-linux-glibc2.5-x86_64.tar.gz 安裝包到了/usr/local
目錄下,并進行了軟連接等操作,所以這些工作就不用重復做了,接著往下配置即可
# cd /usr/local/mysql
# mkdir mysql-cluster (創建mysql-cluster目錄,后面啟動集群管理服務時要用)
# cp bin/ndb_mgm* /usr/local/bin/
# cd /var/lib
# mkdir mysql-cluster
# cd mysql-cluster
# vi 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 default]
# This the default; however, you can use any
# port that is free for all the hosts in the cluster
# Note: It is recommended that you do not specify the port
# number at all and simply allow the default value to be used
# instead
[ndb_mgmd]
hostname=192.168.1.110 # Hostname or IP address of MGM node
datadir=/var/lib/mysql-cluster # Directory for MGM node log files
NodeId=1
[ndbd]
hostname=192.168.1.111 # Hostname or IP address
datadir=/u01/app/mysql/data # Directory for this data node's data files
NodeId=2
[ndbd]
hostname=192.168.1.112 # Hostname or IP address
datadir=/u01/app/mysql/data # Directory for this data node's data files
NodeId=3
[mysqld]
hostname=192.168.1.111 # Hostname or IP address
NodeId=4 # (additional mysqld connections can be
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com