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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MySQL集群配

發(fā)布時間:2023/12/9 数据库 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MySQL集群配 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
一.下面假設(shè)這3臺服務(wù)的情況:?
Server1: 172.18.3.205?
Server2: 172.18.3.207?
Server3: 172.18.3.208?
Servers1和Server2作為實際配置MySQL集群的服務(wù)器。對于作為管理節(jié)點的Server3則要求較低,只需對Server3的系統(tǒng)進行很小的調(diào)整并且無需安裝MySQL,Server3可以使用一臺配置較低的計算機并且可以在Server3同時運行其他服務(wù)。
====================================



二、在Server1和Server2上安裝MySQL?

http://www.mysql.com
上下載mysql-max-4.1.22-pc-linux-gnu-i686.tar.gz
注意:必須是max版本的MySQL,Standard版本不支持集群部署!?

以下步驟需要在Server1和Server2上各做一次?
# cd /usr/local/?
# groupadd mysql?
# useradd -g mysql mysql?
# tar -zxvf mysql-max-4.1.22-pc-linux-gnu-i686.tar.gz?
# mv mysql-max-4.1.22-pc-linux-gnu-i686
# cd mysql?
# scripts/mysql_install_db --user=mysql?
# chown -R root .?
# chown -R mysql data?
# chgrp -R mysql .?

此時不要啟動MySQL!
========================================================


三、安裝并配置管理節(jié)點服務(wù)器(Server3)?
# tar -zxvf mysql-max-4.1.9-pc-linux-gnu-i686.tar.gz?
# rm mysql-max-4.1.9-pc-linux-gnu-i686.tar.gz?
# cd mysql-max-4.1.9-pc-linux-gnu-i686?
# mv bin/ndb_mgm /usr/bin/??
# mv bin/ndb_mgmd /usr/bin/?
#cd /usr/bin
# chmod +x ndb_mg*?


現(xiàn)在開始為這臺管理節(jié)點服務(wù)器建立配置文件:?
# mkdir /var/lib/mysql-cluster?
# cd /var/lib/mysql-cluster?
# vi config.ini?
[NDBD DEFAULT]
NoOfReplicas=2
[MYSQLD DEFAULT]
[NDB_MGMD DEFAULT]
[TCP DEFAULT]
# Managment Server
[NDB_MGMD]
HostName=172.18.3.208
# Storage Engines?
[NDBD]
HostName=172.18.3.205
DataDir=/var/lib/mysql-cluster
[NDBD]
HostName=172.18.3.207
DataDir=/var/lib/mysql-cluster
[MYSQLD]?
[MYSQLD]
保存退出后,啟動管理節(jié)點服務(wù)器Server3:?
/usr/bin/ndb_mgmd -f /var/lib/mysql-cluster/config.ini

注釋: Cluster管理節(jié)點的默認端口是1186,數(shù)據(jù)節(jié)點的默認端口2202。從MySQL 5.0.3開始,該限制已被放寬, Cluster能夠根據(jù)空閑的端口自動地為數(shù)據(jù)節(jié)點分配端口。如果你的版本低于5.0.22,請注意這個細節(jié)。

啟動管理節(jié)點后應該注意,這只是管理節(jié)點服務(wù),并不是管理終端。因而你看不到任何關(guān)于啟動后的輸出信息。?
=============================================================

四、配置集群服務(wù)器并啟動MySQL?
在Server1和Server2中都需要進行如下改動:

[root@localhost local]# cat /etc/my.cnf?
[mysqld]?
ndbcluster?
ndb-connectstring=172.18.3.208??
[mysql_cluster]?
ndb-connectstring=172.18.3.208?

保存退出后,建立數(shù)據(jù)目錄并啟動MySQL
# mkdir /var/lib/mysql-cluster?
# cd /var/lib/mysql-cluster?
# /usr/local/mysql/bin/ndbd --initial?


注意,僅應在首次啟動ndbd時,或在備份/恢復數(shù)據(jù)或配置文件發(fā)生變化后重啟ndbd時使用“--initial”參數(shù)。因為該參數(shù)會使節(jié)點刪除由早期ndbd實例創(chuàng)建的、用于恢復的任何文件,包括用于恢復的日志文件。
如果不是第一次啟動,直接運行如下命令即可


=============================================

在 server1 server2 啟動mysql
/usr/local/mysql/bin/mysqld_safe --skip-grant-tables &



==================================
注: /usr/local/mysql/bin/mysqld_safe &??這樣起有問題
[root@localhost ~]# tail -f /usr/local/mysql/data/localhost.localdomain.err
070723 21:49:58??mysqld started
070723 21:50:00??InnoDB: Started; log sequence number 0 43634
070723 21:50:00 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
070723 21:50:00??mysqld ended
============================================

測試:在server1上執(zhí)行
# /usr/local/mysql/bin/mysql -u root -p?
> use test;?
> CREATE TABLE ctest (i INT) ENGINE=NDBCLUSTER;?
> INSERT INTO ctest () VALUES (1);?
> SELECT * FROM ctest;?
在server2查詢有該記錄.證明配置成功




