首頁 資料庫 mysql教程 mysql cluster 7.1搭建

mysql cluster 7.1搭建

Jun 07, 2016 pm 03:41 PM
cluster mysql 分享 搭建 步驟 簡單

简单步骤,分享下: hostnameIP应用 db1192.168.50.10MGM db2192.168.50.20NDBD db3192.168.50.30NDBD2 db4192.168.50.40MYSQLD db5192.168.50.50MYSQLD ***************************** 1.安装配置管理节点(DB1)MGM ***************************** # groupad

简单步骤,分享下:

 

hostname IP   应用
db1  192.168.50.10  MGM
db2  192.168.50.20  NDBD
db3  192.168.50.30  NDBD2
db4  192.168.50.40  MYSQLD
db5  192.168.50.50  MYSQLD

 


*****************************
1.安装配置管理节点(DB1)MGM
*****************************

# groupadd mysql


# useradd -g mysql -d /usr/local/mysql/var -M mysql


# tar zxvf mysql-cluster-gpl-7.1.8.tar.gz


# cd mysql-cluster-gpl-7.1.8

# ./configure --prefix=/usr/local/mysql/ --with-charset=utf8 --with-collation=utf8_general_ci \
--with-client-ldflags=-all-static -with-mysqld-ldflags=-all-static --enable-assembler \
--with-extra-charsets=complex --enable-thread-safe-client --with-big-tables \
--with-readline --with-ssl --with-embedded-server --enable-local-infile \
--with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock \
--sysconfdir=/usr/local/mysql/etc --without-debug --with-mysqld-user=mysql --with-plugins=max


# make


# make install


# cd /usr/local/mysql


# mkdir mysql-cluster


# cd mysql-cluster


# vi config.ini

[NDBD DEFAULT]
NoOfReplicas= 2
[MYSQLD DEFAULT]
[NDB_MGMD DEFAULT]
DataDir= /usr/local/mysql/mysql-cluster
[NDB_MGMD]
HostName= 192.168.50.10
[NDBD]
HostName= 192.168.50.20
DataDir= /usr/local/mysql/mysql-cluster
[NDBD]
HostName= 192.168.50.30
DataDir= /usr/local/mysql/mysql-cluster
[MYSQLD]
HostName= 192.168.50.40
[MYSQLD]
HostName= 192.168.50.50

 


----------启动cluster管理节点

在管理节点服务器上,执行以下命令启动MGM节点进程:

root# /usr/local/mysql/ndb_mgmd -f /usr/local/mysql/config.ini

必须用参数“-f”或“--config-file”告诉 ndb_mgm 配置文件所在位置,默认是在ndb_mgmd相同目录下。

 

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

 

#  /usr/local/mysql/libexec/ndb_mgmd -f /usr/local/mysql/mysql-cluster/config.ini

#  /usr/local/mysql/bin/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 (not connected, accepting connect from 192.168.50.20)
id=3 (not connected, accepting connect from 192.168.50.30)

[ndb_mgmd(MGM)] 1 node(s)
id=1    @192.168.50.10  (mysql-5.1.47 ndb-7.1.8)

[mysqld(API)]   2 node(s)
id=4 (not connected, accepting connect from 192.168.50.40)
id=5 (not connected, accepting connect from 192.168.50.50)


可以看到ndb_mgmd 是 连上的,nbd 和 mysqld 还没有连上~

 

****************************************
2.安装配置在两个数据节点(DB2,DB3)ndbd
****************************************


# groupadd mysql


# useradd -g mysql -d /usr/local/mysql/var -M mysql


#  tar xvzf mysql-cluster-gpl-7.1.8.tar.gz


# cd mysql-cluster-gpl-7.1.8

# ./configure --prefix=/usr/local/mysql/ --with-charset=utf8 --with-collation=utf8_general_ci \
--with-client-ldflags=-all-static -with-mysqld-ldflags=-all-static --enable-assembler \
--with-extra-charsets=complex --enable-thread-safe-client --with-big-tables  \
--with-readline --with-ssl --with-embedded-server --enable-local-infile \
--with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock \
--sysconfdir=/usr/local/mysql/etc --without-debug --with-mysqld-user=mysql --with-plugins=max


# make


# make install


