1. 程式人生 > >[Linux] MySQL Cluster 叢集安裝

[Linux] MySQL Cluster 叢集安裝

管理節點

mysql-mgm

192.168.1.150

資料節點 1

mysql-data01

192.168.1.151

資料節點 2

mysql-data02

192.168.1.152

SQL 節點 1

mysql-01

192.168.1.153

SQL 節點 2

mysql-02

192.168.1.154

軟體下載地址:

1、初始化系統

# 每個節點都操作

#systemctl disable firewalld    #

# vi /etc/selinux/config

SELINUX=disabled

# hostnamectl set-hostname xxx

# cd/usr/local/src/

# tar -zxf mysql-cluster-gpl-7.6.2-linux-glibc2.12-x86_64.tar.gz

# mv mysql-cluster-gpl-7.6.2-linux-glibc2.12-x86_64 /usr/local/mysql

# reboot

2、配置管理節點

# mkdir /var/lib/mysql-cluster

# vi /var/lib/mysql-cluster/config.ini

[ndbd default]

# Options affecting ndbd processes on all data nodes:

NoOfReplicas=2    # Number of replicas

DataMemory=80M    # How much memory to allocate for data storage

IndexMemory=18M   # How much memory to allocate for index storage

#ServerPort=2202   # This the default value; however, you can use any

[ndb_mgmd]

# Management process options:

NodeId=1

HostName=192.168.1.150           # Hostname or IP address of MGM node

DataDir=/var/lib/mysql-cluster  # Directory for MGM node log files

[ndbd]

HostName=192.168.1.151           # Hostname or IP address

NodeId=2                      # Node ID for this data node

DataDir=/usr/local/mysql/data   # Directory for this data node's data files

[ndbd]

# Options for data node "B":

HostName=192.168.1.152          # Hostname or IP address

NodeId=3                        # Node ID for this data node

DataDir=/usr/local/mysql/data   # Directory for this data node's data files

[mysqld]

# SQL node options:

NodeId=4

HostName=192.168.1.153           # Hostname or IP address

                                # (additional mysqld connections can be

                                # specified for this node for various

                                # purposes such as running ndb_restore)

[mysqld]

NodeId=5

HostName=192.168.1.154

# cp /usr/local/mysql/bin/ndb_mgm* /usr/local/bin/

# chmod +x /usr/local/bin/ndb_mgm*

3、配置資料節點

# groupadd mysql && useradd -g mysql mysql

# vi /etc/my.cnf

[mysqld]

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

socket=/usr/local/mysql/sock/mysql.sock

user=mysql

symbolic-links=0

ndbcluster

ndb-connectstring=192.168.1.150

[mysqld_safe]

log-error=/var/log/mysqld.log

pid-file=/var/run/mysqld/mysqld.pid

[mysql_cluster]

ndb-connectstring=192.168.1.150

# mkdir /usr/local/mysql/sock

# cd /usr/local/mysql

# bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql--datadir=/usr/local/mysql/data

# chown -R mysql.mysql /usr/local/mysql

4、配置 SQL 節點

# groupadd mysql && useradd -g mysql mysql

# vi /etc/my.cnf

[client]

socket=/usr/local/mysql/sock/mysql.sock

[mysqld]

ndbcluster

datadir=/usr/local/mysql/data

socket=/usr/local/mysql/sock/mysql.sock

ndb-connectstring=192.168.1.150

[mysql_cluster]

ndb-connectstring=192.168.1.150

# mkdir /usr/local/mysql/sock

# cd /usr/local/mysql

# bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql--datadir=/usr/local/mysql/data

# chown-R mysql.mysql /usr/local/mysql

# cp mysql/support-files/mysql.server /etc/rc.d/init.d/

# chmod +x /etc/rc.d/init.d/mysql.server

# chkconfig --add mysql.server

5Cluster 啟動

# 啟動管理節點,首次啟動需要+ --initial

# ndb_mgmd -f /var/lib/mysql-cluster/config.ini --initial

# 啟動資料節點,首次啟動需要+ --initial

# /usr/local/mysql/bin/ndbd --initial

# 啟動 SQL 節點

# /usr/local/mysql/bin/mysqld_safe --user=mysql &

# 檢視叢集狀態

# 管理節點上操作:

[[email protected] ~]# ndb_mgm

-- NDB Cluster -- Management Client --

ndb_mgm> show

Connected to Management Server at: localhost:1186

Cluster Configuration

---------------------

[ndbd(NDB)]     2 node(s)

id=2    @192.168.1.151  (mysql-5.7.18 ndb-7.6.2, Nodegroup: 0, *)

id=3    @192.168.1.152  (mysql-5.7.18 ndb-7.6.2, Nodegroup: 0)

[ndb_mgmd(MGM)] 1 node(s)

id=1    @192.168.1.150  (mysql-5.7.18 ndb-7.6.2)

[mysqld(API)]   2 node(s)

