日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql三台机群集_MySQL Cluster 3台机器搭建集群环境

發(fā)布時間:2024/9/30 数据库 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql三台机群集_MySQL Cluster 3台机器搭建集群环境 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

最后還是通過三臺機(jī)器實(shí)現(xiàn)了linux下的mysql集群,這邊首先要感謝眾多網(wǎng)絡(luò)上提供幫助教程,雖然有些沒有經(jīng)過實(shí)踐無法真正達(dá)到效果,但是這次給MGM項(xiàng)目的這個開頭還是不錯。

書歸正傳,這邊用的是vmware workstation來實(shí)現(xiàn)的,先裝三臺linux centos的服務(wù)器,最好參考百度知道里面的安裝普通database的服務(wù)器方法,當(dāng)中自己來實(shí)現(xiàn)交換分區(qū)和boot分區(qū)還有主分區(qū)的劃分,這樣更好的學(xué)習(xí)linux的命令和一些常用的操作。接下來和網(wǎng)上的做法差不多,這邊關(guān)鍵是my.cnf的配置方法,最后我才發(fā)覺這個是我的問題,而且權(quán)限表的配置也很重要chown最好對mysql組下的mysql對這個安裝路徑(/usr/local/mysql/)路徑的所有權(quán)限進(jìn)行賦值。

操作系統(tǒng):

Centos6.0 release 64位

軟件包:

mysql-cluster-advanced-7.4.6-linux-glibc2.5-x86_64.tar.gz

數(shù)據(jù)庫管理節(jié)點(diǎn): 10.10.10.201

數(shù)據(jù)庫數(shù)據(jù)節(jié)點(diǎn): 10.10.10.202,10.10.10.203

數(shù)據(jù)庫sql節(jié)點(diǎn): 10.10.10.202,10.10.10.203

我這里數(shù)據(jù)節(jié)點(diǎn)和sql節(jié)點(diǎn)用相同的2臺機(jī)器承擔(dān).

1.管理節(jié)點(diǎn)的安裝

#groupadd mysql

#useradd?mysql -g mysql

#mv

mysql-cluster-advanced-7.4.6-linux-glibc2.5-x86_64.tar.gz /usr/local/

#cd /usr/local/

#tar zxvf

mysql-cluster-advanced-7.4.6-linux-glibc2.5-x86_64.tar.gz

#rm -f

mysql-cluster-advanced-7.4.6-linux-glibc2.5-x86_64.tar.gz

#mv

mysql-cluster-advanced-7.4.6-linux-glibc2.5-x86_64mysql

#chown -R mysql:mysql mysql

#cd mysql

#scripts/mysql_install_db --user=mysql

2.管理節(jié)點(diǎn)的配置

#mkdir /var/lib/mysql-cluster

#cd /var/lib/mysql-cluster

#vi config.ini

//這里需要手動添加如下內(nèi)容

[ndbd default] ? NoOfReplicas=2 ??DataMemory=80M ? IndexMemory=18M

//這里有很多參數(shù),大家可以自己找下相關(guān)資料

[ndb_mgmd] ? Id=1 ? Hostname=10.10.10.201 ? ? ? ? ??//管理節(jié)點(diǎn)IP? datadir=/usr/local/mysql/logs

[ndbd] ? Id=2 ? Hostname=10.10.10.202 ? ? ? ? ? ??//數(shù)據(jù)節(jié)點(diǎn)IP??? ? datadir=/usr/local/mysql/data/

//數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)目錄,這里要與數(shù)據(jù)節(jié)點(diǎn)的配置文件my.cnf(其實(shí)這邊要但是my。cnf里面不用指定也行)

的數(shù)據(jù)指定相同

[ndbd] ? Id=3 ? Hostname=10.10.10.203 ? ? ? ? ? ?//數(shù)據(jù)節(jié)點(diǎn)IP??? ? datadir=/usr/local/mysql/data/

[MYSQLD] ? [MYSQLD]

3.安裝和配置數(shù)據(jù)節(jié)點(diǎn)

這里2臺機(jī)器數(shù)據(jù)節(jié)點(diǎn)安裝是相同的.

#groupadd mysql

#useradd?mysql -g mysql

#mv

mysql-cluster-advanced-7.4.6-linux-glibc2.5-x86_64.tar.gz /usr/local/

#cd /usr/local/

#tar zxvf

mysql-cluster-advanced-7.4.6-linux-glibc2.5-x86_64.tar.gz

#rm -f

mysql-cluster-advanced-7.4.6-linux-glibc2.5-x86_64.tar.gz

#mv

mysql-cluster-advanced-7.4.6-linux-glibc2.5-x86_64?mysql

#chown -R mysql:mysql mysql

#cd mysql

#scripts/mysql_install_db --user=mysql

#cp support-files/my-medium.cnf /etc/my.cnf

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

#vi /etc/my.cnf

//這里需要手動添加如下的內(nèi)容

[client]

port =3307

[mysqld]

port = 3307

ndbcluster

ndb-connectstring=10.10.10.201

bind-address = 10.10.10.202