# cd /usr/local/mysql


# mkdir mysql-cluster etc


# chown root:mysql . -R

 

# vi /usr/local/mysql/etc/my.cnf

[mysqld]
ndbcluster
ndb-connectstring=192.168.50.10
[mysql_cluster]
ndb-connectstring=192.168.50.10

 

#./libexec/ndbd --initial ### 第一次启动需要 --initial 以后在启动不需要加

2010-06-21 14:09:38 [ndbd] INFO     -- Configuration fetched from '192.168.5.10:1186', generation: 1

 

--------------------------启动说明

--------------------------启动存储节点

在每台存储节点服务器上,如果是第一次启动ndbd进程的话,必须先执行以下命令:

root# /usr/local/mysql/libexec/ndbd --initial

注意,仅应在首次启动ndbd时,或在备份/恢复数据或配置文件发生变化后重启ndbd时使用“--initial”参数
。因为该参数会使节点删除由早期ndbd实例创建的、用于恢复的任何文件,包括用于恢复的日志文件。
如果不是第一次启动,直接运行如下命令即可:

root# /usr/local/mysql/libexec/ndbd

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

 

 

然后在 MGM 服务器上查看

[root@db1 ~]#  /usr/local/mysql/bin/ndb_mgm
-- NDB Cluster -- Management Client --
ndb_mgm> show
Cluster Configuration
---------------------
[ndbd(NDB)]     2 node(s)
id=2    @192.168.50.20  (mysql-5.1.47 ndb-7.1.8, Nodegroup: 0, Master)
id=3    @192.168.50.30  (mysql-5.1.47 ndb-7.1.8, Nodegroup: 0)

[ndb_mgmd(MGM)] 1 node(s)
id=1    @192.168.50.10  (mysql-5.1.47 ndb-7.1.8)

[mysqld(API)]   2 node(s)
id=4 (not connected, accepting connect from 192.168.50.40)
id=5 (not connected, accepting connect from 192.168.50.50)

 


从上面可以看出 两个 ndbd 节点 和 ndbd 上存储都已经连接上了。

 

****************************************

3、安装配置SQL节点(DB4、DB5)

****************************************

# groupadd mysql


# useradd -g mysql -d /usr/local/mysql/var -M mysql


# tar xvzf mysql-cluster-gpl-7.1.8.tar.gz

 

# cd mysql-cluster-gpl-7.1.8

# ./configure --prefix=/usr/local/mysql/ --with-charset=utf8 --with-collation=utf8_general_ci \
--with-client-ldflags=-all-static -with-mysqld-ldflags=-all-static --enable-assembler \
--with-extra-charsets=complex --enable-thread-safe-client --with-big-tables \
--with-readline --with-ssl --with-embedded-server --enable-local-infile \
--with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock \
--sysconfdir=/usr/local/mysql/etc --without-debug --with-mysqld-user=mysql --with-plugins=max


# make


# make install


# cd /usr/local/mysql


# mkdir mysql-cluster etc


# chown root:mysql . -R


# ./bin/mysql_install_db --user=mysql


# vi ./etc/my.cnf

[mysqld]
basedir = /usr/local/mysql/
datadir = /usr/local/mysql/var
user = mysql
port = 3306
socket = /usr/local/mysql/tmp/mysql.sock
ndbcluster
ndb-connectstring=192.168.50.10
[mysql_cluster]
ndb-connectstring=192.168.50.10


启动 mysql 服务


# ./bin/mysqld_safe --user=mysql &

 


--------------启动mysqld服务

最后,运行以下命令启动SQL节点服务器:

root# /usr/local/mysql/bin/mysqld_safe --defaults-file=/usr/local/mysql/my.cnf &

 


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


回到 MGM 上查看是否正常

./bin/ndb_mgm
-- NDB Cluster -- Management Client --

ndb_mgm> show
Cluster Configuration
---------------------
[ndbd(NDB)]     2 node(s)
id=2    @192.168.50.20  (mysql-5.1.47 ndb-7.1.8, Nodegroup: 0, Master)
id=3    @192.168.50.30  (mysql-5.1.47 ndb-7.1.8, Nodegroup: 0)