id=4    @192.168.1.153  (mysql-5.7.18 ndb-7.6.2)

id=5    @192.168.1.154  (mysql-5.7.18 ndb-7.6.2)

6、測試

# 先將 SQL 節點的資料庫密碼修改為相同的

# ln -s /usr/local/mysql/bin/mysql /usr/local/bin/

# /usr/local/mysql/bin/mysql_secure_installation

# SQL 節點 1 上新建庫,並插入資料

# mysql -uroot -p

mysql> create database aa;

mysql> use aa;

mysql> create table student(id int(10) primary key auto_increment,name varchar(30),age tinyint(2))engine=ndb;

 # 資料庫表的引擎必須為 NDB,不然就同步失敗了可以用 show create table 表名來檢視引擎

mysql> insert into student (id,name,age) value(321281,"mzh",18);

mysql> quit

Bye

# SQL 節點 2 檢視是否同步

mysql> show databases;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| aa                 |

| mysql              |

| ndbinfo            |

| performance_schema |

| sys                |

+--------------------+

6 rows in set (0.00 sec)

mysql> use aa;

mysql> show tables;

+--------------+

| Tables_in_aa |

+--------------+

| student      |

+--------------+

1 row in set (0.01 sec)

mysql> select * from student;

+--------+------+------+

| id     | name | age  |

+--------+------+------+

| 321281 | mzh  |   18 |

+--------+------+------+

1 row in set (4.27 sec)

# 做到這裡,已經看到可以同步了。然後我們再模擬 SQL 節點1 宕機了,在SQL 2 上插入新的資料,再SQL 1 開機,檢視資料是否會同步。

# SQL 1上操作:

# /etc/rc.d/init.d/mysql.server stop

# ps -ef| grep mysql

# SQL 2 操作:

mysql> insert into student (id,name,age) value(12121,"hp",19);

mysql> select * from student;

+--------+------+------+

| id     | name | age  |

+--------+------+------+

|  12121 | hp   |   19 |

| 321281 | mzh  |   18 |

+--------+------+------+

2 rows in set (0.00 sec)

# 再在 SQL1 上檢視是否同步

# /etc/rc.d/init.d/mysql.server start

mysql> select * from student;

+--------+------+------+

| id     | name | age  |

+--------+------+------+

|  12121 | hp   |   19 |

| 321281 | mzh  |   18 |

+--------+------+------+

2 rows in set (0.00 sec)

7Cluster 關閉

# 管理節點操作:

# ndb_mgm -e shutdown

Connected to Management Server at: localhost:1186

3 NDB Cluster node(s) have shutdown.

Disconnecting to allow management server to shutdown.

# SQL 節點操作:

# /etc/rc.d/init.d/mysql.server stop

 Over ~

相關推薦

[Linux] MySQL Cluster 叢集安裝

管理節點 mysql-mgm 192.168.1.150 資料節點 1 mysql-data01 192.168.1.151 資料節點 2 mysql-data02 192.168.1.152 SQL 節點 1 mysql-01 192.168.1.153

windows XP下MySQL Cluster叢集安裝配置

安裝過程 1軟體的下載 要Windows32位免安裝版的,如圖: 2機子的配置及作用 準備3臺電腦,機子的功能和配置見下表 Node IP Address Management (MGMD) node 192.168.1.102 MySQL serv

MySQL數據庫管理(二)單機環境下MySQL Cluster安裝

img 任務管理器 value 機器 tail -a bsp ron 技術分享 上文《MySQL數據庫管理(一)MySQL Cluster集群簡單介紹》對MySQL Cluster集群做了簡要介紹。本文將教大家一步步搭建單機環境下的MySQL數據庫集群。 一、單機

MySQL Galera 叢集安裝與配置

galera 叢集概述與搭建 Galera replication原理 從客戶端看整體的流程 其中對應的角色分為2個:協調者和參與者 協調者: 1、 接收客戶端請求 2、 廣播請求到其他參與者(包括自己) 3、 作為參與者進行資料更新 4、 更新失敗

搭建Mysql Cluster叢集實現高可用

MySQL Cluster是MySQL適合於分散式計算環境的高實用、高冗餘版本。Cluster的漢語是“叢集”的意思。它採用了NDB Cluster 儲存引擎,允許在1個 Cluster 中執行多個MySQL伺服器。MySQL Cluster 是一種技術,該技術允許在無共享的系統中部署“記憶體中”資

mysql cluster叢集主從架構讀寫分離搭建

安裝要求 安裝環境:CentOS-6.4 安裝方式:原始碼編譯安裝 軟體名稱:mysql-cluster-gpl-7.2.6-linux2.6-x86_64.tar.gz 軟體安裝位置:/usr/local/mysql 資料存放位置:/var/mysql/data 日誌存

Linux 下Redis叢集安裝部署及使用詳解