在管理節(jié)點上查看
[root@localhost bin]# /usr/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? ? @172.18.3.205??(Version: 4.1.22, Nodegroup: 0, Master)
id=3? ? @172.18.3.207??(Version: 4.1.22, Nodegroup: 0)
[ndb_mgmd(MGM)] 1 node(s)
id=1? ? @172.18.3.208??(Version: 4.1.22)
[mysqld(API)]? ?2 node(s)
id=4? ? @172.18.3.207??(Version: 4.1.22)
id=5? ? @172.18.3.205??(Version: 4.1.22)
====================================================
五、啟動MySQL Cluster
較為合理的啟動順序是,首先啟動管理節(jié)點服務(wù)器,然后啟動存儲節(jié)點服務(wù)器,最后才啟動SQL節(jié)點服務(wù)器:
上述配置把存儲節(jié)點和sql節(jié)點放到同臺服務(wù)器上了。
==================================================

六.

以下配置把存儲節(jié)點和sql節(jié)點分開來配置
172.18.3.208 ----->管理節(jié)點
172.18.3.205 ----->存儲節(jié)點
172.18.3.207 ----->存儲節(jié)點
172.18.3.209 ----->sql節(jié)點
172.18.3.210 ----->sql節(jié)點




管理節(jié)點 172.18.3.208?
[root@localhost mysql-cluster]# cat /var/lib/mysql-cluster/config.ini?
[NDBD DEFAULT]
NoOfReplicas=2
[MYSQLD DEFAULT]
[NDB_MGMD DEFAULT]
[TCP DEFAULT]
# Managment Server
[NDB_MGMD]
HostName=172.18.3.208
# Storage Engines?
[NDBD]
HostName=172.18.3.205
DataDir=/var/lib/mysql-cluster
[NDBD]
HostName=172.18.3.207
DataDir=/var/lib/mysql-cluster
[MYSQLD]?
hostname=172.18.3.209
[MYSQLD]?
hostname=172.18.3.210

啟動管理節(jié)點 /usr/bin/ndb_mgmd -f /var/lib/mysql-cluster/config.ini

數(shù)據(jù)節(jié)點 172.18.3.205
[root@localhost ~]# cat /etc/my.cnf
[mysqld]?
ndbcluster?
ndb-connectstring=172.18.3.208??
[mysql_cluster]?
ndb-connectstring=172.18.3.208


數(shù)據(jù)節(jié)點 172.18.3.208
[root@localhost test]# cat /etc/my.cnf
[mysqld]
ndbcluster
ndb-connectstring=172.18.3.208
[mysql_cluster]
ndb-connectstring=172.18.3.208
啟動數(shù)據(jù)節(jié)點 /usr/local/mysql/bin/ndbd --initial

sql節(jié)點 172.18.3.209
[root@localhost data]# cat /etc/my.cnf
[mysqld]
basedir? ?? ?? ?= /usr/local/mysql/
datadir? ?? ?? ?= /usr/local/mysql/data
user? ?? ?? ?? ?= root
port? ?? ?? ?? ?= 3306
socket? ?? ?? ? = /tmp/mysql.sock
ndbcluster
ndb-connectstring=172.18.3.208
[MYSQL_CLUSTER]
ndb-connectstring=172.18.3.208

sql節(jié)點 172.18.3.210
[root@localhost data]# cat /etc/my.cnf
[mysqld]
basedir? ?? ?? ?= /usr/local/mysql/
datadir? ?? ?? ?= /usr/local/mysql/data
user? ?? ?? ?? ?= root
port? ?? ?? ?? ?= 3306
socket? ?? ?? ? = /tmp/mysql.sock
ndbcluster
ndb-connectstring=172.18.3.208
[MYSQL_CLUSTER]
ndb-connectstring=172.18.3.208


啟動sql節(jié)點  /usr/local/mysql/bin/mysqld_safe --skip-grant-tables &




在管理節(jié)點 172.18.3.208  查看信息
[root@localhost mysql-cluster]# /usr/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? ? @172.18.3.205??(Version: 4.1.22, Nodegroup: 0, Master)
id=3? ? @172.18.3.207??(Version: 4.1.22, Nodegroup: 0)
[ndb_mgmd(MGM)] 1 node(s)
id=1? ? @172.18.3.208??(Version: 4.1.22)
[mysqld(API)]? ?2 node(s)
id=4? ? @172.18.3.209??(Version: 4.1.22)
id=5? ? @172.18.3.210??(Version: 4.1.22)


啟動先后順序:管理節(jié)點 數(shù)據(jù)節(jié)點 sql節(jié)點


在sql節(jié)點172.18.3.209插入如下的數(shù)據(jù)

[root# mysql -uroot test
mysql> create table city(
mysql> id mediumint unsigned not null auto_increment primary key,
mysql> name varchar(20) not null default ''
mysql> ) engine = ndbcluster default charset utf8;
mysql> insert into city values(1, 'city1');
mysql> insert into city values(2, 'city2');
在172.18.3.210上查詢
root# mysql -uroot test
mysql> select * from city;
+-----------+
|id | name??|
+-----------+
|1??| city1 |
+-----------+
|2??| city2 |
+-----------+
七、安全關(guān)閉
要想關(guān)閉 Cluster,可在MGM節(jié)點所在的機器上,在Shell中簡單地輸入下述命令:root# /usr/local/mysql/ndb_mgm -e shutdown
運行以下命令關(guān)閉SQL節(jié)點的mysqld服務(wù):
root# /usr/local/mysql/bin/mysqladmin -uroot shutdown

詳細參照
http://imysql.cn/?q=node/96
http://www.yuanma.org/data/2006/0911/article_1501.htm


通過 Wiz 發(fā)布

轉(zhuǎn)載于:https://www.cnblogs.com/firmy/archive/2011/12/28/2304264.html

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎

總結(jié)

以上是生活随笔為你收集整理的MySQL集群配的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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