[ndb_mgmd(MGM)] 1 node(s)
id=1    @192.168.50.10  (mysql-5.1.47 ndb-7.1.8)

[mysqld(API)]   2 node(s)
id=4    @192.168.50.40  (mysql-5.1.47 ndb-7.1.8)
id=5    @192.168.50.50  (mysql-5.1.47 ndb-7.1.8)

 

好了,一切正常了,现在回到 mysql 节点上 创建和删除数据看是否同步。


****************************************
4.新建数据库测试
****************************************

那么就登录 DB4 的 mysql

DB4 # > /usr/local/mysql/bin/mysql -uroot -p


mysql > show databases;

+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| ndbinfo            |
| test               |
+--------------------+
4 rows in set (0.01 sec)

 

mysql > create database accp;


Query OK, 1 row affected (0.39 sec)


mysql > show databases;

+--------------------+
| Database           |
+--------------------+
| information_schema |
| accp               |
| mysql              |
| ndbinfo            |
| test               |
+--------------------+
5 rows in set (0.00 sec)


看 DB5 上是否同步


DB5 # > /usr/local/mysql/bin/mysql -uroot -p


mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| accp               |
| mysql              |
| ndbinfo            |
| test               |
+--------------------+
5 rows in set (0.00 sec)

DB5 # > /usr/local/mysql/bin/mysql -uroot -p


mysql > show databases;

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| accp               |
| mysql              |
| ndbinfo            |
| test               |
+--------------------+
5 rows in set (0.00 sec)


都看到了 accp 数据库 安装配置完成。

****************************************
5.新建表测试
****************************************

DB5上新建测试表t1


mysql> use accp;
Database changed
mysql> create table t1
    -> (
    -> sid int not null primary key,
    -> sno int
    -> ) engine=ndbcluster;
Query OK, 0 rows affected (0.37 sec)

mysql> insert into t1 values (101,201);
Query OK, 1 row affected (0.01 sec)

mysql> select * from t1;
+-----+------+
| sid | sno  |
+-----+------+
| 101 |  201 |
+-----+------+
1 row in set (0.00 sec)

 

DB4上查看是否同步:


mysql> use accp;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show tables;
+----------------+
| Tables_in_accp |
+----------------+
| t1             |
+----------------+
1 row in set (0.02 sec)

mysql> select * from t1;
+-----+------+
| sid | sno  |
+-----+------+
| 101 |  201 |
+-----+------+
1 row in set (0.01 sec)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

此 Apple ID 尚未在 iTunes Store 中使用:修復 此 Apple ID 尚未在 iTunes Store 中使用:修復 Jun 10, 2024 pm 05:42 PM

此 Apple ID 尚未在 iTunes Store 中使用:修復

升級微信最新版本的步驟(輕鬆掌握微信最新版本的升級方法) 升級微信最新版本的步驟(輕鬆掌握微信最新版本的升級方法) Jun 01, 2024 pm 10:24 PM

升級微信最新版本的步驟(輕鬆掌握微信最新版本的升級方法)

Shazam應用程式在iPhone中無法運作:修復 Shazam應用程式在iPhone中無法運作:修復 Jun 08, 2024 pm 12:36 PM

Shazam應用程式在iPhone中無法運作:修復

PHP 的大數據結構處理技巧 PHP 的大數據結構處理技巧 May 08, 2024 am 10:24 AM

PHP 的大數據結構處理技巧

如何優化 PHP 中的 MySQL 查詢效能? 如何優化 PHP 中的 MySQL 查詢效能? Jun 03, 2024 pm 08:11 PM

如何優化 PHP 中的 MySQL 查詢效能?

WiFi通話在iPhone上不起作用:修復 WiFi通話在iPhone上不起作用:修復 Jun 03, 2024 am 11:16 AM

WiFi通話在iPhone上不起作用:修復

如何在 PHP 中使用 MySQL 備份和還原? 如何在 PHP 中使用 MySQL 備份和還原? Jun 03, 2024 pm 12:19 PM

如何在 PHP 中使用 MySQL 備份和還原?

如何使用 PHP 插入資料到 MySQL 表? 如何使用 PHP 插入資料到 MySQL 表? Jun 02, 2024 pm 02:26 PM

如何使用 PHP 插入資料到 MySQL 表?

See all articles