一、應用場景介紹   本文主要是介紹Redis叢集在Linux環境下的安裝講解,其中主要包括在聯網的Linux環境和離線的Linux環境下是如何安裝的。因為大多數時候,公司的生產環境是在內網環境下,無外網,伺服器處於離線狀態(最近公司要上線專案,就是無外網環境的Linu

mysql-cluster叢集原理介紹和搭建步驟(四個data/sql節點)

MySQL簇概述 MySQL簇是一種技術,該技術允許在無共享的系統中部署“記憶體中”資料庫的簇。通過無共享體系結構,系統能夠使用廉價的硬體,而且對軟硬體無特殊要求。此外,由於每個元件有自己的記憶體和磁碟,不存在單點故障。 MySQL簇將標準的MySQL伺服器與名為NDB的“

Linux平臺weblogic叢集安裝(二)

管理和被管伺服器,要配置引數如下 管理員伺服器ip 使用者名稱 密碼 埠號 192.146.1.15 weblogic weblogic123 6003 被管伺服器ip 被管伺服器名 埠 1

mysql-cluster叢集配置

環境: centos7:192.168.1.16,192.168.1.170 mysql-cluster-community-7.6.8-1.el7.x86_64.rpm-bundle.tar 安裝: 解除安裝系統已有的資料庫yum -y remove MariaDB*(centos7預設安裝的是ma

Linux 下Redis叢集安裝部署及使用詳解(線上和離線兩種安裝+相關錯誤解決方案)

一、應用場景介紹   本文主要是介紹Redis叢集在Linux環境下的安裝講解,其中主要包括在聯網的Linux環境和離線的Linux環境下是如何安裝的。因為大多數時候,公司的生產環境是在內網環境下,無外網,伺服器處於離線狀態(最近公司要上線專案,就是無外網環境的Linux,被離線安裝坑慘了,走了很多彎路,說多

【小鎮的技術天梯】lanmp伺服器叢集搭建(4)mysql-cluster叢集搭建

lanmp叢集搭建的重點來了,這次是搭建mysql叢集,mysql叢集可以說是重中之重,因為最需要用叢集的地方是mysql,現在的web應用的瓶頸基本上都在mysql的負載上面。 【小鎮還是要提醒下大家,其實提升mysql效能的最好方法是寫效能高的mysql語句和加裝ssd

mysql ndbcluster叢集安裝以及遇到問題

mysql ndbcluster 安裝 1.資料庫規劃: 作業系統 centos 6.3 ndbcluster 版本:MySQL-Cluster-gpl-7.4.8-1.el6.x86_64 2個管理節點、2個sql節點、2個數據節點(管理節點和sql節點放在同一臺伺服器上

Windows系統搭建Mysql Cluster叢集

簡單介紹一下MySQL叢集涉及的三種節點:     管理節點(也可以稱管理伺服器)是整個叢集環境的核心,類似於叢集中起排程作用的樞紐,由它來負責管理其它節點(資料節點和SQL節點)的開啟、關閉或重啟某個節點等等;其他節點從管理節點檢索配置資料,當資料節點有新事件時就把事件資

MySQL叢集---②Windows平臺搭建MySQL CLUSTER叢集

   本文將通過兩臺電腦來簡單介紹一下Windows平臺如何搭建MySQL叢集。    MySQL叢集支援多臺電腦,本文搭建的MySQL叢集以兩臺機子為例,其中一臺(IP為192.168.24.33)部署管理節點、資料節點和SQL節點,另一臺(IP為192.168.24.

kafka linux下的叢集安裝

第一步.kafka 叢集安裝環境準備        環境:CentOS6.5        叢集環境:         192.168.139.130 master         192.168.139.131 node1         192.168.139.132

Linux下zookeeper叢集安裝配置

1.下載Zookeeper安裝包 這裡我用到的是zookeeper-3.4.10 下載地址:http://mirror.bit.edu.cn/apache/zookeeper/ 2.解壓到指定目錄  2.1叢集節點 192.168.20.38 192.168.20.52 1

Linux Mysql使用rpm安裝的後的路徑問題

使用rpm包安裝MySQL的時候是把各個子目錄分別安裝到相應目錄下了,不存在那個/usr/local/mysql這個目錄,並且使用rpm -ql mysql的時候會顯示“package mysql is not installed”,具體可以參考一下的一個帖子: [rpm

linux系統MySQL安裝和hive叢集安裝詳細步驟及講解

此安裝步驟是多年經驗總結,一定要嚴格按照步驟進行,一定要細心!!! MySQL的安裝是重中之重!!!出現錯誤很難修改!!! 另外安裝命令不要複製!!!自己手敲!!!不要複製!!!複製可能導致出錯!!! 空格,小數點要格外注意,都不能少 一、先刪除Linux自帶的MySQL 1、找到

linux redis3叢集安裝詳細步驟與測試 redis cluster

執行redis的建立叢集命令建立叢集 ./redis-trib.rb create --replicas 1 192.168.215.129:7000 192.168.215.129:7001 192.168.215.129:7002 192.168.215.130:7003 192.168.