[mysql_cluster]

ndb-connectstring=10.10.10.201

這邊特別要說的額是設(shè)置成3307是必須的,我嘗試了很多方法,在ndbd開啟后3306就被占用了,

可以使用

netstat -anp | grep "3306" 來找到pid,用kill pid號反而會導(dǎo)致ndbd的集群出問題,所以這里只能指定binding-address和port

4.啟動相關(guān)服務(wù)

在管理節(jié)點(diǎn)啟動相關(guān)服務(wù):

#/usr/local/mysql/bin/ndb_mgmd -f /var/lib/mysql-cluster/config.ini

#netstat -lntpu

tcp??????? 0????? 0 0.0.0.0:1186??????????? 0.0.0.0:*

LISTEN???22907/ndb_mgmd

看到1186端口開放了說明啟動是正常的.

在數(shù)據(jù)節(jié)點(diǎn)啟動相關(guān)服務(wù):

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

#netstat -lntpu

tcp??????? 0????? 0 10.10.1.65:32975??????????? 0.0.0.0:*??????????????????? LISTEN????? 1901/ndbd

tcp??????? 0????? 0 10.10.1.65:32976??????????? 0.0.0.0:*?????????????????? LISTEN????? 1901/ndbd

tcp??????? 0????? 0 10.10.1.65:32977??????????? 0.0.0.0:*?????????????????? LISTEN????? 1901/ndbd

#service mysqld start

#netstat -lntpu

tcp??????? 0????? 0 :::3306???????????????????? :::*??????????????????????? LISTEN????? 2258/mysqld

可以看到相關(guān)的ndbd服務(wù)以及mysql已經(jīng)啟動ok了.

5.功能測試

到管理節(jié)點(diǎn)查看下相關(guān)服務(wù)狀態(tài)

# ndb_mgm

ndb_mgm> show

Connected to Management Server at: localhost:1186

Cluster Configuration

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

[ndbd(NDB)]???? 2 node(s)

id=2??? @10.10.1.65? (mysql-5.1.37 ndb-7.0.8, Nodegroup: 0, Master)

id=3??? @10.10.1.58? (mysql-5.1.37 ndb-7.0.8, Nodegroup: 0)

[ndb_mgmd(MGM)] 1 node(s)

id=1??? @10.10.1.151? (mysql-5.1.37 ndb-7.0.8)

[mysqld(API)]?? 2 node(s)

id=4??? @10.10.1.65? (mysql-5.1.37 ndb-7.0.8)

id=5??? @10.10.1.58? (mysql-5.1.37 ndb-7.0.8)

可以看到這里的數(shù)據(jù)節(jié)點(diǎn)、管理節(jié)點(diǎn)、sql節(jié)點(diǎn)都是正常的.

現(xiàn)在我們在其中一個數(shù)據(jù)節(jié)點(diǎn)上進(jìn)行相關(guān)數(shù)據(jù)庫的創(chuàng)建,然后到另外一個數(shù)據(jù)節(jié)點(diǎn)上看看數(shù)據(jù)是否同步

# /usr/local/mysql/bin/mysql -u root -p

mysql> show databases;

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

| Database?????????? |

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

| information_schema |

| mysql????????????? |

| ndb_2_fs?????????? |

| test?????????????? |

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

mysql> create database aa;

mysql> use aa

mysql> CREATE TABLE ctest2 (i INT) ENGINE=NDB;

//這里必須指定數(shù)據(jù)庫表的引擎為NDB,否則同

步失敗

mysql> INSERT INTO ctest2 () VALUES (1);

mysql> SELECT * FROM ctest2;

+------+

| i??? |

+------+

|??? 1 |

+------+

現(xiàn)在到另外一個數(shù)據(jù)節(jié)點(diǎn)查看下aa數(shù)據(jù)庫是否同步過來了.

#/usr/local/mysql/bin/mysql -u root -p

mysql> show databases;

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

| Database?????????? |

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

| information_schema |

| aa???????????????? |

| bb???????????????? |

| mysql????????????? |

| ndb_3_fs?????????? |

| test?????????????? |

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

mysql> use aa

mysql> select * from ctest2;

+------+

| i??? |

+------+

|??? 1 |

+------+

從上面可以看到數(shù)據(jù)已經(jīng)同步了,mysql集群環(huán)境已經(jīng)搭建完成.

這邊同樣要感謝下面頁面的提供幫助:

http://blog.chinaunix.net/uid-23412974-id-2425362.html

http://wenku.baidu.com/link?url=BweBSV3m0ut73gnmRWj5M3w88YTanyxi_K7tvkqpWMdrfaf54xSdVfPolj0HbhdH9hmf85UO_OjXEuWsYlIBRgND0-WgZ9RW1qBE1weoLOq

讓我知道不光是chrown來設(shè)置權(quán)限表來解決問題,還需要綁定其他端口和ip,還有重要問題還需要跑到/usr/local/mysql/data找錯誤日志來排查。

總結(jié)

以上是生活随笔為你收集整理的mysql三台机群集_MySQL Cluster 3台机器搭建集群环境的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。